마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

비트맵 이미지로 저장시켰는데 질문드립니다.

0 추천

비트맵 위에 그려진 그림들까지 다 출력하고싶은데

 

배경 이미지만 출력돼 답답해 죽을노릇입니다 ...

 

소스 첨부합니다.

 

제발 도움부탁드립니다.

 

public Bitmap img;
private Bitmap tempBitmap;
private Bitmap tempSideline;
private Bitmap sideline;
 
tempBitmap = BitmapFactory.decodeResource(res, R.drawable.img30x30, option);
tempSideline = BitmapFactory.decodeResource(res, R.drawable.sideline, option);
img = Bitmap.createScaledBitmap(tempBitmap, imgWidth, imgHeight, true);
sideline = Bitmap.createScaledBitmap(tempSideline, 200, 200, true);
 
 
그리는부분
 
img.recycle();
sideline.recycle();
 
img = Bitmap.createScaledBitmap(tempBitmap, imgWidth, imgHeight, true);
sideline = Bitmap.createScaledBitmap(tempSideline, (int)PdrData.SURFACE_SIZE, (int)PdrData.SURFACE_SIZE, true);
 
canvas = mHolder.lockCanvas();
canvas.drawColor(Color.GRAY);
canvas.drawBitmap(img, imgX, imgY, p);
canvas.drawBitmap(sideline, 0, 0, p);
canvas.drawCircle(MeasurePanel.ARR_X.get(i), MeasurePanel.ARR_Y.get(i), 10, p);
 
finally {
mHolder.unlockCanvasAndPost(canvas);
}
 
이런식으로 해놓고
 
버튼을 누르면
 
 
 
OutputStream fOut = null;
String path = Environment.getExternalStorageDirectory().toString();
File file = new File(path + "/", System.currentTimeMillis() + "jpg");
fOut = new FileOutputStream(file);
 
pdr.img.compress(Bitmap.CompressFormat.JPEG, 100, fOut);
fOut.flush();
fOut.close();
 
이렇게 캡쳐하는데
 
img에 최초 설정돼있던 배경비트맵만 캡쳐됩니다 ..
 
canvas에 그려진 Circle나 Text도 다 같이 출력하고싶은데
 
어떻게해야하는지 도움 부탁드립니다.
 

 

음무 (17,820 포인트) 님이 2014년 1월 20일 질문
canvas에 그려진 것들을 img에 합쳐서 compress 해야될텐데
canvas img 합치는 부분은 어디있나요?
아 , 그렇군요 합치는방법좀 알려주실수있을까요 ?

1개의 답변

+1 추천
 
채택된 답변
슈루슈 (2,610 포인트) 님이 2014년 1월 21일 답변
음무님이 2014년 1월 21일 채택됨
감사합니다 덕분에 해결됐습니다.
...