为什么80%的码农都做不了架构师?>>>
环境:https://res.wx.qq.com/open/js/jweixin-1.2.0.js 如果采用1.0.0版本的sdk则该功能在安卓下会提示画布污染,图片跨域等现象
var isAndroid = navigator.userAgent.match(/\(.*\)/)[0].indexOf("Android")>-1;
var sub = function(d){
var base = isAndroid ? d : (d.substr(d.indexOf("base64,")+7));//ios与安卓返回的不一样
}
var compress = function(source_img_obj, quality,callback, output_format){
var mime_type = "image/jpeg";
if(output_format!=undefined && output_format=="png"){
mime_type = "image/png";
}
source_img_obj.onload = function(e){
var cvs = document.createElement('canvas');
var ctx = cvs.getContext("2d");
let w = source_img_obj.naturalWidth/5;
let h = source_img_obj.naturalHeight/5;
cvs.width = w;
cvs.height = h;
try{
ctx.drawImage(source_img_obj, 0, 0, w, h);/*图片压缩*/
var newImageData = cvs.toDataURL(mime_type, 1.0);
sub(newImageData);
}catch(e){
/*兼容 WKWebview 和安卓*/
wx.getLocalImgData({
localId: source_img_obj.src,
success: function (res) {
sub(res.localData)
}
});
}
}
}
wx.config({
appId: d.appId,
timestamp: d.timestamp,
nonceStr: d.nonceStr,
signature: d.signature,
jsApiList: ['chooseImage','getLocalImgData']
});
wx.ready(function(){
$("#activeListImg").on("click","#mang",function(e){
wx.chooseImage({
count: 1, // 默认9
sizeType: ['compressed'],
sourceType: ['camera'], // 可以指定来源是相册还是相机,默认二者都有
success: function (res) {
var localIds = res.localIds;
document.getElementById("imgCompress").src = localIds;
compress(document.getElementById("imgCompress"));
}
});
e.preventDefault();
})
});
wx.error(function(){
confirm(123);
})