【发布时间】:2020-11-13 18:07:54
【问题描述】:
我正在尝试使用 puppeteer 创建 PDF。创建 PDF 时设置视口根本没有效果。但是,视口设置确实适用于屏幕截图。过去似乎在 github 上发现了一些问题,但它们显然已被关闭。传入 defaultViewport: null 应该是解决方案。
这是我的代码:
browser = await chromium.puppeteer.launch({
args: chromium.args,
defaultViewport: null,
executablePath: await chromium.executablePath,
ignoreHTTPSErrors: true,
headless: true,
});
let page = await browser.newPage();
// Set viewport
await page.setViewport({width: 1440, height: 900, deviceScaleFactor: 2});
// Generate pdf
const doc = await page.pdf(options);
我还尝试在启动时传递视口设置。
谢谢!
【问题讨论】:
-
页面视口和 pdf 输出大小是两个不同的东西。尝试更改浏览器窗口的大小并执行文件 -> 打印。您会看到它不会影响您的打印文档,但显然它会影响屏幕截图。
标签: javascript node.js puppeteer google-chrome-headless webautomation