保存之前的Android SavePhoto旋转位图

时间:2015-08-20 20:01:57

标签: android image

我有一个Android应用程序,它将图像捕获为CameraPreview图像 在拍摄之前,图像将以人像模式显示在手机屏幕上(根据需要)。

但是当我执行保存时,图像会转到JPG文件,旋转到横向模式 我通过访问MyFiles,找到图像并使用图库查看它来确认这一点 - 它在横向模式下弹出屏幕。
此外,当我将图像文件上传到我的计算机上时,它们也会以横向模式显示 图像正确,但方向错误。

我用来保存的方法如下:

private boolean savePhoto(Bitmap bm) {
FileOutputStream image = null;
try {
   image = new FileOutputStream(mLocation);
} catch (FileNotFoundException e) {
   e.printStackTrace();
}
bm.compress(CompressFormat.JPEG, 100, image);
if (bm != null) {
  int h = bm.getHeight();
  int w = bm.getWidth();
} else {
  return false;
}
return true;
}

我可以在此处插入代码或调用例程(如果需要,可以使用什么代码),可以在实际保存之前将图像旋转到适当的方向?

或者是否有其他方式可以更改生成的JPG图像方向?

POST EDIT - 我刚刚添加了以下代码来检查Saved JPG文件。

ExifInterface exif = new ExifInterface(f.getPath());
int orientation = exif.getAttributeInt(ExifInterface.TAG_ORIENTATION, ExifInterface.ORIENTATION_NORMAL);

然而它返回了Orientation = 0,这并没有告诉我它'认为'JPG以横向方向保存,以便我可以使用其他发布的代码。

谢谢

0 个答案:

没有答案