【发布时间】:2011-02-28 22:21:13
【问题描述】:
(如果我完全错了,请原谅我,我是新手)
我正在展示一些使用MediaStore.ACTION_IMAGE_CAPTURE 拍摄的照片。我尝试在拍照时禁用自动定向,但它似乎不起作用,我使用了
putExtra(MediaStore.EXTRA_SCREEN_ORIENTATION,ActivityInfo.SCREEN_ORIENTATION_NOSENSOR)
这迫使我旋转一些拍摄的照片。然后我将这些照片保存到 SDCARD。我的问题是我不想每次用户加载照片时都旋转它们。我尝试使用此代码创建一个新的位图,该位图将保存在“旋转”状态。它在模拟器上运行,但在我的 HTC 上崩溃。我认为这是一个内存问题。有没有办法有效地做到这一点?更好的是,有没有什么方法可以在使用 Camera Intent 拍照时真正禁用自动定向?
tempBitmap=BitmapFactory.decodeFile(dirPath+filename+".jpg");
int tempW = tempBitmap.getWidth();
int tempH = tempBitmap.getHeight();
if (tempW>tempH) {
Matrix mtx = new Matrix();
mtx.postRotate(90);
Bitmap rotatedBitmap = Bitmap.createBitmap(Bitmap.createBitmap(tempBitmap, 0, 0,
tempW, tempH, mtx, true));
} else{
//...
}
【问题讨论】:
标签: android bitmap camera android-intent rotation