如何同时捕获相机图像缩略图和完整图像
Posted
技术标签:
【中文标题】如何同时捕获相机图像缩略图和完整图像【英文标题】:How to capture camera image thumbnail and full image at the same time 【发布时间】:2013-03-31 19:25:15 【问题描述】:看起来在相机图像捕捉中,一个人只能捕捉缩略图或完整图像,但不能同时捕捉两者,因为
public void startCamera()
...
camera.putExtra("output", imageUri); (step 1)
...
需要在之前声明
...
startActivityForResult(camera, IMAGE_CAPTURE); (step 2)
...
Bundle extras = camera.getExtras();
mImageBitmap = (Bitmap) extras.get("data");
imageView.setImageBitmap(mImageBitmap);
...
但是一旦“onActivityResult”返回,完整的图像已经保存到 imageUri 并且缓冲区被清除。但是要捕获所拍摄图像的缩略图,需要在“startActivityForResult”之后执行代码。问题是在步骤 2 中保存图像后,图像缓冲区被清除。要捕获图像缩略图,需要跳过在步骤 1 中保存完整图像,以便在步骤 2 中捕获缩略图图像。
我可以使用另一种方法来保存完整图像,将完整图像重新加载到位图中,将图像缩放为缩略图大小并重新保存图像,但这似乎是多余的。知道我是否可以一次性完成这两项工作吗?
【问题讨论】:
我相信您注意到的行为并不普遍。我遇到了一些允许访问两者的设备,并没有破坏缩略图。 【参考方案1】:查看 MediaStore.Images.Thumbnails,特别是 getThumbnail(靠近底部):http://developer.android.com/reference/android/provider/MediaStore.Images.Thumbnails.html。
如果这不起作用,是的,您必须自己手动重新缩放并保存缩略图。
【讨论】:
以上是关于如何同时捕获相机图像缩略图和完整图像的主要内容,如果未能解决你的问题,请参考以下文章