【问题标题】:Crop / scale image from gallery return maximal resolution 160 x 160从图库中裁剪/缩放图像返回最大分辨率 160 x 160
【发布时间】:2013-06-27 09:15:01
【问题描述】:

我对来自 android 库的裁剪/缩放图像有疑问。我将 outputX 和 outputY 设置为 480,但是当我将输出大小设置为大于 160 时,android 裁剪活动返回大小始终为 160 x 160。

我从画廊发送图像,分辨率为 2048 x 1536。我使用的是三星的 10.1" 平板电脑

有人可以帮忙吗?谢谢你

Uri fileUri = data.getData();

Log.e("", fileUri.getPath());
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;
}

intent.setData(fileUri);

intent.putExtra("outputX", 480);
intent.putExtra("outputY", 480);
intent.putExtra("aspectX", 1);
intent.putExtra("aspectY", 1);

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, 2);

【问题讨论】:

    标签: android image image-resizing


    【解决方案1】:

    回答有点晚了,希望对大家有所帮助...

    基本上,通过将“return-data”设置为 true,作物可以传回的数据量是有限的。

    解决方法是将“return-data”设置为false并添加:

    intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(tempFile));
    

    其中 tempFile 是在外部存储上创建的文件(请记住在清单中添加适当的权限),我还没有设法使其与内部存储上的文件一起使用。

    当 Activity 在 onActivityResult 返回时,它会使用裁剪的图像数据填充您的 tempFile。之后,做你的事情并在你完成后删除临时文件......

    【讨论】:

      【解决方案2】:

      您是否尝试过设置返回数据的密度??

      当你从这段代码中得到结果图像时:

       Bundle extras = data.getExtras();
                  if (extras != null) {
            //bitmap photo        
                      photo = extras.getParcelable("data");
      

      将位图的密度设置为 100。

      photo.setDensity(100);
      

      你一定会得到你想要的大图像...... 如果你想变小,那么高于将其设置为 150 或 200 ...... 大的价值,你会给你的,你会找到小的答案。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-03-26
        • 2016-08-29
        • 2017-06-18
        • 1970-01-01
        相关资源
        最近更新 更多