2013-12-22 4 views

답변

1

가장 간단한 솔루션은 정적 메서드 Bitmap.createBitmap (Bitmap source, int x, int y, int width, int height)을 사용하여 마녀가 '소스'비트 맵의 ​​지정된 하위 세트에서 새로운 불변 ​​비트 맵을 생성합니다 (변경 불가능한 비트 맵은 수정할 수 없습니다. 수정을 시도하면 예외가 발생합니다). 더 작은 비트 맵을 변경할 수 있으면 Bitmap.createBitmap()에 의해 반환 된 불변의 비트 맵을 Bitmap.copy(Bitmap.Config config, boolean isMutable)을 호출하여 변경 가능한 비트 맵으로 변환 할 수 있습니다.

Bitmap bigBitmap = ...; 
Bitmap smallBitmap1 = Bitmap.createBitmap(bigBitmap, 0, 0, 720, 1000); 
Bitmap smallBitmap2 = Bitmap.createBitmap(bigBitmap, 0, 1000, 720, 1000); 
Bitmap smallBitmap3 = Bitmap.createBitmap(bigBitmap, 0, 2000, 720, 1000); 
... 
// to make small bitmaps mutable 
smallBitmap1 = smallBitmap1.copy(Bitmap.Config.ARGB_8888, true); 
smallBitmap2 = smallBitmap2.copy(Bitmap.Config.ARGB_8888, true); 
... 

또 다른 해결책은 빈 작은 비트 맵을 생성하고 Canvas를 사용하여 작은 것들에 큰 하나의 부분을 그리기 될 것입니다.

관련 문제