我已经使用以下设备相机意图来捕获并将图像保存在设备存储中:
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
fileUri = getOutputMediaFileUri(MEDIA_TYPE_IMAGE,lastChar);
intent.putExtra(MediaStore.EXTRA_OUTPUT, fileUri);
// Start the image capture Intent
startActivityForResult(intent, CAMERA_CAPTURE_IMAGE_REQUEST_CODE);
Everthing工作正常,相机捕捉图像,正确保存到存储中,但当我试图通过从存储中取出图像uri并在imageview中显示图像来查看图像。 图像角度一直在变化。 用于后置摄像头捕获的图像旋转角度为90度,前置摄像头捕获图像旋转角度为270度。
我为所有图像添加了90度旋转,解决了后凸轮问题,但前置摄像头拍摄的图像仍然有180度旋转。
提前感谢,请帮我解决这个问题
答案 0 :(得分:3)
有些相机实际上会以适当的旋转方式存储JPEG图像;其他人将设置一个EXIF标题,要求图像查看器旋转图像。 ImageView
不支持JPEG文件中的EXIF标头。您需要使用ExifInterface
(或类似技巧)查看是否有EXIF方向标题并调整图片以适应。
答案 1 :(得分:1)
我使用以下代码检查方向并将我的imageview旋转更改为该角度
surf(X,Y,Z);