Android에서 캔버스를 통해 빈 비트 맵 생성 및 그리기 캔버스를 설정 한 다음 비트 맵에 모양을

빈 비트 맵을 만들고 해당 비트 맵에 캔버스를 설정 한 다음 비트 맵에 모양을 그리고 싶습니다.



답변

이것은 아마도 당신이 생각하는 것보다 더 간단 할 것입니다.

int w = WIDTH_PX, h = HEIGHT_PX;

Bitmap.Config conf = Bitmap.Config.ARGB_8888; // see other conf types
Bitmap bmp = Bitmap.createBitmap(w, h, conf); // this creates a MUTABLE bitmap
Canvas canvas = new Canvas(bmp);

// ready to draw on that bitmap through that canvas

다음 주제에 대해 찾은 일련의 자습서 입니다. 캔버스 시리즈로 그리기


답변

Bitmap.Config.ARGB_8888을 사용하지 마십시오.

대신 int w = WIDTH_PX, h = HEIGHT_PX를 사용하십시오.

Bitmap.Config conf = Bitmap.Config.ARGB_4444; // see other conf types
Bitmap bmp = Bitmap.createBitmap(w, h, conf); // this creates a MUTABLE bitmap
Canvas canvas = new Canvas(bmp);

// ready to draw on that bitmap through that canvas

ARGB_8888은 더 많은 비트 맵이나 큰 비트 맵을 다룰 때 OutOfMemory 문제에 빠질 수 있습니다. 또는 더 나은 방법은 ARGB 옵션 자체의 사용을 피하는 것입니다.


답변