- 科尔多瓦教程
- 科尔多瓦 - 主页
- 科尔多瓦 - 概述
- 科尔多瓦 - 环境设置
- 科尔多瓦 - 第一次申请
- Cordova - Config.xml 文件
- 科尔多瓦 - 存储
- 科尔多瓦 - 活动
- 科尔多瓦 - 后退按钮
- 科尔多瓦 - 普拉格曼
- Cordova - 电池状态
- 科尔多瓦 - 相机
- 科尔多瓦 - 联系方式
- 科尔多瓦 - 设备
- Cordova - 加速度计
- Cordova - 设备方向
- 科尔多瓦 - 对话
- 科尔多瓦 - 文件系统
- 科尔多瓦 - 文件传输
- 科尔多瓦 - 地理定位
- 科尔多瓦 - 全球化
- Cordova - InAppBrowser
- 科尔多瓦 - 媒体
- Cordova - 媒体捕获
- 科尔多瓦 - 网络信息
- 科尔多瓦 - 启动画面
- 科尔多瓦 - 振动
- 科尔多瓦 - 白名单
- 科尔多瓦 - 最佳实践
- 科尔多瓦有用资源
- 科尔多瓦 - 快速指南
- 科尔多瓦 - 有用的资源
- 科尔多瓦 - 讨论
科尔多瓦 - 相机
该插件用于拍照或使用图片库中的文件。
第 1 步 - 安装相机插件
在命令提示符窗口中运行以下代码来安装此插件。
C:\Users\username\Desktop\CordovaProject>cordova plugin add cordova-plugincamera
第 2 步 - 添加按钮和图像
现在,我们将创建用于调用相机和img 的按钮,拍摄后将在其中显示图像。这将被添加到div class = "app"元素内的index.html中。
<button id = "cameraTakePicture">TAKE PICTURE</button> <img id = "myImage"></img>
第 3 步 - 添加事件监听器
事件侦听器添加到onDeviceReady函数内,以确保 Cordova 在我们开始使用之前已加载。
document.getElementById("cameraTakePicture").addEventListener ("click", cameraTakePicture);
步骤 4 - 添加功能(拍照)
我们将创建cameraTakePicture函数,该函数作为回调传递给我们的事件侦听器。当点击按钮时它将被触发。在此函数内,我们将调用插件 API 提供的navigator.camera全局对象。如果拍照成功,则将数据发送到onSuccess回调函数,如果拍照失败,则会显示带有错误消息的警报。我们将把这段代码放在index.js的底部。
function cameraTakePicture() { navigator.camera.getPicture(onSuccess, onFail, { quality: 50, destinationType: Camera.DestinationType.DATA_URL }); function onSuccess(imageData) { var image = document.getElementById('myImage'); image.src = "data:image/jpeg;base64," + imageData; } function onFail(message) { alert('Failed because: ' + message); } }
当我们运行应用程序并按下按钮时,本机相机将被触发。
当我们拍摄并保存照片时,它会显示在屏幕上。
可以使用相同的过程从本地文件系统获取图像。唯一的区别是最后一步中创建的函数。可以看到添加了sourceType可选参数。
步骤1B
C:\Users\username\Desktop\CordovaProject>cordova plugin add cordova-plugincamera
步骤2B
<button id = "cameraGetPicture">GET PICTURE</button>
步骤3B
document.getElementById("cameraGetPicture").addEventListener("click", cameraGetPicture);
步骤4B
function cameraGetPicture() { navigator.camera.getPicture(onSuccess, onFail, { quality: 50, destinationType: Camera.DestinationType.DATA_URL, sourceType: Camera.PictureSourceType.PHOTOLIBRARY }); function onSuccess(imageURL) { var image = document.getElementById('myImage'); image.src = imageURL; } function onFail(message) { alert('Failed because: ' + message); } }
当我们按下第二个按钮时,文件系统将打开而不是相机,因此我们可以选择要显示的图像。
该插件提供了许多用于定制的可选参数。
序列号 | 参数及详情 |
---|---|
1 | 质量 图像质量,范围为 0-100。默认值为 50。 |
2 | 目的地类型 DATA_URL或0返回 base64 编码的字符串。 FILE_URI或1返回图像文件 URI。 NATIVE_URI或2返回图像本机 URI。 |
3 | 源类型 PHOTOLIBRARY或0打开照片库。 CAMERA或1打开本机相机。 SAVEDPHOTOALBUM或2打开保存的相册。 |
4 | 允许编辑 允许图像编辑。 |
5 | 编码类型 JPEG或0返回 JPEG 编码图像。 PNG或1返回 PNG 编码的图像。 |
6 | 目标宽度 图像缩放宽度(以像素为单位)。 |
7 | 目标高度 图像缩放高度(以像素为单位)。 |
8 | 媒体类型 PICTURE或0仅允许选择图片。 VIDEO或1仅允许选择视频。 ALLMEDIA或2允许选择所有媒体类型。 |
9 | 正确方向 用于校正图像的方向。 |
10 | 保存到相册 用于将图像保存到相册中。 |
11 | 弹出选项 用于在 IOS 上设置弹出窗口位置。 |
12 | 相机方向 FRONT或0前置摄像头。 BACK或1 个后置摄像头。 全媒体 |