移動端掃描身份證獲取獲取身份證信息。

移動端掃描身份證獲取身份證信息(前端部分)
最近作了個掃描身份證的功能主要分如下幾個步驟javascript

1:使用H5+調用手機底層相機拍照功能html

if(window.plus){
	playCamera();
}else{ 
	document.addEventListener( "plusready",playCamera(), false);
}

調用相機拍照:前端

playCamera: function(){
	var _self=Ext.getCmp("add_client_view");
   	var cmr = plus.camera.getCamera();
   	var res = cmr.supportedImageResolutions[0];
	var fmt = cmr.supportedImageFormats[0];
	cmr.captureImage( function( path ){
			_self.GetBase64Code(path);
		},
		function( error ) {
			alert( "Capture image failed: " + error.message );
		}
   );
   },

2:將獲取到的圖片轉換成base64格式的數據 html5

這裏轉換base64格式照片有2種方法:
(1): 使用H5的 FileReader 根據圖片路勁轉換成base64格式圖片;java

//將圖片轉換爲base64格式
   Img2dataURL : function(path){
   	plus.io.resolveLocalFileSystemURL(path, function(entry){
        entry.file(function(file){
        	debugger
            var reader = new plus.io.FileReader();
            reader.onload = function (e) {
            	imgBase64=e.target.result;
                console.log("****"+e.target.result);
            };
            reader.readAsDataURL(file);
        },function(e){
           Ext.toast("讀寫出現異常: " + e.message );
        })
    })
   },

  

(2):使用H5+提供的Bitmap原生圖片對象
具體方法請看這裏http://www.html5plus.org/doc/zh_cn/nativeobj.html#plus.nativeObj.Bitmap;
有詳細說明ajax

GetBase64Code:function(path){
   	var bitmap = new plus.nativeObj.Bitmap("xxx");
   	// 從本地加載Bitmap圖片將圖片轉換爲base64格式
        bitmap.load(path,function(){
            var base4=bitmap.toBase64Data();
            var datastr=base4.split(',',3);//截取掉沒用的前綴
            var imgbase64 = [];
            if(datastr.length>1)
            {
               imgbase64.push(datastr[1]);
            }else
            {
               imgbase64.push(datastr[0]);
            }
            console.log(imgbase64);
            var traceNo=Utils.genTrn();//流水號
			//而後就是發送ajax請求
        },function(e){
            console.log('加載圖片失敗:'+JSON.stringify(e));
        });
   },

  

(3)調用阿里身份證掃描信息接口;獲取身份證信息;debug

相關文章
相關標籤/搜索