rasterizeHTML.js的使用

2,251 阅读1分钟

浏览器截图除了用html2canvas以外,还有一种截图方式,利用svg绘制到canvas画布上,从而利用canvas的api实现图片截取,这里利用了rasterizeHTML.js库

第一步:install

$ npm install rasterizehtml

第二步: 引用

import * as rasterizeHTML from 'rasterizehtml'

第三步:使用前先在页面上创建一个canvas的dom元素,设置好宽高

const canvas = document.getElementById('canvas')
const ele = document.getElementById('game-stage')
rasterizeHTML.drawHTML(ele.innerHTML, canvas).then(() => {
    // TODO
})

相比html2canvas,利用svg截图的优势是支持box-shadow 属性,和一些dom元素之间的计算

参考: blog.csdn.net/xuanhun521/…