cmp.camera 类
照相机
包含了拍照获取图片/视频功能、调用相册获取图片功能
根据开发者不同需求,可返回的图像数据有1、base64格式字符串;2、图像文件路径;3、本地图像路径;4、file控件的二进制的数据
方法
base64ToFileData
base64ToFileData
(
-
base64Data
)
将base64数据转换成可以上传的二进制数据,主要用于调用微信上传附件时所需要的二进制数据
参数:
名称 | 类型 | 标识 | 描述 |
---|---|---|---|
base64Data
| String | 必选 | base64字符串 |
示例:
<script>
var fileData = cmp.camera.base64ToFileData("data:image/jpeg;base64,iVBORw0KGgoAAAANSU.....");
</script>
getPictures
getPictures
(
-
[options]
)
Object
获取图像方法,开发者可通过配置获取自己想要的图像文件数据
参数:
名称 | 类型 | 标识 | 描述 | ||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
[options] |
Object | 可选 | 获取图像配置参数对象
|
返回值:
[Object]
result 返回值:
- result.success:成功与否标识,true:成功;false:失败
- result.files:返回的图片数据(数组)
- base64:图片的base64字符串(压缩后的,一般作为缩略图展示)
- filepath:图片的原图路径注:纯H5平台下该值不返回
- fileSize:图片的原图大小(单位:byte)
- type:图片的类型
- fileData:如果是微信端选图片,返回图片的二进制数据
示例:
文件导入路径:
M3App端
<script src="http://cmp/v1.0.0/js/cordova/__CMPSHELL_PLATFORM__/cordova.js"></script>
<script src="http://cmp/v1.0.0/js/cordova/cordova-plugins.js"></script>
<script src="http://cmp/v/js/cmp.js"></script>
<script src="http://cmp/v/js/cmp-camera.js"></script>
===========================================================================================
微协同端:6.1sp2版本以下的版本不支持微协同
<script src="/seeyon/m3/cmp/js/cmp.js"></script>
<script src="/seeyon/m3/cmp/js/cmp-camera.js"></script>
=========================================================================================
调用组件
<script>
cmp.camera.getPictures({
compress:true,
quality:100,
targetWidth:-1,
targetHeight:-1,
saveToPhotoAlbum:false,
destinationType:1,
sourceType:1,
encodingType:0,
success:function(cameraResult){
//返回的数据格式如下:
cameraResult = {
success:true,
files:[{ /真实的图片数组
base64:'data:image/jpg;base64,iVBORw',//图片的base64字符串
filepath:"/storage/emulated/0/Tencent/QQfile_recv/QQDataLineGuidePic.png", //图片在手机端的路径
fileSize:"1024", //图片大小
type:"png",
index:1~9,//选择图片的顺序,ios iphone6无法确定选择的顺序
fileData:file//微信端选中的图片的二进制数据(如果是M3壳,不会返回此数据)
}]
};
},
error:function(){
//do something
}
});
</script>