拍照并降低质量

时间:2016-04-19 14:05:40

标签: android

在我的Android应用中,我有一个按钮可以拍这样的照片:

button_photo.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

            Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
            imageUri = Uri.fromFile(new File(Environment.getExternalStorageDirectory(), "fname_" +
                    String.valueOf(System.currentTimeMillis()) + ".jpg"));
            intent.putExtra(MediaStore.EXTRA_OUTPUT, imageUri);
            startActivityForResult(intent, CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE);
        }
    });

和我的ActivityResult:

Intent intent = new Intent(this, UploadPicture.class);
            intent.putExtra("URI", imageUri.toString());
            startActivity(intent);

在开始上传活动之前,我想降低图片的质量(我希望服务器上的图片更轻)。 我怎么能这样做?

由于

1 个答案:

答案 0 :(得分:2)

在上传之前将图像转换为Bitmap并压缩位图设置图像的质量并将其写入正确的路径。图像的质量可以更改,希望这可以帮助您缩小尺寸图像。

bitmap.compress(Bitmap.CompressFormat.JPEG, 100, out);

compress方法定义为

public boolean compress (Bitmap.CompressFormat format, int quality, OutputStream stream)

您也可以从此Bitmap.compress

获取帮助