我正在使用html2canvas捕获屏幕,并且可以正常工作。但是,捕获具有滚动条的大页面时,我会遇到裁剪问题。我检查了画布的大小,它在文档概述的限制之内。这是我在控制台中看到的内容:
html2canvas: Canvas renderer initialized (1024x1934 at 0,0) with scale 1
因此它应该已经捕获了所有页面,但是正在对其进行裁剪。将窗口向下移动至1024px时,浏览器中的实际高度为2870px。我应该说,当我截图时,我的窗口比1024px大得多,但是html2canvas将该窗口设置为1024px来截图。这可能是一个缺陷。我正在使用最新版本的canvas 1.0.0-alpha.12。
以下是我要设置的选项:
let canvasOptions = {
useCORS: true,
width: 1024,
windowWidth: 1024,
ignoreElements: (elem) => {
// ignore modal backdrops
return elem.className.indexOf('modal-backdrop') >= 0;
}
};
我该如何解决?
更新:如果我手动设置窗口以匹配我传入的宽度,我认为它可以工作并捕获全屏。但是,如果我使用默认大小的窗口捕获图像,那么它将不起作用,并在更改尺寸之前使用接近窗口高度的图像。