使用Puppeteer,如何生成具有自动高度的PDF?

时间:2018-10-11 14:19:00

标签: pdf-generation puppeteer

我使用Puppeteer生成PDF收据。 对于每张收据,宽度始终是相同的,但高度会根据订单中的商品数而变化。

目前,我正在使用商品数来估算收据所需的高度。可以,但是它不是完美的,而且是一种肮脏的方式(您可能会在波纹管底部看到无用的空白)。

有没有办法告诉Puppeteer:“请根据HTML内容自动找到合适的PDF高度,以免产生无用的空白”?

enter image description here

1 个答案:

答案 0 :(得分:2)

据我正确理解,您正在使用width方法的heightpage.pdf(options)选项(很遗憾,您没有提供代码)。您可以通过评估页面上的JS函数来尝试获取已加载网页的height值。例如...

const pageHeight = await page.evaluate(() => { window.innerHeight; });
const result = await page.pdf({ height: pageHeight  + 'px' });