Web 截图
html2canvas:
- 获取元素样式
- 解析样式并将元素绘制在 canvas 中 // 不能规避 SOP
rasterizeHTML:
- 利用了
的
- 外部样式转化为内联样式
- 画在 canvase 中
捕获屏幕,写到 canvas:
- navigator.mediaDevices.getUserMedia // 捕获视频,有个选择器
- ctx.drawImage(video)
扩展 API:
- browser.tabs.captureVisibleTab // 截图,没有选择器
- chrome.desktopCapture // 捕获视频,有选择器,类似 getUserMedia, Firefox 不支持
- ctx.drawWindow // 仅 Firefox 支持
WebView API:
服务端截图:
- puppeteer: page.screenshot