---
sidebar_label: PDFOptions
---
# PDFOptions interface
Valid options to configure PDF generation via [Page.pdf()](./puppeteer.page.pdf.md).
#### Signature:
```typescript
export interface PDFOptions
```
## Properties
| Property | Modifiers | Type | Description | Default |
| --------------------------------------------------------------------- | --------- | ----------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------- |
| [displayHeaderFooter?](./puppeteer.pdfoptions.displayheaderfooter.md) | | boolean | _(Optional)_ Whether to show the header and footer. | false |
| [footerTemplate?](./puppeteer.pdfoptions.footertemplate.md) | | string | _(Optional)_ HTML template for the print footer. Has the same constraints and support for special classes as [PDFOptions.headerTemplate](./puppeteer.pdfoptions.headertemplate.md). | |
| [format?](./puppeteer.pdfoptions.format.md) | | [PaperFormat](./puppeteer.paperformat.md) | _(Optional)_ | letter
. |
| [headerTemplate?](./puppeteer.pdfoptions.headertemplate.md) | | string |
_(Optional)_ HTML template for the print header. Should be valid HTML with the following classes used to inject values into them:
- date
formatted print date
- title
document title
- url
document location
- pageNumber
current page number
- totalPages
total pages in the document
1-5, 8, 11-13
. | The empty string, which means all pages are printed. |
| [path?](./puppeteer.pdfoptions.path.md) | | string | _(Optional)_ The path to save the file to. | the empty string, which means the PDF will not be written to disk. |
| [preferCSSPageSize?](./puppeteer.pdfoptions.prefercsspagesize.md) | | boolean | _(Optional)_ Give any CSS @page
size declared in the page priority over what is declared in the width
or height
or format
option. | false
, which will scale the content to fit the paper size. |
| [printBackground?](./puppeteer.pdfoptions.printbackground.md) | | boolean | _(Optional)_ Set to true
to print background graphics. | false |
| [scale?](./puppeteer.pdfoptions.scale.md) | | number | _(Optional)_ Scales the rendering of the web page. Amount must be between 0.1
and 2
. | 1 |
| [timeout?](./puppeteer.pdfoptions.timeout.md) | | number | _(Optional)_ Timeout in milliseconds. Pass 0
to disable timeout. | 30000 |
| [width?](./puppeteer.pdfoptions.width.md) | | string \| number | _(Optional)_ Sets the width of paper. You can pass in a number or a string with a unit. | |