3

我正在尝试使用 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 是否提供这种类型的自定义?

4

2 回答 2

0

Puppeteer 将使用打印媒体生成 PDF,因此您可能需要尝试模拟屏幕,看看是否能解决您的问题(请参阅此处的文档)。

于 2018-05-30T07:18:02.157 回答
0

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

于 2017-11-09T05:42:33.430 回答