js 图片转base64

 

const main = (src: string, cb?: Function) => {
  let image = new Image();
  image.src = src + '&v=' + Math.random(); // 处理缓存
  image.crossOrigin = "*";  // 支持跨域图片
  image.onload = function(){
    let base64 = getBase64Image(image);
    cb && cb(base64);
  }
};

const getBase64Image = (img: any) => {
  let canvas = document.createElement("canvas");
  canvas.width = img.width;
  canvas.height = img.height;
  let ctx: any = canvas.getContext("2d");
  ctx.drawImage(img, 0, 0, img.width, img.height);
  let dataURL = canvas.toDataURL("image/png");  // 可选其他值 image/jpeg
  return dataURL;
};

//地址为测试
main('https://www.xxx.png', (base64) => console.log(base64))

 

posted @ 2022-08-25 10:30  本溢  阅读(1436)  评论(0)    收藏  举报