webcapt
Version:
A simple cli to screen capture web pages and save them to disk as images or pdfs.
23 lines (22 loc) • 673 B
JavaScript
import { getChromeBrowser } from '../utils/find-chrome.js';
const defaultPdfOptions = {
format: 'A4',
printBackground: true,
};
export async function generatePDF({ url, pdfOptions = {}, }) {
const browser = await getChromeBrowser();
const page = await browser.newPage();
try {
await page.goto(url, { waitUntil: 'networkidle0' });
await page.emulateMediaType('screen');
pdfOptions.path = pdfOptions.path ? `${pdfOptions.path}.pdf` : undefined;
await page.pdf({
...defaultPdfOptions,
...pdfOptions,
});
return pdfOptions.path;
}
finally {
await page.close();
}
}