gpt4 book ai didi

javascript - 如何在 CurrentWindow 中捕获整个 WebContent

转载 作者:数据小太阳 更新时间:2023-10-29 04:19:04 26 4
gpt4 key购买 nike

我在一个窗口中有一个非常长的页面(需要滚动才能查看全部),当我尝试使用下面的代码捕获整个窗口时,我得到的是压缩图像而不是 CurrentWindow 中的完整 WebContent 屏幕截图。

https://github.com/electron/electron/blob/master/docs/api/browser-window.md#wincapturepagerect-callback

        const remote = require('electron').remote;
const win = remote.getCurrentWindow();
const win_size = win.getSize();
const win_height = win_size[0];
const win_width = win_size[1];

win.capturePage({
x: 0,
y: 0,
width: win_width,
height: win_height
},
(img) => {
remote.require('fs')
.writeFile(TEMP_URL, img.toPng());
});

我也试过下面的代码,但结果是一样的,

        const remote = require('electron').remote;
const webContents = remote.getCurrentWebContents();

webContents.capturePage({
x: 0,
y: 0,
width: 1000,
height: 2000
}, (img) => {
remote.require('fs')
.writeFile(TEMP_URL, img.toPng());
});

传入 capturePage 方法的第一个对象应该是绑定(bind)的,但结果是输出图像的大小。

我已经检查了 win_size,它是当前窗口中 WebContent 的正确大小。

enter image description here

enter image description here

最佳答案

win.getSize()

返回一个包含[width, height] 的数组。您正在将 win_width 变量分配给窗口的高度,将 win_height 变量分配给窗口的宽度。如果您更改这些值,这可能会解决您的问题。

 const win_height = win_size[1];
const win_width = win_size[0];

关于javascript - 如何在 CurrentWindow 中捕获整个 WebContent,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42036126/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com