科尔多瓦 - 相机


该插件用于拍照或使用图片库中的文件。

第 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); 
   } 
}

当我们运行应用程序并按下按钮时,本机相机将被触发。

科尔多瓦相机拍照

当我们拍摄并保存照片时,它会显示在屏幕上。

Cordova 相机显示图像

可以使用相同的过程从本地文件系统获取图像。唯一的区别是最后一步中创建的函数。可以看到添加了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);
   }

}

当我们按下第二个按钮时,文件系统将打开而不是相机,因此我们可以选择要显示的图像。

Cordova 相机文件系统

该插件提供了许多用于定制的可选参数。

序列号 参数及详情
1

质量

图像质量,范围为 0-100。默认值为 50。

2

目的地类型

DATA_URL0返回 base64 编码的字符串。

FILE_URI1返回图像文件 URI。

NATIVE_URI2返回图像本机 URI。

3

源类型

PHOTOLIBRARY0打开照片库。

CAMERA1打开本机相机。

SAVEDPHOTOALBUM2打开保存的相册。

4

允许编辑

允许图像编辑。

5

编码类型

JPEG0返回 JPEG 编码图像。

PNG1返回 PNG 编码的图像。

6

目标宽度

图像缩放宽度(以像素为单位)。

7

目标高度

图像缩放高度(以像素为单位)。

8

媒体类型

PICTURE0仅允许选择图片。

VIDEO1仅允许选择视频。

ALLMEDIA2允许选择所有媒体类型。

9

正确方向

用于校正图像的方向。

10

保存到相册

用于将图像保存到相册中。

11

弹出选项

用于在 IOS 上设置弹出窗口位置。

12

相机方向

FRONT0前置摄像头。

BACK1 个后置摄像头。

全媒体