我在窗口中有一个非常长的页面(需要滚动查看所有页面),当我试图使用下面的代码捕获整个窗口时,我会得到一个压缩图像,而不是CurrentWindow中的完整CurrentWindow屏幕截图。
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方法的第一个对象应该是绑定,但结果是输出图像的大小。
我已经检查了win_size,这是WebContent在CurrentWindow中的正确大小。


发布于 2017-02-09 08:19:49
win.getSize()返回一个带有[width, height]的数组。您将win_width变量分配给窗口的高度,win_height分配给窗口的宽度。如果更改这些值,可能会解决问题。
const win_height = win_size[1];
const win_width = win_size[0];https://stackoverflow.com/questions/42036126
复制相似问题