android捕获的图像质量太差了

时间:2015-01-09 11:15:33

标签: android-intent bitmap camera

我有使用系统相机的android照片拍摄应用程序和捕获后我收集图像位图并使用位图压缩流编写器将其保存到我的位置,手机摄像头相当不错但我使用意图接收的图像质量很差。
当图像质量属性为100时为什么会发生这种情况?我希望还有其他方法。谢谢你的帮助。 这是我调用相机并保存图像的代码。

..
Intent pic = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
    startActivityForResult(takePicture, 0);


....after photo shoot 

public void onActivityResult(int requestCode, int resultCode, Intent intent) 
 {

    if (requestCode == CAMERA_PIC_REQUEST) {  

      Bitmap b = (Bitmap) intent.getExtras().get("data");

      fileOutputStream files = new 
      fileOutputStream(new File(Environment.getExternalStorageDirectory()+"/myFolder/","image.jpg"));
            b.compress(Bitmap.CompressFormat.JPEG, 100, files);

 }
 }

1 个答案:

答案 0 :(得分:0)

如果在通过Intent使用摄像头捕获时需要全尺寸图像,则需要指定输出URI,如下所示:

takePictureIntent.putExtra(MediaStore.EXTRA_OUTPUT, outputImageUri);

否则,Intent extras数据字段中返回的图像是缩略图。