照片在自定义相机应用中旋转

时间:2012-08-02 08:31:45

标签: android camera rotation photo

我的应用正在使用相机拍照。问题是,照片​​旋转了90度。该应用程序设计为纵向运行,我已设置

android:configChanges="orientation|screenSize" 

避免方向改变。我以为我设法用

修复它
parameters.setRotation(90);

但事实证明它在不同设备上有所不同(在联想ThinkPad平板电脑和智能手机上进行了测试)。我尝试阅读照片的EXIF,但不包括方向。我知道有很多类似的帖子,但大多数都认为默认的相机应用程序。有人可以解释一下这个问题是由什么造成的,我该如何解决?提前致谢。

2 个答案:

答案 0 :(得分:0)

尝试使用此功能获取想要的图像

public static Bitmap createRotatedBitmap(Bitmap bm,float degree){

Bitmap bitmap = null;

if(degree!= 0){

Matrix matrix = new Matrix();

matrix.preRotate(度);

bitmap = Bitmap.createBitmap(bm,0,0,bm.getWidth(),

bm.getHeight(), matrix, true);

}

返回位图;

}

bitmap = createRotatedBitmap(bitmap,90);

答案 1 :(得分:0)

是的,所有设备的方向都不完全相同。它完全取决于硬件,可以改变设备到设备。您无法修复它,只有一个选项允许用户在第一次启动应用程序时设置旋转,获得基本旋转角度并将其保存到设置中,然后再提供您的功能。