无法裁剪大图像

时间:2010-12-23 08:28:19

标签: android image crop

我的应用程序需要打开图库并选择要裁剪的图像。我将目标大小设置为值(87%* screenWide)。现在,出现了问题。在大屏幕设备中,图库无法返回裁剪后的图像,日志显示“!!! FAILED BINDER TRANSACTION !!!”。在大多数设备中,没关系。

任何人都可以帮我吗?谢谢!

我使用Intent.ACTION_GET_CONTENT进行裁剪,并设置outputX,outputY等。裁剪图像是例程。

3 个答案:

答案 0 :(得分:7)

我遇到了类似的问题。如果您使用的是Android默认裁剪工具,则其最大裁剪限制为256x256。将裁剪的大小设置为小于或等于,你会没事的。

intent.putExtra("outputX", 256);
intent.putExtra("outputY", 256);

答案 1 :(得分:6)

尝试按以下方式发送意图:

mSavedUri = Uri.fromFile(new File("/sdcard/cropped.jpg"));

mImageSelectIntent = new Intent(Intent.ACTION_GET_CONTENT, null);
mImageSelectIntent.setType("image/*");
mImageSelectIntent.putExtra("crop", "true");
mImageSelectIntent.putExtra("aspectX", 4);
mImageSelectIntent.putExtra("aspectY", 3);
mImageSelectIntent.putExtra("outputX", mImageWidth);
mImageSelectIntent.putExtra("outputY", mImageHeight);
mImageSelectIntent.putExtra("output", mSavedUri);

裁剪后的图像将保存为裁剪的JPG,不会通过“数据”返回给您。

答案 2 :(得分:1)

重新解决壁纸问题,请尝试明确设置:

your_intent.putExtra("setWallpaper", false);