我只想从库html2canvas.js中获取视口屏幕截图,将选项类型设置为"视图"应该可以解决问题,但我仍然得到整个正文。
真的不明白为什么这实际上不起作用。
这是我当前正在运行的代码:
html2canvas(document.body, { type: 'view' }).then(function(canvas) {
var img = canvas.toDataURL("image/png");
$('.ticket-img').attr('src', img);
});
没有{ type: 'view' }
这样的选项。 如果您尝试仅捕获用户可见的内容,则没有确切的设置。
我可能会说您需要在截取屏幕截图后处理输出。 因此,截取屏幕截图,然后使用窗口滚动X/scrollY和窗口宽度/高度来裁剪生成的画布。
类似的东西
function clip( srcCanvas, x, y, width, height ) {
var destCanvas = document.createElement("canvas");
var destCtx = destCanvas.getContext("2d");
destCanvas.width = width;
destCanvas.height = height;
destCtx.drawImage( srcCanvas.getImageData(x,y,width,height), 0, 0 );
return destCanvas;
}