位图质量非常低

时间:2013-12-15 12:18:05

标签: android camera

我正在尝试构建一个应用程序,它捕获图片并将图片发送到另一个活动。 我试图在第二个活动中显示这张照片,显然画面的质量非常低。

到目前为止,这是我的代码

Intent cameraIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(cameraIntent, PICTURE_TAKEN);

protected void onActivityResult(int requestCode, int resultCode, Intent data) {

        super.onActivityResult(requestCode, resultCode, data);      

        if(resultCode == RESULT_OK){
            Intent canvasIntent = new Intent(this ,canvas.class);

            Bundle extras = data.getExtras();
            bmpCameraResult = (Bitmap)extras.get("data");
            canvasIntent.putExtra("bmp_Image", bmpCameraResult);            
            startActivity(canvasIntent);                

        }

在canvasActivity中,我试图以传统方式接收位图并尝试显示它。

Intent intent= getIntent();
        Bitmap bmp = (Bitmap) intent.getParcelableExtra("bmp_Image");
        ImageView iv = new ImageView(this);        
        iv.setImageBitmap(bmp);      
        setContentView(iv);

这可能是导致质量下降的原因?获得高质量图像的优化方法是什么?

谢谢。

1 个答案:

答案 0 :(得分:0)

您是否尝试在jpegQualitysetJpegQuality)中设置Camera Parameters Camera.Parameters),如下所示:Camera Feature Documentation

我认为您还应该阅读有关同一问题的这些答案:

  1. Android: Not able to get original photo captured by camera (Able to read compress photo only)
  2. Low picture/image quality when capture from camera