gpt4 book ai didi

javascript - webContents.printtoPDF() 始终返回长度为 661 字节的空数据

转载 作者:太空宇宙 更新时间:2023-11-04 03:17:44 26 4
gpt4 key购买 nike

我的代码如下所示:

function pdfSettings(h, w) {
var MICRONS_PER_IN = 25400;

var option = {
landscape: false,
marginsType: 0,
printBackground: true,
printSelectionOnly: false,
pageSize:{width:(w * MICRONS_PER_IN), height:(h * MICRONS_PER_IN)},
};
return option;
}

  win.webContents.printToPDF(pdfSettings('8.25','5.375'), function(err, data) {
fs.writeFile('/Users/me/.myapp/test.pdf', data, function (error) {
if (err) {
return console.log(err.message);
}
else {
console.log("shouldn't be here");
console.log(data.length);
}
});
});

这会生成一个具有正确尺寸的新 pdf 文件,但为空白。

win 是一个新的 browserwindow 对象,已打开,我可以看到其中的内容。我怀疑这是浏览器窗口内容尚不可用的一些问题,但将其放入就绪事件中似乎没有做任何事情,甚至根本阻止它触发。

无论浏览器窗口内容如何,​​数据长度(和 pdf 文件大小)始终为 661 字节。可能是最小的 pdf 模板大小之类的。

我使用 wkhtmltopdf 的后备策略是不可行的(某些 css3 功能不可用),所以我必须完成这项工作。

最佳答案

我不明白其中的心理,在点击“发布你的问题”30秒后,我总是自己弄清楚,我很想删除这个......但SO上似乎没有另一个版本,所以就在这里。

x.printToPDF() 需要 package 在 webContents 对象的事件处理程序中,如下所示:

win.webContents.on('did-finish-load', function() {

did-finish-load 是此问题的正确事件。此外,复制粘贴事件名称以避免拼写错误也没什么可耻的。

关于javascript - webContents.printtoPDF() 始终返回长度为 661 字节的空数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54046893/

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