/**
 * 相机模块提供了移动设备相机接口的调用,开发者可使用该模块进行相机操作的调用,应用场景包括:
 * <ul>
 *     <li>拍照/录像</li>
 *     <li>调用相册</li>
 * </ul>
 *      <strong>
 *          页面需要导入的文件
 *          <ul>
 *              <li>cmp-camera.js</li>
 *          </ul>
 *      </strong>
 * @module Camera
 * @subtitle 相机模块
 */

/**
 * 照相机
 * <br>包含了拍照获取图片/视频功能、调用相册获取图片功能
 * <br>根据开发者不同需求,可返回的图像数据有1、base64格式字符串;2、图像文件路径;3、本地图像路径;4、file控件的二进制的数据
 * @namespace cmp
 * @class camera
 */


/**
 * 获取图像方法,开发者可通过配置获取自己想要的图像文件数据
 * @method getPictures
 * @namespace cmp.camera
 * @param {Object} [options] 获取图像配置参数对象
 *      @param {Boolean} [options.compress] 是否返回压缩后的图片,true:返回缩略图,false:返回原图
 *      @param {Number} [options.quality] 摄像头品质参数(范围0~100,默认100)
 *      @param {Number} [options.targetWidth] 生成的图像宽度
 *      @param {Number} [options.targetHeight] 生成的图像高度
 *      @param {Boolean} [options.saveToPhotoAlbum] 是否将图像保存到相册
 *      @param {Number} [options.destinationType] 返回的图像数据类型:<br>
 *                                                           <ul>
 *                                                               <li>0:base64格式(默认)</li>
 *                                                               <li>1:图像文件路径</li>
 *                                                               <li>2:本地图片路径</li>
 *                                                           </ul>
 *                                                           <br><span style="color:red;">注:M1平台返回图片路径+base64,纯H5平台只返回base64</span>
 *     @param {Number} [options.sourceType] 获取图像文件的方式:<br>
 *                                                      <ul>
 *                                                          <li>0:图片库</li>
 *                                                          <li>1:摄像头(默认)</li>
 *                                                          <li>2:相册</li>
 *                                                      </ul>
 *    @param {Number} [options.encodingType] 图像编码类型:<br>
 *                                                  <ul>
 *                                                      <li>0:jpeg(默认)</li>
 *                                                      <li>1:png</li>
 *                                                  </ul>
 *    @param {Number} [options.pictureNum] 选择图片的数量:默认数量:9;<br ><span style="color:red;">注:在M1平台下不支持多选</span>
 *
 *    @param {Function} [options.success] 执行成功后的回调函数
 *    @param {Function} [options.error] 执行失败后的回调函数
 *    @returns {Object} result 返回值:<br>
 *        <ul>
 *            <li>result.success:成功与否标识,true:成功;false:失败</li>
 *            <li>result.files:返回的图片数据(数组)
 *                  <ul>
 *                      <li>base64:图片的base64字符串(压缩后的,一般作为缩略图展示)</li>
 *                      <li>filepath:图片的原图路径<span style="color:red;">注:纯H5平台下该值不返回</span></li>
 *                      <li>fileSize:图片的原图大小(单位:byte)</li>
 *                      <li>type:图片的类型</li>
 *                      <li>fileData:如果是微信端选图片,返回图片的二进制数据</li>
 *                  </ul>
 *            </li>
 *        </ul>
 * @example
 * ```
 * 文件导入路径:
 * 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>
 * ```
 */

/**
 * 将base64数据转换成可以上传的二进制数据,主要用于调用微信上传附件时所需要的二进制数据
 * @method base64ToFileData
 * @namespace cmp.camera
 * @param {String} base64Data base64字符串
 * @example
 * ```
 * <script>
 *     var fileData = cmp.camera.base64ToFileData("data:image/jpeg;base64,iVBORw0KGgoAAAANSU.....");
 * </script>
 * ```
 */





    
Top