使用 puppeteer 生成 pdf 时无法捕获图像 API
Not able to capture image while generating pdf using puppeteer API
Node- v8.11.1 无头 Chrome
我正在尝试生成 PDF,但不知何故背景图像未捕获到 PDF 中。
下面是代码。感谢任何帮助
const puppeteer = require('puppeteer');
(async () => {
const browser = await puppeteer.launch({headless: true});
const page = await browser.newPage();
await page.goto('http://54.201.139.151/', {waitUntil : 'networkidle0'});
await page.pdf({path: 'hn40.pdf', printBackground: true, width: '1024px' , height: '768px'});
await browser.close();
})();
如 Rippo 所述,you require page.emulateMedia("screen")
才能正常工作。我已经在下面更新了您的脚本,但我将页面更改为 google 以进行测试。
const puppeteer = require('puppeteer');
(async () => {
const browser = await puppeteer.launch();
const page = await browser.newPage();
await page.goto('http://google.ca/', {waitUntil : 'networkidle2'});
await page.emulateMedia('screen');
await page.pdf({path: 'hn40.pdf', printBackground: true, width: '1024px' , height: '768px'});
await browser.close();
})();
更新:page.emulateMedia()
被 page.emulateMediaType()
取代
Node- v8.11.1 无头 Chrome
我正在尝试生成 PDF,但不知何故背景图像未捕获到 PDF 中。
下面是代码。感谢任何帮助
const puppeteer = require('puppeteer');
(async () => {
const browser = await puppeteer.launch({headless: true});
const page = await browser.newPage();
await page.goto('http://54.201.139.151/', {waitUntil : 'networkidle0'});
await page.pdf({path: 'hn40.pdf', printBackground: true, width: '1024px' , height: '768px'});
await browser.close();
})();
如 Rippo 所述,you require page.emulateMedia("screen")
才能正常工作。我已经在下面更新了您的脚本,但我将页面更改为 google 以进行测试。
const puppeteer = require('puppeteer');
(async () => {
const browser = await puppeteer.launch();
const page = await browser.newPage();
await page.goto('http://google.ca/', {waitUntil : 'networkidle2'});
await page.emulateMedia('screen');
await page.pdf({path: 'hn40.pdf', printBackground: true, width: '1024px' , height: '768px'});
await browser.close();
})();
更新:page.emulateMedia()
被 page.emulateMediaType()