Android - 从相机拍摄的裁剪图像,具有可调整大小,独立高度和裁剪区域的宽度

时间:2012-12-14 06:48:34

标签: android image android-camera crop

我正在开发应用程序,我想裁剪从相机拍摄的图像并上传到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);

有了这个,我得到一个可调整大小的矩形。但是,虽然调整裁剪区域的宽度和高度正在改变,但这样做会有所改变。 enter image description here

我想像PhotoCrop app

一样独立改变裁剪区域的宽度和高度

enter image description here

我希望你能理解我的问题。

修改 ****此外,三星galaxy S3上的图像裁剪效果不佳,另外一件事是当我调整裁剪区域时,它会使图像变焦太大而图像变得模糊.. ****

1 个答案:

答案 0 :(得分:4)

试试这个:

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

希望它对你有所帮助。

感谢。