關於前置攝像頭拍照後照片方向的總結(續前篇)
阿新 • • 發佈:2019-02-05
經過試驗,發現前置攝像頭拍照後的照片依然方向奇葩。因此我做了如下判斷和調整
try { ExifInterface exifInterface = new ExifInterface(getPhotoPath()); int result = exifInterface.getAttributeInt( ExifInterface.TAG_ORIENTATION, ExifInterface.ORIENTATION_UNDEFINED); Log.d(TAG,"exif方向 "+result); int degree = 0; if(getPhotoSource()){ //如果是前置攝像頭照的照片 switch(result) { case ExifInterface.ORIENTATION_ROTATE_90: //正常豎屏拍照時 degree = 270; break; case ExifInterface.ORIENTATION_NORMAL://逆時針旋轉90度時 degree = 180; break; case ExifInterface.ORIENTATION_ROTATE_270: //逆時針旋轉180度 degree = 90; break; default: break; } }else{//如果是後置攝像頭照的照片 switch(result) { case ExifInterface.ORIENTATION_ROTATE_90: //正常豎屏拍照時 degree = 90; break; case ExifInterface.ORIENTATION_ROTATE_180://逆時針旋轉270度時 degree = 180; break; case ExifInterface.ORIENTATION_ROTATE_270: //逆時針旋轉180度 degree = 270; break; default: break; } } //旋轉圖片使其校正 mCurrentBitmap=bitmapManager.rotate(mCurrentBitmap, degree,getPhotoPath(), displayMetrics.widthPixels, displayMetrics.heightPixels);