1 /*照片1*/ 2 var scene_pics_map = {}; 3 /*照片2*/ 4 var car_chekc_pics_map = {}; 5 /* 图片预览 */ 6 function imgPreview(obj, type) { 7 console.log(1); 8 $.showPreloader(); 9 var file = obj.files[0]; 10 11 console.log(obj); 12 console.log(file); 13 console.log("file.size = " + file.size); // file.size 单位为byte 14 15 var reader = new FileReader(); 16 17 // 读取文件过程方法 18 reader.onloadstart = function(e) { 19 console.log("开始读取...."); 20 } 21 reader.onprogress = function(e) { 22 console.log("正在读取中...."); 23 } 24 reader.onabort = function(e) { 25 console.log("中断读取...."); 26 } 27 reader.onerror = function(e) { 28 console.log("读取异常...."); 29 } 30 reader.onload = function(e) { 31 console.log("成功读取...."); 32 33 var img = document.getElementById("xmTanImg"); 34 img.src = e.target.result; 35 36 var img_tmp = document.createElement('img'); 37 // 将文件和文件扩展名拼接 38 img.onload = function(){ 39 /*按比例进行压缩,文件大于1m小于2m的,压缩一半;大于2m小于3m的,压缩为三分之一;以此类推*/ 40 var scale_ = Math.ceil(file.size/(1024*1024)); 41 var base64File = cutDowmImg2(img, scale_); 42 img_tmp.src = base64File; 43 44 // 或者 img.src = this.result; //e.target == this 45 var uuid = get_uuid(0, 16); 46 47 $.hidePreloader(); 48 var html_str = ''; 49 if(type=='scene'){ 59 var tmp_ = { 60 'img' : img_tmp.src 61 } 62 63 scene_pics_map[uuid] = tmp_; 64 var scene_pics = JSON.parse($('#scene_pics').val()); 65 scene_pics.push(img_tmp.src); 66 $('#scene_pics').val(JSON.stringify(scene_pics)); 67 delete tmp_; 68 }else if(type=='carcheck') { 69 var typeID = $(obj).attr('typeid'); 80 var tmp_ = { 81 'img' : img_tmp.src, 82 'inspectTypeID' : typeID 83 } 84 car_chekc_pics_map[uuid] = tmp_; 85 var carcheck_detail = JSON.parse($('#carcheck_detail').val()); 86 carcheck_detail.push({PicPath:img_tmp.src,InspectTypeID:typeID}); 87 $('#carcheck_detail').val(JSON.stringify(carcheck_detail)); 88 delete tmp_; 89 }else{ 90 $.alert('falied'); 91 } 92 } 93 } 94 95 reader.readAsDataURL(file) 96 console.log(scene_pics_map); 97 console.log(car_chekc_pics_map); 98 } 99 // 压缩图片的方法:按最小宽度压缩 100 function cutDowmImg(img, width){ 101 var canvas = document.createElement("canvas"); 102 $.toast('图片压缩中...'+(img.width)+' :'+width, 2000, 'took'); 103 canvas.width = Math.min(img.width, width); 104 canvas.height = img.height * (width / img.width); 105 var cxt = canvas.getContext("2d"); 106 cxt.drawImage(img, 0, 0, canvas.width, canvas.height); 107 return canvas.toDataURL(); 108 } 109 // 压缩图片的方法:按比例压缩 110 function cutDowmImg2(img, scal){ 111 var canvas = document.createElement("canvas"); 112 $.toast('图片压缩中...1/'+scal, 2000, 'took'); 113 canvas.width = img.width/scal; 114 canvas.height = img.height/scal; 115 var cxt = canvas.getContext("2d"); 116 cxt.drawImage(img, 0, 0, canvas.width, canvas.height); 117 return canvas.toDataURL(); 118 }