Android中怎么利用SurfaceView显示Camera图像

今天就跟大家聊聊有关Android中怎么利用SurfaceView显示Camera图像,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

创新互联建站是专业的兴和网站建设公司,兴和接单;提供网站设计、成都网站建设,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行兴和网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!

全屏方式    

这里就先直接说出结果,想要全屏显示就是两句,直接在canvas中画图的时候画了一个目标框形的大小即可。

Android中怎么利用SurfaceView显示Camera图像

 RectF rectF=new RectF(0, 0, canvas.getWidth(), canvas.getHeight()); canvas.drawBitmap(cacheBitmap, null, rectF, null);

心路历程

直接想要实现上面结果的可以不用接着看这个,这里主要是我记录一下实现的过程,浪费了一个多小时吧。

最初觉得全屏显示的话,那我直接获取屏幕的宽度和高度,在生成图片的方法里面把图片的宽高重新定义一下就行了,然后我就先在定义了屏幕宽高的两个参数

Android中怎么利用SurfaceView显示Camera图像

接着在构造函数中加入获取屏幕宽高的方法

Android中怎么利用SurfaceView显示Camera图像

生成图片的nv21ToBitmap的方法参数中我们传入了canvas的宽和高

Android中怎么利用SurfaceView显示Camera图像

然后运行的结果直接就变下面这样了

Android中怎么利用SurfaceView显示Camera图像

从我们输出的日志看,PreviewSize的宽和高与canvas的宽和高前后不对,如下图

Android中怎么利用SurfaceView显示Camera图像

所以我就又宽高的输出倒过来试了一下,结果还是一样的,所以这个方法放弃。


后来在网上又找各种资料,大部分说的都是设置setPreviewSize的方法,如图

Android中怎么利用SurfaceView显示Camera图像

还有下面的

Android中怎么利用SurfaceView显示Camera图像

Android中怎么利用SurfaceView显示Camera图像

还有想到这个了

Android中怎么利用SurfaceView显示Camera图像

试了好几种,基本不是打开Camera后直接白屏了,就是这个缩放的比例也是奇怪,无全不是我想要的结果,一度无语中。

最后我就在想,即然我的图片已经生成好了,那是不是画的时候照的画布大小画就可以了,开始的思路应该是不对的,于是又各种查找,终于找到一个文章,如下

Android中怎么利用SurfaceView显示Camera图像

看完上述内容,你们对Android中怎么利用SurfaceView显示Camera图像有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注创新互联行业资讯频道,感谢大家的支持。

当前题目:Android中怎么利用SurfaceView显示Camera图像
转载源于:https://www.cdcxhl.com/article8/jcggop.html

成都网站建设公司_创新互联,为您提供微信公众号网站建设全网营销推广用户体验外贸建站微信小程序

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

外贸网站制作