Collection of PDF functions.
Methods
create
create(htmlBody: string | string[], options?: {
/**
* Paper size
*/
format?: 'A4' | 'Letter' | 'Legal' | 'Ledger' | 'Tabloid' | 'A0' | 'A1' | 'A2' | 'A3' | 'A5' | 'A6',
/**
* Paper orientation. Defaults to false (portrait).
*/
landscape?: boolean,
/**
* Paper margins. Defaults to { top: 30, right: 35, bottom: 70, left: 25 }. Units can be numbers or strings with units (e.g. '1cm', '10px', '2in', '5mm').
*/
margin?: { top?: number | string, right?: number | string, bottom?: number | string, left?: number | string },
/**
* Paper width, accepts values labeled with units.
*/
width?: string | number,
/**
* Paper height, accepts values labeled with units.
*/
height?: string | number,
/**
* HTML template for the print header. Should be valid HTML markup with 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
*/
headerTemplate?: string,
/**
* HTML template for the print footer. Should use the same format as the headerTemplate.
*/
footerTemplate?: string,
/**
* Whether or not to embed the document outline into the PDF. Defaults to false.
*/
outline?: boolean,
/**
* Paper ranges to print, e.g., '1-5, 8, 11-13'. Defaults to the empty string, which means print all pages.
*/
pageRanges?: string,
/**
* Print background graphics. Defaults to false.
*/
printBackground?: boolean,
/**
* Scale of the webpage rendering. Defaults to 1. Scale amount must be between 0.1 and 2.
*/
scale?: number,
/**
* Whether or not to generate tagged (accessible) PDF. Defaults to false.
*/
tagged?: boolean,
/**
* Navigator language.
*/
locale?: string,
/**
* Selector to wait for during URL fetch. The PDF generation will wait until the selector has the given state (default 'attached').
*/
waitForSelector?: string
/**
* State of defined waitForSelector to wait for during URL fetch. The PDF generation will wait until the selector has the given state (default 'attached').
*/
waitForState?: 'attached' | 'detached' | 'hidden' | 'visible',
/**
* Add debugging information to the PDF. Defaults to false.
*/
debug?: boolean,
/**
* Custom CSS to be injected into the page before printing.
*/
css?: string,
/**
* HTTP headers to be sent with the request.
*/
httpHeaders?: Record<string, string>,
/**
* LocalStorage content to be injected into the page before printing.
*/
localStorage?: Record<string, string>,
/**
* SessionStorage content to be injected into the page before printing.
*/
sessionStorage?: Record<string, string>,
/**
* Cookies to be set in the page before printing.
*/
cookies?: Record<string, string>
})Creates a PDF document from given HTML. Returns a base64 encoded string.
Parameters
htmlBody string | string[]
The HTML to convert to PDF. Can be a single string or an array of strings for multiple pages.
options { /* * Paper size / format?: 'A4' | 'Letter' | 'Legal' | 'Ledger' | 'Tabloid' | 'A0' | 'A1' | 'A2' | 'A3' | 'A5' | 'A6', /* * Paper orientation. Defaults to false (portrait). / landscape?: boolean, /* * Paper margins. Defaults to { top: 30, right: 35, bottom: 70, left: 25 }. Units can be numbers or strings with units (e.g. '1cm', '10px', '2in', '5mm'). / margin?: { top?: number | string, right?: number | string, bottom?: number | string, left?: number | string }, /* * Paper width, accepts values labeled with units. / width?: string | number, /* * Paper height, accepts values labeled with units. / height?: string | number, /* * HTML template for the print header. Should be valid HTML markup with 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 / headerTemplate?: string, /* * HTML template for the print footer. Should use the same format as the headerTemplate. / footerTemplate?: string, /* * Whether or not to embed the document outline into the PDF. Defaults to false. / outline?: boolean, /* * Paper ranges to print, e.g., '1-5, 8, 11-13'. Defaults to the empty string, which means print all pages. / pageRanges?: string, /* * Print background graphics. Defaults to false. / printBackground?: boolean, /* * Scale of the webpage rendering. Defaults to 1. Scale amount must be between 0.1 and 2. / scale?: number, /* * Whether or not to generate tagged (accessible) PDF. Defaults to false. / tagged?: boolean, /* * Navigator language. / locale?: string, /* * Selector to wait for during URL fetch. The PDF generation will wait until the selector has the given state (default 'attached'). / waitForSelector?: string /* * State of defined waitForSelector to wait for during URL fetch. The PDF generation will wait until the selector has the given state (default 'attached'). / waitForState?: 'attached' | 'detached' | 'hidden' | 'visible', /* * Add debugging information to the PDF. Defaults to false. / debug?: boolean, /* * Custom CSS to be injected into the page before printing. / css?: string, /* * HTTP headers to be sent with the request. / httpHeaders?: Record<string, string>, /* * LocalStorage content to be injected into the page before printing. / localStorage?: Record<string, string>, /* * SessionStorage content to be injected into the page before printing. / sessionStorage?: Record<string, string>, /* * Cookies to be set in the page before printing. / cookies?: Record<string, string> }
(optional) The additional PDF options.
Return type
string
Examples
createFromUrl
Creates a PDF document from a given url. Returns a base64 encoded string.
Parameters
url string | string[]
The url to convert to PDF.
options { /* * Paper size / format?: 'A4' | 'Letter' | 'Legal' | 'Ledger' | 'Tabloid' | 'A0' | 'A1' | 'A2' | 'A3' | 'A5' | 'A6', /* * Paper orientation. Defaults to false (portrait). / landscape?: boolean, /* * Paper margins. Defaults to { top: 30, right: 35, bottom: 70, left: 25 }. Units can be numbers or strings with units (e.g. '1cm', '10px', '2in', '5mm'). / margin?: { top?: number | string, right?: number | string, bottom?: number | string, left?: number | string }, /* * Paper width, accepts values labeled with units. / width?: string | number, /* * Paper height, accepts values labeled with units. / height?: string | number, /* * HTML template for the print header. Should be valid HTML markup with 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 / headerTemplate?: string, /* * HTML template for the print footer. Should use the same format as the headerTemplate. / footerTemplate?: string, /* * Whether or not to embed the document outline into the PDF. Defaults to false. / outline?: boolean, /* * Paper ranges to print, e.g., '1-5, 8, 11-13'. Defaults to the empty string, which means print all pages. / pageRanges?: string, /* * Print background graphics. Defaults to false. / printBackground?: boolean, /* * Scale of the webpage rendering. Defaults to 1. Scale amount must be between 0.1 and 2. / scale?: number, /* * Whether or not to generate tagged (accessible) PDF. Defaults to false. / tagged?: boolean, /* * Navigator language. / locale?: string, /* * Selector to wait for during URL fetch. The PDF generation will wait until the selector has the given state (default 'attached'). / waitForSelector?: string /* * State of defined waitForSelector to wait for during URL fetch. The PDF generation will wait until the selector has the given state (default 'attached'). / waitForState?: 'attached' | 'detached' | 'hidden' | 'visible', /* * Add debugging information to the PDF. Defaults to false. / debug?: boolean, /* * Custom CSS to be injected into the page before printing. / css?: string, /* * HTTP headers to be sent with the request. / httpHeaders?: Record<string, string>, /* * LocalStorage content to be injected into the page before printing. / localStorage?: Record<string, string>, /* * SessionStorage content to be injected into the page before printing. / sessionStorage?: Record<string, string>, /* * Cookies to be set in the page before printing. / cookies?: Record<string, string> }
(optional) The additional PDF options.
Return type
string
Examples
renderForm
Render a Ruleset Form to PDF.
Parameters
formName string
The name or ID of the Form (e.g. "Form1").
context { [key: string]: any; }
The context to render the form with.
options { /* * Paper size / format?: 'A4' | 'Letter' | 'Legal' | 'Ledger' | 'Tabloid' | 'A0' | 'A1' | 'A2' | 'A3' | 'A5' | 'A6', /* * Paper orientation. Defaults to false (portrait). / landscape?: boolean, /* * Paper margins. Defaults to { top: 30, right: 35, bottom: 70, left: 25 }. Units can be numbers or strings with units (e.g. '1cm', '10px', '2in', '5mm'). / margin?: { top?: number | string, right?: number | string, bottom?: number | string, left?: number | string }, /* * Paper width, accepts values labeled with units. / width?: string | number, /* * Paper height, accepts values labeled with units. / height?: string | number, /* * HTML template for the print header. Should be valid HTML markup with 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 / headerTemplate?: string, /* * HTML template for the print footer. Should use the same format as the headerTemplate. / footerTemplate?: string, /* * Whether or not to embed the document outline into the PDF. Defaults to false. / outline?: boolean, /* * Paper ranges to print, e.g., '1-5, 8, 11-13'. Defaults to the empty string, which means print all pages. / pageRanges?: string, /* * Print background graphics. Defaults to false. / printBackground?: boolean, /* * Scale of the webpage rendering. Defaults to 1. Scale amount must be between 0.1 and 2. / scale?: number, /* * Whether or not to generate tagged (accessible) PDF. Defaults to false. / tagged?: boolean, /* * Navigator language. / locale?: string, /* * Selector to wait for during URL fetch. The PDF generation will wait until the selector has the given state (default 'attached'). / waitForSelector?: string /* * State of defined waitForSelector to wait for during URL fetch. The PDF generation will wait until the selector has the given state (default 'attached'). / waitForState?: 'attached' | 'detached' | 'hidden' | 'visible', /* * Add debugging information to the PDF. Defaults to false. / debug?: boolean, /* * Custom CSS to be injected into the page before printing. / css?: string, /* * HTTP headers to be sent with the request. / httpHeaders?: Record<string, string>, /* * LocalStorage content to be injected into the page before printing. / localStorage?: Record<string, string>, /* * SessionStorage content to be injected into the page before printing. / sessionStorage?: Record<string, string>, /* * Cookies to be set in the page before printing. / cookies?: Record<string, string> }
(optional) The additional PDF options.
Return type
string
Examples
setPrivileges
Set the privileges of a PDF document. Returns a base64 encoded string. The User password is required to open the document for viewing and editing. The Owner password is required to change the document's permissions. All permissions are set to false by default.
Parameters
document string
The PDF document to set the privileges on.
options { /* * User password. When set, the PDF will require a password to be opened. / userPassword?: string, /* * Owner password. When set, the PDF will require a password to be modified. / ownerPassword?: string, /* * Permit printing. Defaults to false. / permitPrint?: boolean, /* * Permit modifying the document. Defaults to false. / permitModifyDocument?: boolean, /* * Permit extracting content. Defaults to false. / permitExtractContent?: boolean, /* * Permit filling forms. Defaults to false. / permitFormsFill?: boolean, /* * Permit full quality printing. Defaults to false. / permitFullQualityPrint?: boolean, /* * Permit annotations. Defaults to false. / permitAnnotations?: boolean, /* * Permit assembling the document. Defaults to false. / permitAssembleDocument?: boolean }
(optional) The additional PDF privileges options. When set, the PDF will require a password to be opened (user password) or to modify (owner password). All other options are optional and default to false (no permission).
Return type
string
Examples
Last updated