美文网首页
html 导出为 image

html 导出为 image

作者: wlianfu | 来源:发表于2019-12-02 14:41 被阅读0次

第一种方法

const base64ToBlob = (content: any) => {
    let parts = content.split(';base64,');
    let contentType = parts[0].split(':')[1];
    let raw = window.atob(parts[1]);
    let rawLength = raw.length;

    let uInt8Array = new Uint8Array(rawLength);
    for(let i = 0; i < rawLength; ++i) {
      uInt8Array[i] = raw.charCodeAt(i);
    }
    return new Blob([uInt8Array], { type: contentType });
  }

const downloadFile = (filename: string, content: any) => {
    let link = document.createElement('a');
    let blob = base64ToBlob(content);
    link.download = filename;
    link.href = URL.createObjectURL(blob);
    link.click();
  }

  const saveAsCanvas = () => {
    html2canvas(document.body).then(function(canvas) {
      let img = canvas.toDataURL('image/jpeg');
      let filename = `Image${new Date().getTime()}.jpeg`;
      downloadFile(filename, img);
    });
  }

第二种方法

// 需要引入一个插件
import domtoimage from 'dom-to-image';

const saveAsImage = () => {
    let node = document.body;
    domtoimage.toJpeg(node, { quality: 1.0 }).then(dataUrl => {
      let link = document.createElement('a');
      link.download = 'test99.jpeg';
      link.href = dataUrl;
      link.click();
    });
  }

相关文章

网友评论

      本文标题:html 导出为 image

      本文链接:https://www.haomeiwen.com/subject/rgxfgctx.html