节点Puppeteer生成PDF不包括表单输入

时间:2017-09-04 23:46:18

标签: node.js express puppeteer

我正在尝试使用Puppeteer( https://github.com/GoogleChrome/puppeteer)为快速应用创建PDF文件,以下是代码:

var puppeteer = require('puppeteer');

var browser = await puppeteer.launch({headless: true});
var page = await browser.newPage();
await page.goto(fullUrl + '/#shareDiv', {waitUntil: 'networkidle'});
page.emulateMedia('screen');
await page.pdf({path:'./uploads/pdfDownload'+Date.now()+'.pdf', printBackground: true, width: '1000px'});

browser.close();

这会生成相当不错的PDF,但它隐藏了任何输入元素(无线电,复选框等)

此外,我想针对ID引用的特定div。

另一件事是摆脱PDF上的页面。

Puppeteer上有这种自定义吗?

2 个答案:

答案 0 :(得分:0)

如果有人遇到类似这样的问题,请注意Pupeteer几乎完全匹配Chrome,所以如果你使用Mozilla Firefox测试它不会完全匹配你的PDF,那么在使用Puppeteer时在Chrome中测试会更顺畅

答案 1 :(得分:0)

Puppeteer将使用print-media生成PDF,因此您可能希望尝试模拟屏幕,看看是否能解决您的问题(see docs here)。