相机预览方向问题
对于相机的预览方向我们可以通过如下API进行设置
camera.setDisplayOrientation(0);
但是,该API影响的是相机的预览方向,对于照片的保存方向并没有什么影响,最终照片保存的方向还是由Camera的图像Sensor决定的。
照片保存方向问题
第一种解决办法就是对拍照后的图片先进行旋转再进行保存,如下
public static Bitmap rotateBitmapByDegree(Bitmap bmp, int degree) {
if (degree == 0 || null == bmp) return bmp;
Bitmap returnBm = null;
// 根据旋转角度,生成旋转矩阵
Matrix matrix = new Matrix();
matrix.postRotate(degree);
// 将原始图片按照旋转矩阵进行旋转,并得到新的图片
returnBm = Bitmap.createBitmap(bmp, 0, 0, bmp.getWidth(), bmp.getHeight(), matrix, true);
if (returnBm == null) {
returnBm = bmp;
}
if (returnBm != bmp && !bmp.isRecycled()) {
bmp.recycle();
bmp = null;
}
return returnB