0

我正在开发应用程序,我想裁剪从相机拍摄的图像并上传到 sftp 服务器。我正在使用以下代码裁剪图像:

BitmapFactory.Options opts = new BitmapFactory.Options();
opts.inSampleSize = 1; 
Bitmap bm = BitmapFactory.decodeFile(imagePath, opts);
Intent intent = new Intent("com.android.camera.action.CROP");              
intent .setDataAndType(outputFileUri, "image/*");
intent.putExtra("outputX",bm.getWidth());
intent.putExtra("outputY", bm.getHeight());
intent.putExtra("aspectX", 1);
intent.putExtra("aspectY", 1);
intent.putExtra("scale", true);
intent.putExtra("return-data", false); 
startActivityForResult(intent, 2);

有了这个,我得到了一个可调整大小的矩形。但是,在调整裁剪区域宽度和高度的大小时,会像这样按比例变化。 在此处输入图像描述

我想像在PhotoCrop 应用程序中一样独立更改裁剪区域的宽度和高度

在此处输入图像描述

我希望你明白我的问题。

编辑: ****此外,图像裁剪不适用于三星 Galaxy S3,另一件事是,当我调整裁剪区域的大小时,它会过度缩放图像并且图像变得模糊..****

4

1 回答 1

4

试试这个 :

 intent.putExtra("aspectX", 0);
 intent.putExtra("aspectY", 0);

希望它可以帮助你。

谢谢。

于 2012-12-14T07:01:50.893 回答