Bitmap은 이미지를 표현하기 위한 객체이다.

메모리에 로딩된 Bitmap을 사용하여 이미지 사이즈를 조절하고 이미지 용량을 줄일 수 있다.

BitmapFactory를 사용하여 Bitmap으로 만들 수 있다.

 

BitmapFactory 속성

 

decodeByteArray(byte[] data, int offset, int length, BitmapFactory.Options opts)

-Byte배열 형태의 이미지를 Bitmap으로 만든다.

decodeFile(String pathDir)

-로컬저장소에 있는 이미지 파일의 경로를 입력하면 Bitmap으로 만들어 준다.

decodeResource(Resouces res,int id)

-res폴더에 저장된 이미지를 Bitmap으로 만들어준다.

Options에서 사용되는 변수

inJustDecodeBounds

-true로 설정 시 메모리에 할당하지 않고 Bitmap 객체의 height, width, type을 얻을 수 있다.

(실제 객체로 디코딩된것이 아니기 때문에 Null값을 반환함) – 디코딩 하기전에 비트맵의 크기를 확인하기 위함

inSampleSize

-inSampleSize = 2로 설정하면

1024x768 image ->  512x389 image를 메모리에 로드 하여 실제 이미지 크기보다 작은 크기의 Bitmap을 로드하기 때문에 메모리사용량을 줄일 수 있다.

 

inJustDecode = true로 설정 하면 Bitmap이 메모리에 저장되기 전에 해당 Bitmap의 Height, Width값을 구할 수 있다.

위의 코드는 비트맵의 사이즈를 원하는 사이즈로 조절할 수 있다.

+ Recent posts