使用相机操作意图时如何在保存图片时减小图片大小?

12

如何在使用相机操作意图保存图片时缩小照片的大小。

我试图在相机动作的putExtra中使用MediaStore.EXTRA_SIZE_LIMIT:

Intent captureintent =  new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);  
captureintent.putExtra(MediaStore.EXTRA_OUTPUT, outputFileUri);
captureintent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 0);
captureintent.putExtra(MediaStore.EXTRA_SCREEN_ORIENTATION, 0);
captureintent.putExtra(MediaStore.EXTRA_SIZE_LIMIT, The Value to be Kept);

但是这似乎行不通。

有什么有效的方法可以做到这一点吗?


intent.putExtra(MediaStore.EXTRA_SIZE_LIMIT, MAXIMUM_VIDEO_SIZE);MAXIMUM_VIDEO_SIZE 只是您想要对图片大小施加的上限。请指定允许的最大大小。 - Vikalp Patel
MAXIMUM_VIDEO_SIZE 是根据您的应用程序允许的最大图片大小设置的 :) 就像 Twitter 头像只允许 1MB 或类似的大小。 - Vikalp Patel
有没有什么方法可以控制图像文件的大小限制? - Shail Adi
尝试将 MAXIMUM_IMAGE_SIZE 设置为类似于 captureintent.putExtra(MediaStore.EXTRA_SIZE_LIMIT, 1024*1024); 的值,即 1MB - Vikalp Patel
在计算机中,1MB 表示为 1024*1024 字节 :) - Vikalp Patel
1个回答

8

@JoeBlow 这很令人困惑,因为没有一种单一的方法来完成它。您必须考虑宽度和高度之间的比例、可能的裁剪、内存消耗以及可能的屏幕大小,详见http://developer.android.com/training/displaying-bitmaps。 - Adam Nybäck
1
嗨,如果你的意思是EXTRA_SIZE_LIMIT不能与EXTRA_OUTPUT一起使用...你能解释一下吗?你的链接根本没有说明这一点...??? - noelicus

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接