本文实例讲述了Android编程实现摄像头临摹效果的方法。分享给大家供大家参考,具体如下:

这篇文章结合本人的开发实例,介绍如何实现摄像头临摹效果,即将摄像头拍摄的画面作为临摹的物体投射到画纸上,用户可以在画纸上继续作画,效果如图1.
主要可以分成四步,第一步在AndroidManifest.xml文件里添加对摄像机的使用许可。
<uses-permissionandroid:name="android.permission.CAMERA"/>
第二步在布局文件里使用framelayout,这样可以实现两个view叠在一起的效果,要保证两个view的大小和位置相同。
<FrameLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<SurfaceView
android:id="@+id/SurfaceView"
android:layout_width="fill_parent"
android:layout_height="fill_parent"/>
<com.example.artist.PaintView
android:id="@+id/PaintView"
android:layout_width="fill_parent"
android:layout_height="fill_parent"/>
</FrameLayout>
其中的surfaceview用来动态显示摄像机当前拍摄的画面,第三步需要打开摄像机并进行相关配置,然后开启预览。
mSurfaceView = (SurfaceView)this.findViewById(R.id.sfView);
mSurfaceHolder = mSurfaceView.getHolder();
mSurfaceHolder.addCallback(SimplePaintActivity.this);
mSurfaceHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
mCamera = Camera.open();
Camera.Parameters parameters = mCamera.getParameters();
parameters.setPictureFormat(PixelFormat.JPEG);
parameters.setPreviewSize(dm.widthPixels, dm.heightPixels);
parameters.setPictureSize(dm.widthPixels, dm.heightPixels);
mCamera.setParameters(parameters);
try {
mCamera.setPreviewDisplay(mSurfaceHolder);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
mCamera.startPreview();
第四步需要改变com.example.artist.PaintView的背景透明度,PaintView是本人自己实现的一个view,在onTouchEvent函数和onDraw函数里分别进行了触摸响应和绘画功能,是用来响应用户画画的view,设置背景半透明的语句如下。
mBkColor = Color.argb(100, 255, 255, 255); canvas.drawColor(mBkColor);
这样,摄像头临摹效果就实现了,大功告成!
更多关于Android相关内容感兴趣的读者可查看本站专题:《Android拍照与图片处理技巧总结》、《Android图形与图像处理技巧总结》、《Android开发入门与进阶教程》、《Android调试技巧与常见问题解决方法汇总》、《Android基本组件用法总结》、《Android视图View技巧总结》、《Android布局layout技巧总结》及《Android控件用法总结》
希望本文所述对大家Android程序设计有所帮助。
# Android
# 摄像头
# 临摹
# Android调用前后摄像头同时工作实例代码
# Android判断用户是否允许了摄像头权限实例代码
# Android实现手机摄像头的自动对焦
# Android开发教程之调用摄像头功能的方法详解
# Android 开发随手笔记之使用摄像头拍照
# Android实现调用摄像头
# Android中判断是否有前置摄像头、后置摄像头的方法
# android开发之调用手机的摄像头使用MediaRecorder录像并播放
# 进阶
# 相关内容
# 感兴趣
# 给大家
# 大功告成
# 可以实现
# 如图
# 这篇文章
# 用户可以
# 更多关于
# 解决方法
# 第二步
# 所述
# 图像处理
# 程序设计
# 第三步
# 进行了
# 如何实现
# 第四步
# 实现了
相关文章:
香港服务器网站测试全流程:性能评估、SEO加载与移动适配优化
青浦网站制作公司有哪些,苹果官网发货地是哪里?
外贸公司网站制作,外贸网站建设一般有哪些步骤?
如何通过.red域名打造高辨识度品牌网站?
广州商城建站系统开发成本与周期如何控制?
移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?
攀枝花网站建设,攀枝花营业执照网上怎么年审?
巅云智能建站系统:可视化拖拽+多端适配+免费模板一键生成
杭州银行网站设计制作流程,杭州银行怎么开通认证方式?
如何选择最佳自助建站系统?快速指南解析优劣
如何选择PHP开源工具快速搭建网站?
如何选择CMS系统实现快速建站与SEO优化?
高防服务器租用指南:配置选择与快速部署攻略
西安市网站制作公司,哪个相亲网站比较好?西安比较好的相亲网站?
如何用虚拟主机快速搭建网站?详细步骤解析
*服务器网站为何频现安全漏洞?
建站上传速度慢?如何优化加速网站加载效率?
建站之星在线版空间:自助建站+智能模板一键生成方案
建站之星代理商如何保障技术支持与售后服务?
昆明网站制作哪家好,昆明公租房申请网上登录入口?
建站之星上传入口如何快速找到?
宝塔建站教程:一键部署配置流程与SEO优化实战指南
linux top下的 minerd 木马清除方法
家庭服务器如何搭建个人网站?
如何在沈阳梯子盘古建站优化SEO排名与功能模块?
Android自定义listview布局实现上拉加载下拉刷新功能
建站之星如何开启自定义404页面避免用户流失?
如何在Golang中使用encoding/gob序列化对象_存储和传输数据
家庭建站与云服务器建站,如何选择更优?
如何生成腾讯云建站专用兑换码?
三星网站视频制作教程下载,三星w23网页如何全屏?
电影网站制作价格表,那些提供免费电影的网站,他们是怎么盈利的?
如何用PHP快速搭建高效网站?分步指南
如何选择香港主机高效搭建外贸独立站?
如何快速完成中国万网建站详细流程?
如何通过西部数码建站助手快速创建专业网站?
Android自定义控件实现温度旋转按钮效果
Swift开发中switch语句值绑定模式
PHP 500报错的快速解决方法
如何选择高效可靠的多用户建站源码资源?
潍坊网站制作公司有哪些,潍坊哪家招聘网站好?
长春网站建设制作公司,长春的网络公司怎么样主要是能做网站的?
成都网站制作公司哪家好,四川省职工服务网是做什么用?
如何快速生成高效建站系统源代码?
已有域名建站全流程解析:网站搭建步骤与建站工具选择
网站海报制作教学视频教程,有什么免费的高清可商用图片网站,用于海报设计?
如何零基础开发自助建站系统?完整教程解析
建站之星ASP如何实现CMS高效搭建与安全管理?
惠州网站建设制作推广,惠州市华视达文化传媒有限公司怎么样?
C++用Dijkstra(迪杰斯特拉)算法求最短路径
*请认真填写需求信息,我们会在24小时内与您取得联系。