我正在做一个程序,我们正在使用相机拍照并将其存储在私人文件夹中。从中获取图像并将其显示在网格视图中。单击网格视图将显示全屏图像。我面临的问题是当相机处于纵向模式时,图像质量是完美的。但是如果相机处于横向模式,它会显示拉伸图像我该如何克服这个问题。
问问题
74 次
1 回答
1
嗨,看看下面的代码。在保存捕获的图像之前,请执行以下过程。它将以纵向模式保存图像。希望这会帮助你。
int rotation = -1;
rotation = ((WindowManager)getSystemService(Context.WINDOW_SERVICE))
.getDefaultDisplay().getOrientation();
Matrix rotator = new Matrix();
switch (rotation) {
case (Surface.ROTATION_0):
break;
case (Surface.ROTATION_90):
rotator.postRotate(270);
break;
case (Surface.ROTATION_180):
rotator.postRotate(180);
break;
case (Surface.ROTATION_270):
rotator.postRotate(90);
break;
// screen_{width,height} are applied before the rotate, so we don't
// need to change them based on rotation.
bmp_ss = Bitmap.createBitmap(bmp_ss, 0, 0, screen_width, screen_height, rotator, false);
于 2013-04-01T11:47:33.270 回答