2012-01-29 6 views
1

안드로이드에서 res 아래의 드로어 블 폴더에 다운로드하여 복사 한 jpeg로 비트 맵을 만들려고합니다.jpeg에서 비트 맵 만들기

public void draw(Canvas g, Resources res, int x, int y, int w, int h) { 
    Bitmap im = BitmapFactory.decodeResource(res, R.drawable.green_dragon); 
    Bitmap im = BitmapFactory.decodeFile(R.drawable.green_dragon); 
    g.drawBitmap(im, null, new Rect(x*w, y*h, (x*w)+w, (y*h)+h), new Paint()); 
} 

안드로이드 중 하나 decodeResource 또는 decodeFile 라인에 R.drawable.green_dragon을 인식하지 못하는 부착

내 코드입니다. 또한 응용 프로그램을 새로 고치고 정리하는 방법을 시도했습니다. 둘 다 도왔다. 이미지 속성을 조회 할 때 유형은 File이고 경로는 .jpg입니다.

미리 도움을 주셔서 감사합니다.

답변

2

R 개체를 사용하여 응용 프로그램과 함께 패키지 된 리소스 만 참조 할 수 있습니다.

다운로드 한 것은 데이터베이스 나 파일에 저장해야합니다. 이미 파일을 다운로드하고 저장했다고 가정합니다. 어느 시점에서 jpg의 Path 또는 jpg의 FileDescriptor을 가진 String이 필요합니다.

당신은 어느 쪽이든 당신은 사용하여 비트 맵을로드 할 수 있습니다 일단 :

Bitmap bmp = BitmapFactory.decodeFile(PathToFileString); 

또는

Bitmap bmp = BitmapFactory.decodeFileDescriptor(fileDescriptorObject); 
+0

모든 세트 . 이미지를 드로어 블 폴더에 복사 할 때 작동합니다. 감사! – Jack

0

을 어쩌면 drawBitmap에 대한 srcRect가 널 안하지만,이 :

Rect srcRect = new Rect(0, 0, im.getWidth(), im.getHeight()); 
관련 문제