# Record TCefPdfPrintSettings

Description
Hierarchy
Fields
Methods
Properties

## Unit

uCEFTypes

## Declaration

`type TCefPdfPrintSettings = record`

## Description

Structure representing PDF print settings. These values match the parameters supported by the DevTools Page.printToPDF function. See https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-printToPDF

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/internal/cef_types.h">CEF source file: /include/internal/cef_types.h (cef_pdf_print_settings_t))

## Overview

### Fields

| `size: NativeUInt;`
| `landscape: Integer;`
| `print_background: Integer;`
| `scale: double;`
| `paper_width: double;`
| `paper_height: double;`
| `prefer_css_page_size: Integer;`
| `margin_type: TCefPdfPrintMarginType;`
| `margin_top: double;`
| `margin_right: double;`
| `margin_bottom: double;`
| `margin_left: double;`
| `page_ranges: TCefString;`
| `display_header_footer: Integer;`
| `header_template: TCefString;`
| `footer_template: TCefString;`
| `generate_tagged_pdf: integer;`
| `generate_document_outline: integer;`

## Description

### Fields

| `size: NativeUInt;`
Size of this structure.

| `landscape: Integer;`
Set to true (1) for landscape mode or false (0) for portrait mode.

| `print_background: Integer;`
Set to true (1) to print background graphics.

| `scale: double;`
The percentage to scale the PDF by before printing (e.g. .5 is 50%). If this value is less than or equal to zero the default value of 1.0 will be used.

| `paper_width: double;`
Output paper size in inches. If either of these values is less than or equal to zero then the default paper size (letter, 8.5 x 11 inches) will be used.

| `paper_height: double;`
This item has no description.

| `prefer_css_page_size: Integer;`
Set to true (1) to prefer page size as defined by css. Defaults to false (0), in which case the content will be scaled to fit the paper size.

| `margin_type: TCefPdfPrintMarginType;`
Margin type.

| `margin_top: double;`
Margins in inches. Only used if |margin_type| is set to PDF_PRINT_MARGIN_CUSTOM.

| `margin_right: double;`
This item has no description.

| `margin_bottom: double;`
This item has no description.

| `margin_left: double;`
This item has no description.

| `page_ranges: TCefString;`

Paper ranges to print, one based, e.g., '1-5, 8, 11-13'. Pages are printed in the document order, not in the order specified, and no more than once. Defaults to empty string, which implies the entire document is printed. The page numbers are quietly capped to actual page count of the document, and ranges beyond the end of the document are ignored. If this results in no pages to print, an error is reported. It is an error to specify a range with start greater than end.

| `display_header_footer: Integer;`
Set to true (1) to display the header and/or footer. Modify |header_template| and/or |footer_template| to customize the display.

| `header_template: TCefString;`

HTML template for the print header. Only displayed if |display_header_footer| is true (1). Should be valid HTML markup with the following classes used to inject printing values into them:

- date: formatted print date - title: document title - url: document location - pageNumber: current page number - totalPages: total pages in the document

For example, "<span class=title></span>" would generate a span containing the title.

| `footer_template: TCefString;`
HTML template for the print footer. Only displayed if |display_header_footer| is true (1). Uses the same format as |header_template|.

| `generate_tagged_pdf: integer;`
Set to true (1) to generate tagged (accessible) PDF.

| `generate_document_outline: integer;`
Set to true (1) to generate a document outline.

Generated by PasDoc 0.17.0.snapshot.