html2canvas截图踩坑

1,647 阅读1分钟

大致思路

html ——> canvas ——> image ——> url

  1. html2canvas.js:可将 htmldom 转为 canvas 元素。传送门
  2. canvasAPI:toDataUrl() 可将 canvas 转为 base64 格式
  3. base64转成file,通过upload接口生成url

踩坑

1  截图不全

会因为设置了scale()缩放方法导致截图不全。

解决方法:截图时,将图片缩放设置为1


2 线上图片无法截图

html2canvas(newNode, {          
useCORS: true        
})  // 开启跨域


图片服务器nginx配置

location / {
 add_header Access-Control-Allow-Origin *;

     } 


缺一不可