avoid rotating images by 0 degrees

This commit is contained in:
tibbi 2017-06-22 22:54:03 +02:00
parent 1c60320f5c
commit 710e7d3cf5
1 changed files with 5 additions and 2 deletions

View File

@ -75,7 +75,7 @@ class PhotoProcessor(val activity: MainActivity, val uri: Uri?, val currCameraId
else -> 0 else -> 0
} }
image = rotate(image, imageRot + deviceRot + previewRot) ?: return "" image = rotate(image, (imageRot + deviceRot + previewRot) % 360) ?: return ""
image.compress(Bitmap.CompressFormat.JPEG, 80, fos) image.compress(Bitmap.CompressFormat.JPEG, 80, fos)
fos?.close() fos?.close()
return photoFile.absolutePath return photoFile.absolutePath
@ -93,11 +93,14 @@ class PhotoProcessor(val activity: MainActivity, val uri: Uri?, val currCameraId
} }
private fun rotate(bitmap: Bitmap, degree: Int): Bitmap? { private fun rotate(bitmap: Bitmap, degree: Int): Bitmap? {
if (degree == 0)
return bitmap
val width = bitmap.width val width = bitmap.width
val height = bitmap.height val height = bitmap.height
val matrix = Matrix() val matrix = Matrix()
matrix.setRotate((degree % 360).toFloat()) matrix.setRotate(degree.toFloat())
try { try {
return Bitmap.createBitmap(bitmap, 0, 0, width, height, matrix, true) return Bitmap.createBitmap(bitmap, 0, 0, width, height, matrix, true)
} catch (e: OutOfMemoryError) { } catch (e: OutOfMemoryError) {