Wook No.1
Bitmap compress 할때 이미지 회전 이슈 본문
Bitmap.compress 할때 세로 이미지가 가로로 회전되는 이슈가 있다.
compress 할때 Exif 회전 값이 사라지는것 같다.
그래서 compress가 완료되면 Exif 정보를 다시 저장 시키는 방식으로 해결했다.
// 기존 Exif Orientation 정보 조회
var savedBitmap = BitmapFactory.decodeFile(fileName)
val oldExifOrientation = ExifInterface(fileName).getAttribute(ExifInterface.TAG_ORIENTATION)
// 비트맵 수정 작업
var modifiedBitmap: Bitmap? = null
사이즈 변경, 이미지 편집 등...
// 수정된 비트맵 저장
var fosObj = FileOutputStream(newPath)
modifiedBitmap.compress(Bitmap.CompressFormat.JPEG, 100, fosObj)
// Exif를 이전 Orientation으로 저장
val newExif = newPath?.let {
ExifInterface(it)
}
newExif?.setAttribute(ExifInterface.TAG_ORIENTATION, oldExifOrientation)
newExif?.saveAttributes()
'Android' 카테고리의 다른 글
Firebase Remote Config 사용 (0) | 2022.07.22 |
---|---|
[에러] Fatal Exception: java.lang.IllegalStateException Can not perform this action after onSaveInstanceState (0) | 2022.07.04 |
[빌드에러] Could not create service of type FileAccessTimeJournal using GradleUserHomeScopeServices (0) | 2022.05.27 |
안드로이드 스튜디오 Gradle View 에서 Task 목록이 안보일때 (0) | 2022.05.24 |
RecyclerView 무한 스크롤 (0) | 2022.05.10 |
Comments