我正在使用相机意图拍照。但是我在Imageview上获得了很大的形象。 我的问题是 -
1.I want full sized image (Which I am getting using putExtra(), )
2.But due to this My imageview size is increasing.
3. Main problem is , Image captured is 90 degree roteted..
我的代码如下。
Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
try
{
// place where to store camera taken picture
tempPhoto = createTemporaryFile("picture", ".png");
tempPhoto.delete();
}
catch(Exception e)
{
return ;
}
mImageUri = Uri.fromFile(tempPhoto);
cameraIntent.putExtra(MediaStore.EXTRA_OUTPUT, mImageUri);
startActivityForResult(cameraIntent, 6);
和onActivityResult ---
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
ContentResolver cr = getApplicationContext().getContentResolver();
Bitmap photo=null;
if (resultCode == RESULT_OK) {
try {
photo = android.provider.MediaStore.Images.Media.getBitmap(cr, Uri.fromFile(tempPhoto));
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
ImageView imageView = (ImageView)this.findViewById(R.id.imageView1);
imageView.setImageBitmap(photo);
}
我正在尝试使用小图像
//Bitmap photo = (Bitmap) data.getExtras().get("data");
这导致空指针Exception ..
如何解决问题?
答案 0 :(得分:2)
我得到了问题的答案。
1.要通过相机获取全尺寸图像,请使用
mImageUri = Uri.fromFile(tempPhoto);
cameraIntent.putExtra(MediaStore.EXTRA_OUTPUT, mImageUri);
//tempPhoto is file location here you are storing camera photo in a temp file.
维持ImageView
尺寸使用android:adjustViewBounds="true"
使用图片方向ExifOrientaion
请查看此ExifOrientaion
http://developer.android.com/reference/android/media/ExifInterface.html