相关疑难解决方法(0)

android如何处理预览大小/比率与实际SufaceView大小之间的差异?

我正在编写一个小型Android应用程序,用户可以在相机的实时预览中放置图像并拍摄照片.然后,应用程序将适当地合并这两个图像 - 所有这一切都正常.

我知道你可以使用Camera.getParameters()来获取/设置PreviewSize,我认为这与实时"相机提要"的大小有关.

但是,显示相机预览的SurfaceView的大小与报告(和使用的)PreviewSizes的大小不同.例如,在模拟器中,我可用的SurfaceView恰好是360x215,而PreviewSize是320x240.尽管如此,整个SurfaceView仍然充满了预览.

但最终产生的图片(也是?)320x240.android如何弥补尺寸和宽高比的这些差异?图像被截断了吗?

或者我只是误解了PreviewSize的含义 - 这与生成的图片的大小有关,还是与SurfaceView上投影的"实时预览"有关?是否有任何非平凡的相机示例可以解决这个问题?

我需要知道转换是如何发生的,最终将图像正确地复制/缩放到照片中,因此这些问题.

camera android image preview surfaceview

8
推荐指数
1
解决办法
2596
查看次数

如何拍摄与预览尺寸相同的宽高比?

标题中所有答案的99.9%如下:

当你搜索List<Camera.Size>,由Camera.Parameters#getSupportedPictureSizes()提供时,尝试找到与通过Camera.Parameters.html#setPreviewSize(int,int)设置的相机预览大小相同的宽高比的大小,或者尽可能接近尽可能.

这很好,但是如果我找不到与预览尺寸相同的宽高比的图片尺寸(Android不能保证对于相机支持的每个预览尺寸都有相同宽高比的图片尺寸),和所有其他图片尺寸(尽可能接近)只是拉伸我的照片,如此这个问题?即使在Camera.Parameters中设置的图片大小和预览大小具有不同的宽高比,我如何制作与预览完全相同的宽高比的照片?

android aspect-ratio android-camera

6
推荐指数
1
解决办法
2235
查看次数