页面局部生成图片下载

业务需求:需要将UI设计图结合后台数据拼成所需要的图片并实现下载功能。

 

本文所用插件:html2canvas

git地址:https://github.com/niklasvh/html2canvas

用法:

下载依赖:yarn add html2canvas -d

复制代码
html:
      <div id="dom-id">
        <img> // UI设计图
         <span/>后台数据</span>
      </div>

js:
import html2canvas from 'html2canvas' /** * 生成图片 */ makeImages() { let card = document.getElementById('dom-id') // 获取需要生成图片的dom父节点 html2canvas(card).then(function(canvas) { let img = new Image(); img = canvas.toDataURL('image/png'); var d = document.createElement("a"); d.download = pngName.png; d.href = img; d.click(); d.remove(); }); },
复制代码

ps)坑:下载图片包含的本地图片若作为背景图会出现多余样式,比如多一条线,作为img并用z-index调整组件堆叠优先级,(position属性要设置一致z-index才会生效)样式正常。

posted @   小流浪cc  阅读(19)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」
点击右上角即可分享
微信分享提示