안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요.
이미지 리사이징을 하려고 하는데요
이미지 크기가 아니라 용량을 기준으로 리사이징을 하고 싶습니다.
참조할 만한 소스나 문서나 웹페이지 같은게 있을까요?
이미지 리사이징으로 구글링 하면 거의 다 이미지 width 와 hright 로 하는 방법만 나오더라고요...
도와주세요~
2011.09.05 14:30:11
주석이 변경이 안됐는데, Bitmap.Option API 확인해보시면 될것 같구요.
512k 이하일 경우 이미지 그대로 사용 그 이상의 사이즈에 대해서 분기 한겁니다.
근데 카메라로 사진을 찍으면 이미지 자체가 용량이 큰데 JPG 이미지의 경우 압축된 이미지가 많아서
실제로 해상도 높은 이미지가 512 이하인 경우도 많아요.
힙 메모리는 해상도와 연결되기 때문에 위의 함수 자체가 절대적이 않아요.
애매한 이야기만 한거 같은데, Bitmap 사용시 해당 이미지 정보만 추출하는 방법을 몰라서 무식하게 용량으로 처리 했습니다.




private int getImageCompressSize(String filename)
{
File file = new File(filename);
long len = file.length();
if(len <= 0)
return -1;
/**
* 사진 용량 기준 1메가, 2메가, 3메가, 3메가 이상으로 처리
*/
if(len > 0 && len <= 512384)
return 1;
if(len > 512384 && len <= 1024768)
return 2;
else if(len > 1024768 && len <= 2049536)
return 4;
else if(len > 2049536 && len <= 3074304)
return 8;
else
return 10;
}
전 이렇게 해서 이미지 옵션값 조절 했어요.ㅋ