今天在项目中遇到一个需求是将生成的二维码和一些背景作为海报,然后将海报以图片的形式下载

使用了 html2canvas  插件

import html2canvas from "html2canvas";
<div class="tc" v-for="(item,index) in qrcodeList" :key="index">
<div :id="item.refname" class="poster " :class="item.bgimg">
<div class="poster-dir">
<div class="poster-title fontSize-3">问卷标题</div>
<img class="qrcode" :src="qrcodeimg" alt="">
<div class="poster-own">问卷工厂提供技术支持</div>
</div>
</div>
<span @click="downLoadCode(item.refname,'问卷海报')" class="konbtn mt10">下载</span>
</div>

  这是要执行的 代码片段

downloadFile(data, fileName) {
if (!data) {
return;
}
let url = window.URL.createObjectURL(data);
let link = document.createElement("a");
link.style.display = "none";
link.href = url;
link.setAttribute("download", fileName);
document.body.appendChild(link);
link.click();
},
downLoadCode(id,name){
html2canvas(document.getElementById(id),{useCORS:true,logging:true}).then(canvas => {
canvas.toBlob(blob => {
this.downloadFile(blob,name);
}, "image/png");
});
},

  如果要下载的部分有图片内容  需要 添加

{useCORS:true,logging:true} 允许跨域   否则图片的部分会是空白的

最新文章

  1. MyEclipse 2016 CI 3发布
  2. 谈谈iOS中的锁
  3. Jquery动态添加的元素绑定事件的3种方法
  4. python基础_字典_列表_元组考试_day4
  5. paip.java 线程无限wait的解决
  6. (实用篇)php无限遍历目录
  7. SharedPreferences实现自动登录记住用户名密码
  8. 常用监控SQL
  9. //@sourceURL=filename.js
  10. 关于MATLAB收集人工鼠标移动轨迹的坐标
  11. 利用反射机制设计Dao
  12. ubuntu 16.04安装perf
  13. 宝塔面板下安装zabbix
  14. Docker 容器文件导出 - 六
  15. XamarinEssentials教程移除键值首选项的键值
  16. CSS 文字概念小记
  17. css/css3常用收集/笔记
  18. WCF终结点——终结点地址(EndpointAddress)
  19. git仓库搬家
  20. HTML5 : 文件上传下载

热门文章

  1. 从零开始Blazor Server(15)--总结
  2. (已解决)Adobe Creative Cloud 安装 Acrobat PDF 报错 DW071 DW003
  3. 【Java】学习路径30-可变参数 Variable Parameter
  4. 从0到1写一款自动为Markdown标题添加序号的Jetbrains插件
  5. pod资源的健康检查-readiness探针的httpGet使用
  6. 小样本利器3. 半监督最小熵正则 MinEnt &amp; PseudoLabel代码实现
  7. [WPF] 使用 HandyControl 的 CirclePanel 画出表盘刻度
  8. 综合布线 子网掩码 IP地址 子网划分
  9. Windows平台RTMP/RTSP播放器实现实时音量调节
  10. MySQL 不同隔离级别,都使用了什么锁?