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官网地址

 

posted @   .jx  阅读(444)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示