s

小功能之——————将当前页面导出成图片并自动下载

import domtoimage from 'dom-to-image' 
import html2camvas from 'html2canvas'

  function saveView() { // 这个框架ok,网上说这个框架清晰度不好,我试了下,感觉还够用! 2 let capture = document.querySelector('#index') as HTMLElement; // 导出内容的容器 3 if (capture) { 4 domtoimage.toPng(capture, {}).then(function (dataUrl) { 5 let a = document.createElement('a') 6 let event = new MouseEvent('click'); 7 a.href = dataUrl 8 a.setAttribute('download', `测点详情分析-${dayjs().format('YYYYMMDDhhmmhh')}.png`) 9 if(a.dispatchEvent(event)) { 10 ElMessage('视图自动保存中,请注意查收!') 11 } 12 }) 13 // html2canvas(capture, { // 这个导出框架,我用的时候某些元素会偏移,百度查阅后,有说当页面元素存在在transform,属性时,就会位置偏移。其他功能都ok 14 // logging: false, //日志开关,便于查看html2canvas的内部执行流程 15 // width: capture.clientWidth, //dom 原始宽度 16 // height: capture.clientHeight, 17 // scale:1.2, 18 // scrollY: 0, 19 // scrollX: 0, 20 // useCORS: true // 【重要】开启跨域配置 21 // }).then(canvas => { 22 // let a = document.createElement('a') 23 // let event = new MouseEvent('click'); 24 // a.href = canvas.toDataURL() 25 // a.setAttribute('download', `测点详情分析-${dayjs().format('YYYYMMDDhhmmhh')}.png`) 26 // if(a.dispatchEvent(event)) { 27 // ElMessage('视图自动保存中,请注意查收!') 28 // } 29 // }) 30 } 31 }

 

posted @ 2023-03-16 14:55  努力不搬砖的iori  阅读(80)  评论(0)    收藏  举报