Android中的裁剪图像大小是不变的

时间:2013-10-31 06:07:03

标签: android image width crop

我正在以循环方式裁剪图像,并在创建意图时使用下面的代码

    intent.setData(mImageCaptureUri);
    intent.putExtra("outputX", 200);
    intent.putExtra("outputY", 200);
    intent.putExtra("aspectX", 1);
    intent.putExtra("aspectY", 1);

由于我使用的是outputX = 200,无论放大或缩小多少,我都会将每个裁剪图像的宽度和高度分别设置为200和200。

如下图所示,两个图像具有不同的缩放比例,但仍然返回相同的高度和宽度。

 width  = bitmap.getWidth(); 

enter image description here

enter image description here

有人可以告诉我应该在行中使用什么参数

intent.putExtra("outputX", 200);

这样我就可以得到裁剪图像的TRUE宽度和高度(不是每种情况下都是200)。

1 个答案:

答案 0 :(得分:0)

当我回答你的earlier问题时,我不知道这是个问题。我相信你要找的答案应该是:

intent.setData(mImageCaptureUri);
intent.putExtra("aspectX", 1);
intent.putExtra("aspectY", 1);
intent.putExtra("scale", false);

确保将参数比例设置为false。它默认为true。

PS由于Android是开源的,相机+裁剪应用程序是操作系统的一部分,我所做的只是阅读源代码。您应该查看的文件是here。检查变量mScale以查看参数的使用方式。