dom元素生成图片并且下载到本地

76 阅读1分钟
const base64ToArrayByte = (base64) => {
  var binaryString = window.atob(base64)
  var binaryLen = binaryString.length
  var bytes = new Uint8Array(binaryLen)
  for (var i = 0; i < binaryLen; i++) {
    var ascii = binaryString.charCodeAt(i)
    bytes[i] = ascii
  }
  return bytes
}
html2canvas(document.querySelector('#CertificatePreviewId'), { scale: 2, }).then(function (canvas) {
  let baseData = canvas.toDataURL();
  let base64 = baseData.split(',')[1]
  let buffer = base64ToArrayByte(base64)
  const blob = new Blob([buffer])
  saveAs(blob, '证书.png')
});

使用到的插件:html2canvas,file-saver;saveAs来自file-saver插件;