您的位置:首页 > 编程语言 > PHP开发

phonegap-详解navigator.camera.getPicture

2015-11-25 18:17 681 查看

实例

如下便是一个简单的从相册获取图片的函数

function picture_getPicture(cameraOption){//获取图片
var quality=cameraOption.quality|50;//图像质量

var destinationType=cameraOption.destinationType|Camera.DestinationType.FILE_URI;//编码类型

var sourceType=cameraOption.sourceType|Camera.DestinationType.SAVEDPHOTOALBUM;//获取路径

navigator.camera.getPicture(getpicture_success, getpicture_Error,

{quality:quality, //图像质量

destinationType:destinationType,//编码类型

sourceType:sourceType//获取路径

});

}
//--------------------------成功获取图片的回调函数---------------------------------------------
function getpicture_success(imageURI) {
//----------------------------显示图片,在不同的JS环境下,显示的方式不同----------------
var app=getDefaultApp().diagramView;//找到main图纸
var vi= Utility.getVIByVIID(app,"d_photo");//找到VI
vi.setValue('image',imageURI);
//-------------------------------------------------------------------------
alert('图片设置成功');
}
//--------------------------获取图片失败的回调函数
---------------------------------------------
function getpicture_Error(message) {
alert('获取图片失败');
}
//-------------------------------------------------------------------------

Camera类

Camera类是PhoneGap照相机插件公开的一个类
使用该类可以从照相机或相册获取图片
可以使用如下方式安装照相机插件
phonegap plugin add org.apache.cordova.camera

使用navigator.camera可以返回一个Camera类的实例
用于获取图片的getPicture()便是Camera的一个方法

通过getPicture获取图片

获取图片的语法格式如下
navigator.camera.getPicture(onSuccess,onError,[cameraOptions]);

参数onSuccess是 执行成功后的回调函数
参数onError是执行失败后的回调函数
参数cameraOption可选,是一个对象,下面会详细讲述

cameraOption常用属性

{
quality:75,
destinationType:Camera.DestinationType.DATA_URL,
allowEdit:true,
encodingType:Camera.EncodingType.JPEG,
targetWidth:100,
targetHeight:100,
saveToPhotoAlbum:false
}

quality

定义保存图片的质量,取值范围为[0,100],100表示质量最高

destinationType

选择返回数据的格式,取值为三个常量之一
Camera.DestinationType.DATA_URL//表示返回图片作为base64编码
Camera.DestinationType.FILE_URI//表示返回图片作为文件URI
Camera.DestinationType.NATIVE_URI//表示返回图片作为文件URI

allowEdit:true

设置在选择图片进行操作之前是否对其进行简单的编辑(Android系统会忽略此属性)

encodingType

用于设置返回文件的类型,有一下几个常量可用
Camera.EncodingType={
JPEG:0, //表示返回JPEG编码的图片
PNG:1 //表示返回PNG编码的图片
}

targetWidth

用于定义缩放图片的宽度,以像素为单位。必须和targetHeight配合使用

targetHeight

用于定义缩放图片的高度,以像素为单位。必须和targetWidth 配合使用

saveToPhotoAlbum

用于决定是否在捕捉图片之后放入相册

图片显示

可以在成功获取图片回调函数中这样写

function onSuccess(imageURI){
var image=document.getElementById('myImage');//你必须确保你的HTML中存在ID为myImage的DOM节点
image.src=imageURI;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: