Skip to content

Instantly share code, notes, and snippets.

@jaredpalmer
Created June 13, 2022 14:19
Show Gist options
  • Save jaredpalmer/c16198902839267271b30e3bf68de658 to your computer and use it in GitHub Desktop.
Save jaredpalmer/c16198902839267271b30e3bf68de658 to your computer and use it in GitHub Desktop.
import puppeteer from 'puppeteer'
import fs from 'fs'
async function buildPDF(htmlString) {
const browser = await puppeteer.launch({ headless: true })
const page = await browser.newPage();
await page.setContent(htmlString, { waitUntil: 'networkidle0' })
const pdf = await page.pdf({
format: 'A4',
displayHeaderFooter: false,
printBackground: true,
// default in Chrome
margin: {
top: '0.4in',
bottom: '0.4in',
left: '0.4in',
right: '0.4in',
}
})
await browser.close()
fs.writeFileSync('/path/to/save', pdf)
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment