파일을 Bitmap으로 불러와 다시 파일로 쓸때 파일크기가 다른 문제

조회수 1281회

안드로이드에서 갤러리의 사진을 불러와 Bitmap에 담은 후

bm.compress(Bitmap.CompressFormat.PNG, SAMPLING, out); 
bm.compress(Bitmap.CompressFormat.JPEG, SAMPLING, out);

를 이용해 파일을 새로 쓸 때 원본 파일과 out에 써진 새로운 파일의 크기가 다른건 뭐가 문제일까요?

  • (•́ ✖ •̀)
    알 수 없는 사용자

1 답변

  • Bitmap.compress() 함수가 비트맵 객체(메모리에 로드된 이미지 정보)를 파일로 저장할 때 PNG, JPEG 포맷으로 압축을 하기 때문에 파일 사이즈가 변경되는 것입니다. 해당 함수가 원본 파일과 같은 상태의 압축 옵션으로 이미지를 저장하는 것이 아니기 때문에 오히려 파일 사이즈가 달라질 수 있다.라고 보는 게 적절할 것 같습니다.

    예를 들면, 포토샵과 같은 이미지 편집기로 PNG 파일을 열고, 새로운 PNG 파일로 저장을 할 때 압축하는 옵션에 따라 파일 사이즈가 달라지는 것을 확인할 수 있는데요. 이것과 비슷한 현상으로 볼 수 있습니다.

    • (•́ ✖ •̀)
      알 수 없는 사용자

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)