HTML to PDF / Command Line Reference

Conversion from HTML to PDF.

usage: html2pdf [options] source
source
Source to be converted. It can be URL, path to a local file or '-' to use stdin as an input text.

Options

Page Setup

-page-size

Set the output page size.

Default:
A4
Allowed Values:
  • A0
  • A1
  • A2
  • A3
  • A4
  • A5
  • A6
  • Letter

-page-width

Set the output page width. The safe maximum is 200in otherwise some PDF viewers may be unable to open the PDF.

Constraint:
  • The value must be specified in inches 'in', millimeters 'mm', centimeters 'cm', pixels 'px', or points 'pt'.
Default:
8.27in
Examples:
  • A4 landscape / A3 portrait width: "297mm"
  • US Letter/Legal standard width: "8.5in"

-page-height

Set the output page height. Use -1 for a single page PDF. The safe maximum is 200in otherwise some PDF viewers may be unable to open the PDF.

Constraint:
  • The value must be -1 or specified in inches 'in', millimeters 'mm', centimeters 'cm', pixels 'px', or points 'pt'.
Default:
11.7in
Examples:
  • A3 standard height for large format: "420mm"
  • Auto-fit entire content in single page: "-1"
  • US Legal for contracts and documents: "14in"

-orientation

Set the output page orientation.

Default:
portrait
Allowed Values:
  • landscape
  • portrait

-margin-top

Set the output page top margin.

Constraint:
  • The value must be specified in inches 'in', millimeters 'mm', centimeters 'cm', pixels 'px', or points 'pt'.
Default:
0.4in
Examples:
  • Wide margin for binding: "1in"
  • Narrow professional margin: "10mm"

-margin-right

Set the output page right margin.

Constraint:
  • The value must be specified in inches 'in', millimeters 'mm', centimeters 'cm', pixels 'px', or points 'pt'.
Default:
0.4in
Examples:
  • Wide margin for binding: "1in"
  • Narrow professional margin: "10mm"

-margin-bottom

Set the output page bottom margin.

Constraint:
  • The value must be specified in inches 'in', millimeters 'mm', centimeters 'cm', pixels 'px', or points 'pt'.
Default:
0.4in
Examples:
  • Wide margin for binding: "1in"
  • Narrow professional margin: "10mm"

-margin-left

Set the output page left margin.

Constraint:
  • The value must be specified in inches 'in', millimeters 'mm', centimeters 'cm', pixels 'px', or points 'pt'.
Default:
0.4in
Examples:
  • Wide margin for binding: "1in"
  • Narrow professional margin: "10mm"

-no-margins

Disable page margins.

Default:
False
Allowed Values:
  • true, 1 or on
  • false, 0 or off

-content-viewport-width

Set the viewport width for formatting the HTML content when generating a PDF. By specifying a viewport width, you can control how the content is rendered, ensuring it mimics the appearance on various devices or matches specific design requirements.

Availability:
API client >= 6.0.0, converter >= 24.04. See versioning.
Constraint:
  • The value must be 'balanced', 'small', 'medium', 'large', 'extra-large', or a number in the range 96-65000px.
Default:
medium
Allowed Values:
  • balanced — The smart option to adjust the viewport width dynamically to fit the print area, ensuring an optimal layout.
  • small — A compact layout where less text fits on each PDF page, ideal for detailed sections or mobile views.
  • medium — A balanced amount of text per page, striking a good compromise between readability and content density.
  • large — A broader layout that accommodates more text per page, perfect for reducing page count and enhancing flow.
  • extra-large — Maximize the text per page, creating a spacious and content-rich PDF, akin to a widescreen experience.
  • pixel width — A precise viewport width in pixels, such as 1024px, to tailor the PDF's text density to your specific requirements. The value must be in the range 96-65000px.
Examples:
  • Use the "large" viewport: "large"
  • Use an 800 pixels wide viewport: "800px"

-content-viewport-height

Set the viewport height for formatting the HTML content when generating a PDF. By specifying a viewport height, you can enforce loading of lazy-loaded images and also affect vertical positioning of absolutely positioned elements within the content.

Availability:
API client >= 6.0.0, converter >= 24.04. See versioning.
Constraint:
  • The value must be 'auto', 'large', or a number.
Default:
auto
Allowed Values:
  • auto — The height of the print area is used.
  • large — Value suitable for documents with extensive lazy-loaded content.
  • pixel height — A specific numerical value, such as 10000px, to set as the window height, allowing precise control based on the document's requirements.
Examples:
  • Load all lazy images and content: "large"
  • Force tall viewport for long pages: "5000px"

-content-fit-mode

Specifies the mode for fitting the HTML content to the print area by upscaling or downscaling it.

Availability:
API client >= 6.0.0, converter >= 24.04. See versioning.
Default:
auto
Allowed Values:
  • auto — Automatic mode
  • smart-scaling — Smartscaling to fit more content into the print area.
  • no-scaling — No scaling is performed.
  • viewport-width — The viewport width fits the print area width.
  • content-width — The HTML content width fits the print area width.
  • single-page — The entire HTML content fits the print area of a single page.
  • single-page-ratio — The entire HTML content fits the print area of a single page, maintaining the aspect ratio of the page height and width.

-remove-blank-pages

Specifies which blank pages to exclude from the output document.

Availability:
API client >= 5.13.0, converter >= 20.10. See versioning.
Default:
trailing
Allowed Values:
  • trailing — Trailing blank pages are removed from the document.
  • all — All empty pages are removed from the document.
  • none — No blank page is removed from the document.

Watermark & Background

-page-watermark

Apply a watermark to each page of the output PDF file. A watermark can be either a PDF or an image. If a multi-page file (PDF or TIFF) is used, the first page is used as the watermark.

Constraint:
  • The file must exist and not be empty.
Examples:
  • Multi-page PDF for watermarking: "/home/user/john/watermark.pdf"
  • Transparent PNG overlay: "/home/user/john/watermark.png"

-page-watermark-url

Load a file from the specified URL and apply the file as a watermark to each page of the output PDF. A watermark can be either a PDF or an image. If a multi-page file (PDF or TIFF) is used, the first page is used as the watermark.

Constraint:
  • Supported protocols are http:// and https://.
Examples:
  • Download watermark from server: "http://myserver.com/watermark.pdf"
  • Remote logo watermark: "http://myserver.com/watermark.png"

-multipage-watermark

Apply each page of a watermark to the corresponding page of the output PDF. A watermark can be either a PDF or an image.

Constraint:
  • The file must exist and not be empty.
Examples:
  • Multi-page PDF for watermarking: "/home/user/john/watermark.pdf"
  • Transparent PNG overlay: "/home/user/john/watermark.png"

-multipage-watermark-url

Load a file from the specified URL and apply each page of the file as a watermark to the corresponding page of the output PDF. A watermark can be either a PDF or an image.

Constraint:
  • Supported protocols are http:// and https://.
Examples:
  • Download watermark from server: "http://myserver.com/watermark.pdf"
  • Remote logo watermark: "http://myserver.com/watermark.png"

-page-background

Apply a background to each page of the output PDF file. A background can be either a PDF or an image. If a multi-page file (PDF or TIFF) is used, the first page is used as the background.

Constraint:
  • The file must exist and not be empty.
Examples:
  • PDF template background: "/home/user/john/background.pdf"
  • Image texture background: "/home/user/john/background.png"

-page-background-url

Load a file from the specified URL and apply the file as a background to each page of the output PDF. A background can be either a PDF or an image. If a multi-page file (PDF or TIFF) is used, the first page is used as the background.

Constraint:
  • Supported protocols are http:// and https://.
Examples:
  • Download template background: "http://myserver.com/background.pdf"
  • Remote background pattern: "http://myserver.com/background.png"

-multipage-background

Apply each page of a background to the corresponding page of the output PDF. A background can be either a PDF or an image.

Constraint:
  • The file must exist and not be empty.
Examples:
  • PDF template background: "/home/user/john/background.pdf"
  • Image texture background: "/home/user/john/background.png"

-multipage-background-url

Load a file from the specified URL and apply each page of the file as a background to the corresponding page of the output PDF. A background can be either a PDF or an image.

Constraint:
  • Supported protocols are http:// and https://.
Examples:
  • Download template background: "http://myserver.com/background.pdf"
  • Remote background pattern: "http://myserver.com/background.png"

-page-background-color

The page background color in RGB or RGBA hexadecimal format. The color fills the entire page regardless of the margins.

Constraint:
  • The value must be in RRGGBB or RRGGBBAA hexadecimal format.
Examples:
  • red color: "FF0000"
  • green color: "00ff00"
  • green color with 50% opacity: "00ff0080"

General Options

-use-print-media

Use the print version of the page if available (@media print).

Default:
False
Allowed Values:
  • true, 1 or on
  • false, 0 or off

-no-background

Do not print the background graphics.

Default:
False
Allowed Values:
  • true, 1 or on
  • false, 0 or off

-disable-javascript

Do not execute JavaScript.

Default:
False
Allowed Values:
  • true, 1 or on
  • false, 0 or off

-disable-image-loading

Do not load images.

Default:
False
Allowed Values:
  • true, 1 or on
  • false, 0 or off

-disable-remote-fonts

Disable loading fonts from remote sources.

Default:
False
Allowed Values:
  • true, 1 or on
  • false, 0 or off

-use-mobile-user-agent

Deprecated Replaced with: -converter-user-agent

Use a mobile user agent.

Availability:
API client >= 5.3.0, converter >= 20.10. See versioning.
Default:
False
Allowed Values:
  • true, 1 or on
  • false, 0 or off

-load-iframes

Specifies how iframes are handled.

Availability:
API client >= 5.0.0, converter >= 20.10. See versioning.
Default:
all
Allowed Values:
  • all — All iframes are loaded.
  • same-origin — Only iframes with the same origin as the main page are loaded.
  • none — Iframe loading is disabled.

-block-ads

Try to block ads. Enabling this option can produce smaller output and speed up the conversion.

Default:
False
Allowed Values:
  • true, 1 or on
  • false, 0 or off

-default-encoding

Set the default HTML content text encoding.

Default:
auto detect
Examples:
  • Set to use Latin-2 encoding: "iso8859-2"
  • Set to use UTF-8 encoding: "utf-8"

-locale

Set the locale for the conversion. This may affect the output format of dates, times and numbers.

Availability:
API client >= 5.0.0, converter >= 20.10. See versioning.
Default:
en-US
Example:
  • Set to use Japanese locale: "ja-JP"

-http-auth-user-name

Set the HTTP authentication user name.

Example:
  • HTTP auth username: "John"

-http-auth-password

Set the HTTP authentication password.

Example:
  • Simple password for protected sites: "123456"

-cookies

Set HTTP cookies to be included in all requests made by the converter.

Example:
  • Multiple cookies for authentication: "session=6d7184b3bf35;token=2710"

-verify-ssl-certificates

Do not allow insecure HTTPS connections.

Default:
False
Allowed Values:
  • true, 1 or on
  • false, 0 or off

-fail-on-main-url-error

Abort the conversion if the main URL HTTP status code is greater than or equal to 400.

Default:
False
Allowed Values:
  • true, 1 or on
  • false, 0 or off

-fail-on-any-url-error

Abort the conversion if any of the sub-request HTTP status code is greater than or equal to 400 or if some sub-requests are still pending. See details in a debug log.

Default:
False
Allowed Values:
  • true, 1 or on
  • false, 0 or off

-no-xpdfcrowd-header

Do not send the X-Pdfcrowd HTTP header in PDFCrowd HTTP requests.

Default:
False
Allowed Values:
  • true, 1 or on
  • false, 0 or off

-css-page-rule-mode

Specifies behavior in presence of CSS @page rules. It may affect the page size, margins and orientation.

Availability:
API client >= 5.0.0, converter >= 20.10. See versioning.
Default:
default
Allowed Values:
  • default — The PDFCrowd API page settings are preferred.
  • mode1 — The converter version 18.10 mode.
  • mode2 — CSS @page rule is preferred.

-custom-css

Apply custom CSS to the input HTML document. It allows you to modify the visual appearance and layout of your HTML content dynamically. Tip: Using !important in custom CSS provides a way to prioritize and override conflicting styles.

Availability:
API client >= 5.14.0, converter >= 20.10. See versioning.
Examples:
  • Set the page background color to gray: "body { background-color: gray; }"
  • Do not show nav HTML elements and the element with ad-block ID in the output PDF: "nav, #ad-block { display: none !important; }"

-custom-javascript

Run a custom JavaScript after the document is loaded and ready to print. The script is intended for post-load DOM manipulation (add/remove elements, update CSS, ...). In addition to the standard browser APIs, the custom JavaScript code can use helper functions from our JavaScript library.

Example:
  • Set the page background color to gray: "document.body.style.setProperty('background-color', 'gray', 'important')"

-on-load-javascript

Run a custom JavaScript right after the document is loaded. The script is intended for early DOM manipulation (add/remove elements, update CSS, ...). In addition to the standard browser APIs, the custom JavaScript code can use helper functions from our JavaScript library.

Example:
  • Set the page background color to gray: "document.body.style.setProperty('background-color', 'gray', 'important')"

-custom-http-header

Set a custom HTTP header to be included in all requests made by the converter.

Constraint:
  • A string containing the header name and value separated by a colon.
Example:
  • API client tracking header: "X-My-Client-ID:k2017-12345"

-javascript-delay

Wait the specified number of milliseconds to finish all JavaScript after the document is loaded. Your license defines the maximum wait time by "Max Delay" parameter.

Constraint:
  • Must be a positive integer or 0.
Default:
200
Example:
  • Wait for 2 seconds: 2000

-element-to-convert

Convert only the specified element from the main document and its children. The element is specified by one or more CSS selectors. If the element is not found, the conversion fails. If multiple elements are found, the first one is used.

Examples:
  • The first element with the id main-content is converted: "#main-content"
  • The first element with the class name main-content is converted: ".main-content"
  • The first element with the tag name table is converted: "table"
  • The first element with the tag name table or with the id main-content is converted: "table, #main-content"
  • The first element <p class="article"> within <div class="user-panel main"> is converted: "div.user-panel.main p.article"

-element-to-convert-mode

Specify the DOM handling when only a part of the document is converted. This can affect the CSS rules used.

Default:
cut-out
Allowed Values:
  • cut-out — The element and its children are cut out of the document.
  • remove-siblings — All element's siblings are removed.
  • hide-siblings — All element's siblings are hidden.

-wait-for-element

Wait for the specified element in a source document. The element is specified by one or more CSS selectors. The element is searched for in the main document and all iframes. If the element is not found, the conversion fails. Your license defines the maximum wait time by "Max Delay" parameter.

Examples:
  • Wait until an element with the id main-content is found: "#main-content"
  • Wait until an element with the class name main-content is found: ".main-content"
  • Wait until an element with the tag name table is found: "table"
  • Wait until an element with the tag name table or with the id main-content is found: "table, #main-content"
  • Wait until <p class="article"> is found within <div class="user-panel main">: "div.user-panel.main p.article"

-auto-detect-element-to-convert

The main HTML element for conversion is detected automatically.

Availability:
API client >= 5.5.0, converter >= 20.10. See versioning.
Default:
False
Allowed Values:
  • true, 1 or on
  • false, 0 or off

-readability-enhancements

The input HTML is automatically enhanced to improve the readability.

Availability:
API client >= 5.5.0, converter >= 20.10. See versioning.
Default:
none
Allowed Values:
  • none — No enhancements are used.
  • readability-v1 — Version 1 of the enhancements is used.
  • readability-v2 — Version 2 of the enhancements is used.
  • readability-v3 — Version 3 of the enhancements is used.
  • readability-v4 — Version 4 of the enhancements is used.

PDF Format

Miscellaneous values for PDF output.

-enable-pdf-forms

Convert HTML forms to fillable PDF forms. Details can be found in the blog post.

Default:
False
Allowed Values:
  • true, 1 or on
  • false, 0 or off

-linearize

Create linearized PDF. This is also known as Fast Web View.

Default:
False
Allowed Values:
  • true, 1 or on
  • false, 0 or off

-encrypt

Encrypt the PDF. This prevents search engines from indexing the contents.

Default:
False
Allowed Values:
  • true, 1 or on
  • false, 0 or off

-user-password

Protect the PDF with a user password. When a PDF has a user password, it must be supplied in order to view the document and to perform operations allowed by the access permissions.

Example:
  • Simple document password: "123456"

-owner-password

Protect the PDF with an owner password. Supplying an owner password grants unlimited access to the PDF including changing the passwords and access permissions.

Example:
  • Admin access password: "123456"

-no-print

Disallow printing of the output PDF.

Default:
False
Allowed Values:
  • true, 1 or on
  • false, 0 or off

-no-modify

Disallow modification of the output PDF.

Default:
False
Allowed Values:
  • true, 1 or on
  • false, 0 or off

-no-copy

Disallow text and graphics extraction from the output PDF.

Default:
False
Allowed Values:
  • true, 1 or on
  • false, 0 or off

-title

Set the title of the PDF.

Example:
  • Personal CV title: "My Resume"

-subject

Set the subject of the PDF.

Example:
  • Technical position subject: "CV - Software Developer"

-author

Set the author of the PDF.

Example:
  • Document author name: "John Doe"

-keywords

Associate keywords with the document.

Example:
  • Technical skills for searchability: "software developer, Unix, databases"

-extract-meta-tags

Extract meta tags (author, keywords and description) from the input HTML and use them in the output PDF.

Default:
False
Allowed Values:
  • true, 1 or on
  • false, 0 or off

Viewer Preferences

These preferences specify how a PDF viewer should present the document. The preferences may be ignored by some PDF viewers.

-page-layout

Specify the page layout to be used when the document is opened.

Allowed Values:
  • single-page — Display one page at a time.
  • one-column — Display the pages in one column.
  • two-column-left — Display the pages in two columns, with odd-numbered pages on the left.
  • two-column-right — Display the pages in two columns, with odd-numbered pages on the right.

-page-mode

Specify how the document should be displayed when opened.

Allowed Values:
  • full-screen — Full-screen mode.
  • thumbnails — Thumbnail images are visible.
  • outlines — Document outline is visible.

-initial-zoom-type

Specify how the page should be displayed when opened.

Allowed Values:
  • fit-width — The page content is magnified just enough to fit the entire width of the page within the window.
  • fit-height — The page content is magnified just enough to fit the entire height of the page within the window.
  • fit-page — The page content is magnified just enough to fit the entire page within the window both horizontally and vertically. If the required horizontal and vertical magnification factors are different, use the smaller of the two, centering the page within the window in the other dimension.

-initial-page

Display the specified page when the document is opened.

Constraint:
  • Must be a positive integer.
Example:
  • Start at second page: 2

-initial-zoom

Specify the initial page zoom in percents when the document is opened.

Constraint:
  • Must be a positive integer.
Example:
  • Half-size zoom level: 50

-hide-toolbar

Specify whether to hide the viewer application's tool bars when the document is active.

Default:
False
Allowed Values:
  • true, 1 or on
  • false, 0 or off

-hide-menubar

Specify whether to hide the viewer application's menu bar when the document is active.

Default:
False
Allowed Values:
  • true, 1 or on
  • false, 0 or off

-hide-window-ui

Specify whether to hide user interface elements in the document's window (such as scroll bars and navigation controls), leaving only the document's contents displayed.

Default:
False
Allowed Values:
  • true, 1 or on
  • false, 0 or off

-fit-window

Specify whether to resize the document's window to fit the size of the first displayed page.

Default:
False
Allowed Values:
  • true, 1 or on
  • false, 0 or off

-center-window

Specify whether to position the document's window in the center of the screen.

Default:
False
Allowed Values:
  • true, 1 or on
  • false, 0 or off

-display-title

Specify whether the window's title bar should display the document title. If false , the title bar should instead display the name of the PDF file containing the document.

Default:
False
Allowed Values:
  • true, 1 or on
  • false, 0 or off

-right-to-left

Set the predominant reading order for text to right-to-left. This option has no direct effect on the document's contents or page numbering but can be used to determine the relative positioning of pages when displayed side by side or printed n-up

Default:
False
Allowed Values:
  • true, 1 or on
  • false, 0 or off

Data

Methods related to HTML template rendering.

-data-string

Set the input data for template rendering. The data format can be JSON, XML, YAML or CSV.

Example:
  • Template variables for mail merge: "{"recipient": "Anna May", "sender": "John Doe"}"

-data-file

Load the input data for template rendering from the specified file. The data format can be JSON, XML, YAML or CSV.

Example:
  • External data for template rendering: "/home/user/john/data.json"

-data-format

Specify the input data format.

Default:
auto
Allowed Values:
  • auto — the data format is auto detected
  • json
  • xml
  • yaml
  • csv

-data-encoding

Set the encoding of the data file set by setDataFile.

Default:
utf-8
Example:
  • Set to use Latin-2 encoding: "iso8859-2"

-data-ignore-undefined

Ignore undefined variables in the HTML template. The default mode is strict so any undefined variable causes the conversion to fail. You can use {% if variable is defined %} to check if the variable is defined.

Default:
False
Allowed Values:
  • true, 1 or on
  • false, 0 or off

-data-auto-escape

Auto escape HTML symbols in the input data before placing them into the output.

Default:
False
Allowed Values:
  • true, 1 or on
  • false, 0 or off

-data-trim-blocks

Auto trim whitespace around each template command block.

Default:
False
Allowed Values:
  • true, 1 or on
  • false, 0 or off

-data-options

Set the advanced data options:
  • csv_delimiter - The CSV data delimiter, the default is ,.
  • xml_remove_root - Remove the root XML element from the input data.
  • data_root - The name of the root element inserted into the input data without a root node (e.g. CSV), the default is data.
Examples:
  • Use semicolon to separate CSV data: "csv_delimiter=;"
  • Name the root of data rows and use the name in the template loop {% for row in rows %}...{% endfor %}: "data_root=rows"
  • Remove XML root so it the HTML template can be more simple: "xml_remove_root=1"

Miscellaneous

-debug-log

Turn on the debug logging. Details about the conversion are stored in the debug log. The URL of the log can be obtained from the getDebugLogUrl method or available in conversion statistics.

Default:
False
Allowed Values:
  • true, 1 or on
  • false, 0 or off

-tag

Tag the conversion with a custom value. The tag is used in conversion statistics. A value longer than 32 characters is cut off.

Example:
  • Track job in analytics: "client-1234"

-http-proxy

A proxy server used by the conversion process for accessing the source URLs with HTTP scheme. It can help to circumvent regional restrictions or provide limited access to your intranet.

Constraint:
  • The value must have format DOMAIN_OR_IP_ADDRESS:PORT.
Examples:
  • Corporate proxy server: "myproxy.com:8080"
  • Direct IP proxy connection: "113.25.84.10:33333"

-https-proxy

A proxy server used by the conversion process for accessing the source URLs with HTTPS scheme. It can help to circumvent regional restrictions or provide limited access to your intranet.

Constraint:
  • The value must have format DOMAIN_OR_IP_ADDRESS:PORT.
Examples:
  • Secure proxy for HTTPS: "myproxy.com:443"
  • Direct secure proxy IP: "113.25.84.10:44333"

-client-certificate

A client certificate to authenticate the converter on your web server. The certificate is used for two-way SSL/TLS authentication and adds extra security.

Constraint:
  • The file must exist and not be empty.
Example:
  • Custom CA certificate path: "/home/user/john/pdfcrowd.crt"

-client-certificate-password

A password for PKCS12 file with a client certificate if it is needed.

Example:
  • PKCS12 certificate password: "123456"

Tweaks

Expert options for fine-tuning output.

-layout-dpi

Set the internal DPI resolution used for positioning of PDF contents. It can help in situations when there are small inaccuracies in the PDF. It is recommended to use values that are a multiple of 72, such as 288 or 360.

Availability:
API client >= 5.0.0, converter >= 20.10. See versioning.
Constraint:
  • The accepted range is 72-600.
Default:
300
Example:
  • Low DPI for faster processing: 144

-content-area-x

Set the top left X coordinate of the content area. It is relative to the top left X coordinate of the print area.

Constraint:
  • The value must be specified in inches 'in', millimeters 'mm', centimeters 'cm', pixels 'px', or points 'pt'. It may contain a negative value.
Default:
0in
Examples:
  • Extend content beyond left margin: "-1in"
  • Slight inset from print edge: "10mm"

-content-area-y

Set the top left Y coordinate of the content area. It is relative to the top left Y coordinate of the print area.

Constraint:
  • The value must be specified in inches 'in', millimeters 'mm', centimeters 'cm', pixels 'px', or points 'pt'. It may contain a negative value.
Default:
0in
Examples:
  • Extend content beyond left margin: "-1in"
  • Slight inset from print edge: "10mm"

-content-area-width

Set the width of the content area. It should be at least 1 inch.

Constraint:
  • The value must be specified in inches 'in', millimeters 'mm', centimeters 'cm', pixels 'px', or points 'pt'.
Default:
The width of the print area.
Examples:
  • Content for letter-width viewport: "8in"
  • Content for A4 portrait layout: "210mm"

-content-area-height

Set the height of the content area. It should be at least 1 inch.

Constraint:
  • The value must be specified in inches 'in', millimeters 'mm', centimeters 'cm', pixels 'px', or points 'pt'.
Default:
The height of the print area.
Examples:
  • Content for letter-width viewport: "8in"
  • Content for A4 portrait layout: "210mm"

-contents-matrix

A 2D transformation matrix applied to the main contents on each page. The origin [0,0] is located at the top-left corner of the contents. The resolution is 72 dpi.

Availability:
API client >= 5.0.0, converter >= 20.10. See versioning.
Default:
1,0,0,0,1,0
Examples:
  • Fine tune the contents height: "1,0,0,0,1.001,0"
  • Translate the contents by -10 points in both directions: "1,0,-10,0,1,-10"

-header-matrix

A 2D transformation matrix applied to the page header contents. The origin [0,0] is located at the top-left corner of the header. The resolution is 72 dpi.

Availability:
API client >= 5.0.0, converter >= 20.10. See versioning.
Default:
1,0,0,0,1,0
Examples:
  • Fine tune the header contents height: "1,0,0,0,1.001,0"
  • Translate the header contents by -10 points in both directions: "1,0,-10,0,1,-10"

-disable-page-height-optimization

Disable automatic height adjustment that compensates for pixel to point rounding errors.

Availability:
API client >= 5.0.0, converter >= 20.10. See versioning.
Default:
False
Allowed Values:
  • true, 1 or on
  • false, 0 or off

-main-document-css-annotation

Add special CSS classes to the main document's body element. This allows applying custom styling based on these classes:
  • pdfcrowd-page-X - where X is the current page number
  • pdfcrowd-page-odd - odd page
  • pdfcrowd-page-even - even page
Availability:
API client >= 5.0.0, converter >= 20.10. See versioning.
Default:
False
Allowed Values:
  • true, 1 or on
  • false, 0 or off
Example:

-max-loading-time

Set the maximum time to load the page and its resources. After this time, all requests will be considered successful. This can be useful to ensure that the conversion does not timeout. Use this method if there is no other way to fix page loading.

Availability:
API client >= 5.15.0, converter >= 20.10. See versioning.
Constraint:
  • The accepted range is 10-30.

-conversion-config

Allows to configure conversion via JSON. The configuration defines various page settings for individual PDF pages or ranges of pages. It provides flexibility in designing each page of the PDF, giving control over each page's size, header, footer etc. If a page or parameter is not explicitly specified, the system will use the default settings for that page or attribute. If a JSON configuration is provided, the settings in the JSON will take precedence over the global options.

The structure of the JSON must be:

  • pageSetup: An array of objects where each object defines the configuration for a specific page or range of pages. The following properties can be set for each page object:
    • pages: A comma-separated list of page numbers or ranges. Special strings may be used, such as `odd`, `even` and `last`. For example:
      • 1-: from page 1 to the end of the document
      • 2: only the 2nd page
      • 2,4,6: pages 2, 4, and 6
      • 2-5: pages 2 through 5
      • odd,2: the 2nd page and all odd pages
    • pageSize: The page size (optional). Possible values: A0, A1, A2, A3, A4, A5, A6, Letter.
    • pageWidth: The width of the page (optional).
    • pageHeight: The height of the page (optional).
    • marginLeft: Left margin (optional).
    • marginRight: Right margin (optional).
    • marginTop: Top margin (optional).
    • marginBottom: Bottom margin (optional).
    • displayHeader: Header appearance (optional). Possible values:
      • none: completely excluded
      • space: only the content is excluded, the space is used
      • content: the content is printed (default)
    • displayFooter: Footer appearance (optional). Possible values:
      • none: completely excluded
      • space: only the content is excluded, the space is used
      • content: the content is printed (default)
    • headerHeight: Height of the header (optional).
    • footerHeight: Height of the footer (optional).
    • orientation: Page orientation, such as "portrait" or "landscape" (optional).
    • backgroundColor: Page background color in RRGGBB or RRGGBBAA hexadecimal format (optional).

Dimensions may be empty, 0 or specified in inches 'in', millimeters 'mm', centimeters 'cm', pixels 'px', or points 'pt'.

Availability:
API client >= 6.1.0, converter >= 24.04. See versioning.
Examples:
  • Modify the margins and orientation, and hide the header and footer on some pages.
    {
      "pageSetup": [
        {
          "pages": "1,3",
          "marginLeft": "72pt",
          "marginRight": "72pt",
          "marginTop": "72pt",
          "marginBottom": "72pt",
          "displayHeader": "content",
          "displayFooter": "none"
        },
        {
          "pages": "2-5",
          "orientation": "landscape",
          "marginTop": "0",
          "marginBottom": "0",
          "headerHeight": "1cm",
          "displayHeader": "content",
          "displayFooter": "none"
        },
        {
          "pages": "10",
          "pageWidth": "6in",
          "pageHeight": "10in",
          "displayHeader": "none",
          "displayFooter": "content"
        },
        {
          "pages": "last",
          "backgroundColor": "00ff0080"
        }
      ]
    }
    
  • A header is placed only on the first page, and a footer only on the last page. No space is occupied on other pages.
    {
      "pageSetup": [
        {
          "pages": "1-",
          "displayHeader": "none",
          "displayFooter": "none"
        },
        {
          "pages": "1",
          "displayHeader": "content"
        },
        {
          "pages": "last",
          "displayFooter": "content"
        }
      ]
    }
    

-conversion-config-file

Allows to configure the conversion process via JSON file. See details of the JSON string.

Availability:
API client >= 6.1.0, converter >= 24.04. See versioning.
Constraint:
  • The file must exist and not be empty.
Examples:
  • External conversion settings: "/home/user/john/conv_config.json"
  • see example of the JSON string

-converter-user-agent

Specifies the User-Agent HTTP header that will be used by the converter when a request is made to the converted web page.

Availability:
API client >= 6.4.0 See versioning.
Default:
latest-chrome-desktop
Allowed Values:
  • chrome-desktop — The user-agent for desktop chrome corresponding to the converter used.
  • chrome-mobile — The user-agent for mobile chrome corresponding to the converter used.
  • latest-chrome-desktop — The user-agent of the recently released Chrome browser on desktops.
  • latest-chrome-mobile — The user-agent of the recently released Chrome browser on mobile devices.
  • custom string — A custom string for the user agent.
Examples:
  • Mimic the recent chrome on mobiles: "latest-chrome-mobile"
  • Mimic Safari 18.0 browser: "Mozilla/5.0 (Macintosh; Intel Mac OS X 14_7_1) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.0 Safari/605.1.15"