我正在开发一个Android应用程序,我想在其中修复用于裁剪的平方比例。我的代码如下:
public void cropCapturedImage(Uri picUri){
//call the standard crop action intent
Intent cropIntent = new Intent("com.android.camera.action.CROP");
//indicate image type and Uri of image
cropIntent.setDataAndType(picUri, "image/*");
//set crop properties
cropIntent.putExtra("crop", "true");
//indicate aspect of desired crop
cropIntent.putExtra("aspectX", 1);
cropIntent.putExtra("aspectY", 1);
//indicate output X and Y
cropIntent.putExtra("outputX", 512);
cropIntent.putExtra("outputY", 512);
//retrieve data on return
cropIntent.putExtra("return-data", true);
//start the activity - we handle returning in onActivityResult
startActivityForResult(cropIntent, 2);
}
答案 0 :(得分:0)
Android does not have CROP
Intent
。并不要求任何设备都有一个应用程序来尊重您的未记录和不受支持的Intent
操作,更不用说特定的附加组合了。
作为we discussed previously,有许多适用于Android的图像裁剪库。至少one支持方形裁剪,at least one fork of that library提供对裁剪区域大小的固定控制。 the available image cropping libraries中的其他人可能会提供类似的功能,如果您不喜欢其中任何一个,欢迎您分享其中一个库或从头开始编写自己的库。
另外,请记住并非所有设备沿两个轴都有512像素,因此用户可能无法轻松裁剪512x512图像。