gpt4 book ai didi

android - 通过保持纵横比在 Android 中裁剪图片

转载 作者:太空狗 更新时间:2023-10-29 12:52:38 25 4
gpt4 key购买 nike

我使用此代码启动裁剪 Activity ,并将裁剪后的图片作为 onActivityResult 中的数据返回。所以这很好用。

    Intent intent = new Intent("com.android.camera.action.CROP");
intent.setType("image/*");

List<ResolveInfo> list = getPackageManager().queryIntentActivities(
intent, 0);

int size = list.size();

if (size == 0) {
Toast.makeText(this, "Can not find image crop app",
Toast.LENGTH_SHORT).show();
return;
} else {
intent.setData(mImageCaptureUri);

intent.putExtra("outputX", 200);
intent.putExtra("outputY", 200);
intent.putExtra("scale", true);
intent.putExtra("return-data", true);

Intent i = new Intent(intent);
ResolveInfo res = list.get(0);

i.setComponent(new ComponentName(res.activityInfo.packageName,
res.activityInfo.name));

startActivityForResult(i, CROP_FROM_CAMERA);

这是将图像裁剪为 200x200 大小的代码,与我在裁剪 Activity 中选择的纵横比无关。我担心的是,我想要在 Activity 中使用矩形选择的宽高比,而不是通过放置数字 200 和 200 来固定。

但是当我注释掉这两行时,我的程序会强制关闭....

是否有任何解决方案可以精确裁剪我在裁剪 Activity 中选择的图片部分,同时保持我放置在图片上的矩形的纵横比?我必须将哪些数据作为附加信息?需要帮助!

最佳答案

How to crop a rectangle from an image in android

Cropping to anything other than a square shape is not possible using the built-in Android cropping handling (com.android.camera.action.CROP).

在下一个线程中查看 OP 的回复 - 您可能会有解决方案。

这个线程也有一些好的建议:

关于android - 通过保持纵横比在 Android 中裁剪图片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10453446/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com