您的位置:首页 > 其它

ionic添加调取摄像头插件--cordova-plugin-camera

2017-05-26 09:30 453 查看
首先,引入cordova和ng-cordova的js:

<script src="js/ng-cordova.js"></script>
<script src="cordova.js"></script>


第二步:在模块内加上ngCordova:

angular.module('starter.controllers', ['ionic', 'ionic-img-lazy-load', 'ionicLazyLoad','ngCordova'])


第三步:在控制器内加上依赖:

.controller('AccountCtrl',function($scope,dataInfo,$cordovaCamera) {})


完整代码:

html:

<button class="button button-bar" ng-click="takePic()">点击我试着打开照相机</button>
<img id="myImage" alt=""/>     <!-- 这里是放你拍照返回的照片 -->


js:

//调用相机插件
$scope.takePic=function(){
var options = {
//这些参数可能要配合使用,如选择了sourcetype是0,destinationtype要相应的设置为1:【返回文件的URI(content://media/external/images/media/2 for Android)】
quality: 50,                                            //相片质量0-100
destinationType: Camera.DestinationType.FILE_URI,       //返回类型:DATA_URL= 0,返回作为 base64 編碼字串。 FILE_URI=1,返回影像档的 URI。NATIVE_URI=2,返回图像本机URI
sourceType: Camera.PictureSourceType.CAMERA,            //从哪里选择图片:PHOTOLIBRARY=0(从设备相册选择图片),相机拍照=1,SAVEDPHOTOALBUM=2,0和1其实都是本地图库
allowEdit: true,                                        //在选择之前允许修改截图
encodingType:Camera.EncodingType.JPEG,                  //保存的图片格式: JPEG = 0, PNG = 1
targetWidth: 200,                                     //照片宽度
targetHeight: 200,                                    //照片高度
mediaType:0,                                            //可选媒体类型:圖片=0,默认值,只允许选择图片將返回指定DestinationType的参数。 視頻格式=1,允许选择视频,最终返回 FILE_URI(网址)。ALLMEDIA= 2,允许所有媒体类型的选择。
cameraDirection:0,                                      //选择摄像头类型(前置摄像头或者后面的摄像头):Back= 0(后置),Front-facing = 1(前置)
popoverOptions: CameraPopoverOptions,                   //CameraPopoverOptions,iOS特供,从iPad的系统相册选择图片,指定popover的定位元素的位置箭头方向和参数
saveToPhotoAlbum: true                                  //保存进手机相册
};

$cordovaCamera.getPicture(options).then(function(imageData) {//alert(imageData);
var image = document.getElementById('myImage');
image.src=imageData;
}, function(err) {
alert("err的值:"+err)
});
};


注:上面代码会出现一个问题,就是拍摄的照片成像效果很差,不想要这种效果的话,建议不设置targetWidth和targetHeight(照片的宽高),在css里面去设置这个img标签的样式,例如:

#myImage{
width: 100%;
height: 100%;
max-width: 600px;
}


附上这个插件文档的中英文说明供参考:

cordova-plugin-camera 插件说明文档

中文文档

英文文档
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  插件 cordova ionic