现在的位置: 首页 > 综合 > 正文

关于前置摄像头拍照后照片方向的总结(续前篇)

2013年10月14日 ⁄ 综合 ⁄ 共 905字 ⁄ 字号 评论关闭

经过试验,发现前置摄像头拍照后的照片依然方向奇葩。因此我做了如下判断和调整

 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);
【上篇】
【下篇】

抱歉!评论已关闭.