前端如何把HTML转成图片再下载

需求:后端给了几张图片,让你自己重新组装成html,然后下载到本地,如何实现这一需求?

咱们要用到一个插件html2canvas

大致思路 就是,先把HTML转成canvas,再转成图片,进行下载

1. 官网

2. 下载html2canvas

复制代码
npm install --save html2canvas

3. 使用

复制代码
html2canvas(el).then(function(canvas) {
    document.body.appendChild(canvas);
});

el 是你需要转成图片的根元素

4. 转成图片下载

复制代码
 html2canvas(document.getElementById("capture"), {
      useCORS: true,
      allowTaint: false,
    }).then(function (canvas) {
      let data_base64 = canvas.toDataURL("image/png");
      let blobVal = methodsMap.data_to_blob(data_base64); // 转换为 blob
      let name = "我的名片.png";
      if (window.navigator.msSaveOrOpenBlob) {
        navigator.msSaveBlob(blobVal, name);
      } else {
        var link = document.createElement("a");
        link.setAttribute("href", window.URL.createObjectURL(blobVal));
        link.setAttribute("download", name + ".png");
        document.body.appendChild(link);
        link.click();
   
      }
    });
···
相关推荐
提笔了无痕4 分钟前
Web中Token验证如何实现(go语言)
前端·go·json·restful
戌中横12 分钟前
JavaScript——Web APIs DOM
前端·javascript·html
Beginner x_u22 分钟前
如何解释JavaScript 中 this 的值?
开发语言·前端·javascript·this 指针
HWL56791 小时前
获取网页首屏加载时间
前端·javascript·vue.js
烟锁池塘柳01 小时前
【已解决】Google Chrome 浏览器报错 STATUS_ACCESS_VIOLATION 的解决方案
前端·chrome
速易达网络1 小时前
基于RuoYi-Vue 框架美妆系统
前端·javascript·vue.js
LYS_06182 小时前
RM赛事C型板九轴IMU解算(4)(卡尔曼滤波)
c语言·开发语言·前端·卡尔曼滤波
We་ct2 小时前
LeetCode 151. 反转字符串中的单词:两种解法深度剖析
前端·算法·leetcode·typescript
yinmaisoft3 小时前
JNPF 表单模板实操:高效复用表单设计指南
前端·javascript·html
37方寸3 小时前
前端基础知识(JavaScript)
开发语言·前端·javascript