vue利用html2canvas将HTML导出为图片
项目控制台执行命令安装 html2canvas
npm install html2canvas --save
安装完成之后直接引入就可以用了
import html2canvas from 'html2canvas'
/*
* element 导出的元素
* filename 文件名
* ext 扩展文件名
*/
export function ExportImg(element, filename, ext) {
html2canvas(element, {
useCORS: true
}).then((canvas) => {
if (navigator.msSaveBlob) {
const blob = canvas.msToBlob() // IE10+
return navigator.msSaveBlob(blob, name)
} else {
const imageurl = canvas.toDataURL('image/png')
const aLink = document.createElement('a') // 创建a标签
aLink.style.display = 'none'
aLink.href = imageurl
aLink.download = `${filename}.${ext}` // 下载文件名
document.body.appendChild(aLink)
aLink.click()
document.body.removeChild(aLink) // 用完后移除元素
}
})
}
使用=>HTML部分
<div ref="ExportDiv">导出内容</div>
使用=>JS部分
import { ExportImg } from '@/vendor/Export2Image'
ExportImg() { // 导出图片
ExportImg(this.$refs.ExportDiv, `导出示例`, 'png')
}
官网地址: html2canvas官网地址
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通