所以我将相机图片大小设置为1280×720,结果非常完美.但是我无法在代码中设置大小,因为每个AndroID设备都会有所不同,并且每个设备都必须从支持的大小列表中选择预览大小和图片大小的设置.
考虑到这里有三个变量,活动布局的屏幕尺寸,相机预览尺寸和图片尺寸,最好的方法是什么.
是最好使用match_parent或fitXY作为FrameLayout大小,只能使用两个变量,预览大小和图片大小?
请注意预览大小和图片大小中的几个宽度和高度组合是相同的.例如1280 x 720同时存在于预览和图片中,是否总是会出现两种尺寸的匹配?
List<Size> prevIEwSizes = mCamera.getParameters().getSupportedPrevIEwSizes(); List<Size> imageSizes = mCamera.getParameters().getSupportedPictureSizes(); // layout in the activity that the cameraview will placed in int layoutWIDth = frameLayout.getWIDth(); int layoutHeight = frameLayout.getHeight();
例如,在测量后的一个AndroID平板电脑中,这些是使用的3个变量的结果
作为测量结果的活动中布局vIEwGroup的大小
1280 x 736
支持的图片尺寸
320 x 240 640 x 480 1024 x 768 1280 x 720 << best size in my example to use 1280 x 768 1280 x 920 1600 x 1200 2048 x 1536 2560 x 1440 2560 x 1536 2560 x 1920 << native resolution of harDWare camera
支持的预览尺寸
176 x 144 320 x 240 352 x 288 480 x 320 480 x 368 640 x 480 800 x 480 800 x 600 864 x 480 864 x 576 960 x 540 1280 x 720 << best size in my example to use 1280 x 768 1280 x 960解决方法 大多数情况下,但并非总是如此,图片宽高比和预览宽高比之间存在对应关系.您可以放心,至少其中一些是经典的4:3比率(例如640×480).对16:9的支持也很普遍.
屏幕可能具有不同的宽高比.要正确填充相机图像,可以广泛接受添加黑色边距(在YouTube中使用相同的方法).或者,您可以裁剪相机图像以填满整个屏幕.
请注意,屏幕尺寸(在各种设备的技术规格中报告)并不总是实际可用于图像显示.例如,系统菜单和标题栏等可以占用屏幕空间的份额.某些设备上可以使用沉浸式模式,其行为取决于系统版本.您可能会期待AndroID的未来发展,例如:第二屏支持,将使游戏更加有趣.
那么,你的具体问题的答案:
是最好使用match_parent或fitXY作为FrameLayout大小,预览大小和图片大小? – 不.
两种尺寸都会有匹配吗? – 是的,但也许这个尺寸不是最佳的.
即使您的相机支持不同的“宽”图片尺寸,1280×720预览和2560×1440图片也可能是最佳匹配,两者都精确地为16:9.通常,小尺寸的图片质量并不比相同尺寸的预览好,因此如果1280×720是您真正需要的,您可以选择保存预览框.
如果您可以放弃takePicture(),您的应用将会更加敏感.
总结以上是内存溢出为你收集整理的相机在Android中,如何获得最佳尺寸,预览尺寸,图片尺寸,视图尺寸,图像扭曲全部内容,希望文章能够帮你解决相机在Android中,如何获得最佳尺寸,预览尺寸,图片尺寸,视图尺寸,图像扭曲所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)