妙网科技 妙网科技 首页 妙网科技 网站开发 妙网科技 js 将远程跨域图片连接转换成base64格式 亲测可用

js 将远程跨域图片连接转换成base64格式 亲测可用

所属栏目: 网站开发 | 更新时间:2017-3-26 | 阅读:10860 次

网上找了很多方法,要么说JS不能转,要么就是转换不了,以下是找到的完美的解决方法,

function convertImgToBase64(url, callback, outputFormat){

  var canvas = document.createElement('CANVAS'),
    ctx = canvas.getContext('2d'),
    img = new Image;
  img.crossOrigin = 'Anonymous';
  img.onload = function(){
    canvas.height = img.height;
    canvas.width = img.width;
    ctx.drawImage(img,0,0);
    var dataURL = canvas.toDataURL(outputFormat || 'image/png');
    callback.call(this, dataURL);
    canvas = null;
  };
  img.src = url;
}
 
convertImgToBase64('http://bit.ly/18g0VNp', function(base64Img){

  // Base64DataURL

    alert(basearr[1]);

});

评论:

游客
2018-01-02 15:50
手机微信不能用
妙网小编
2018-01-02 15:51
@游客:手机上没试过
游客
2018-01-02 16:01
@妙网小编:PC端google和手机端uc浏览器都可以用,但是微信内置浏览器报错。

是不是crossOrigin兼容性问题?还是微信本身做了限制