【问题标题】:Bitmap quality is very low位图质量非常低
【发布时间】:2013-12-15 12:18:04
【问题描述】:

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

这是我目前的代码

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);

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

谢谢。

【问题讨论】:

    标签: android camera


    【解决方案1】:

    您是否尝试在您的Camera Parameters (Camera.Parameters) 中设置jpegQuality (setJpegQuality),您可以在此处阅读: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

    【讨论】:

      猜你喜欢
      • 2013-03-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-16
      • 2020-02-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多