如果我得到一个缩放比率列表:parameters.getZoomRatios(),返回的值为 100,114...200(对应于 1x 1.14x ...2.0x 缩放),但在 200(2x 缩放)的相机预览中,图片看起来放大了 2 倍以上。在示例图像中,在 1x 和 2x 变焦时显示 6cm fov 和在 2x 变焦时显示 2.5cm……我期待在 2x 时为 3.0cm。
我应该以另一种方式解释这些值吗?...其他人看到了吗?或者这个设备/版本是特定的,还是我应该乘以某个常数或其他值(焦距)?我正在尝试将我的相机视图与我的应用程序的渲染视图相匹配,当我缩放时,这会弄乱匹配。
代码在这里是标准的:
public void setZoom(int pZoom)
{
final Camera.Parameters p = this.mCamera.getParameters();
if (p.isZoomSupported())
{
p.setZoom(pZoom);
this.mCamera.setParameters(p);
}
}
public int getZoom( android.hardware.Camera camera)
{
int zoom = 100;
final Parameters p = camera.getParameters();
if (p.isZoomSupported())
{
final List<Integer> zoomRatios = p.getZoomRatios();
final int zoomIndex = p.getZoom();
if (zoomIndex < zoomRatios.size())
{
zoom = zoomRatios.get(zoomIndex);
}
//Log.d("zoom","ix:" + zoomIndex + " z:"+zoom);
}
return zoom;
}