PDF Options
Portable Document Format (PDF) is a file format developed by Adobe in 1992 to present documents, including text formatting and images, in a manner independent of application software, hardware, and operating systems. To learn more about PDF see https://en.wikipedia.org/wiki/PDF.
See the PDF format user guide for more details on creating PDF output with Quarto.
format: pdf
Format Options
pdf-engine |
Use the specified engine when producing PDF output. If the engine is not in your PATH, the full path of the engine may be specified here. If this option is not specified, Quarto uses the following defaults depending on the output format in use:
|
pdf-engine-opt |
Use the given string as a command-line argument to the pdf-engine. For example, to use a persistent directory foo for latexmk’s auxiliary files, use |
pdf-engine-opts |
Use the given strings passed as a array as command-line arguments to the pdf-engine. This is an alternative to |
beamerarticle |
Whether to produce a Beamer article from this presentation. |
quarto-required |
A semver version range describing the supported quarto versions for this document or project. Examples:
|
Table of Contents
toc |
Include an automatically generated table of contents (or, in the case of Note that if you are producing a PDF via |
toc-depth |
Specify the number of section levels to include in the table of contents. The default is 3 |
toc-title |
The title used for the table of contents. |
lof |
Print a list of figures in the document. |
lot |
Print a list of tables in the document. |
Numbering
number-sections |
Number section headings rendered output. By default, sections are not numbered. Sections with class |
number-depth |
By default, all headings in your document create a numbered section. You customize numbering depth using the For example, to only number sections immediately below the chapter level, use this:
|
number-offset |
Offset for section headings in output (offsets are 0 by default) The first number is added to the section number for top-level headings, the second for second-level headings, and so on. So, for example, if you want the first top-level heading in your document to be numbered “6”, specify |
shift-heading-level-by |
Shift heading levels by a positive or negative integer. For example, with |
top-level-division |
Treat top-level headings as the given division type ( The default behavior is to determine the best division type via heuristics: unless other conditions apply, |
Fonts
mainfont |
For HTML output, sets the CSS For LaTeX output, the main font family for use with For ConTeXt output, the main font family. Use the name of any system font. See ConTeXt Fonts for more information. |
monofont |
For HTML output, sets the CSS font-family property on code elements. For PowerPoint output, sets the font used for code. For LaTeX output, the monospace font family for use with For ConTeXt output, the monspace font family. Use the name of any system font. See ConTeXt Fonts for more information. |
fontsize |
For HTML output, sets the base CSS For LaTeX and ConTeXt output, sets the font size for the document body text. |
fontenc |
Allows font encoding to be specified through See LaTeX Font Encodings Guide for addition information on font encoding. |
fontfamily |
Font package to use when compiling a PDf with the See The LaTeX Font Catalogue for a summary of font options available. For groff ( |
fontfamilyoptions |
Options for the package used as For example, to use the Libertine font with proportional lowercase (old-style) figures through the
|
sansfont |
The sans serif font family for use with |
mathfont |
The math font family for use with |
CJKmainfont |
The CJK main font family for use with |
mainfontoptions |
The main font options for use with For example, to use the TeX Gyre version of Palatino with lowercase figures:
|
sansfontoptions |
The sans serif font options for use with |
monofontoptions |
The monospace font options for use with |
mathfontoptions |
The math font options for use with |
CJKoptions |
The CJK font options for use with |
microtypeoptions |
Options to pass to the microtype package. |
linestretch |
For HTML output sets the CSS For LaTeX output, adjusts line spacing using the setspace package, e.g. 1.25, 1.5. |
Colors
linkcolor |
For HTML output, sets the CSS For LaTeX output, The color used for internal links using color options allowed by For ConTeXt output, sets the color for both external links and links within the document. |
filecolor |
The color used for external links using color options allowed by |
citecolor |
The color used for citation links using color options allowed by |
urlcolor |
The color used for linked URLs using color options allowed by |
toccolor |
The color used for links in the Table of Contents using color options allowed by |
colorlinks |
Add color to link text, automatically enabled if any of |
Layout
cap-location |
Where to place figure and table captions ( |
fig-cap-location |
Where to place figure captions ( |
tbl-cap-location |
Where to place table captions ( |
documentclass |
The document class. |
classoption |
For LaTeX/PDF output, the options set for the document class. For HTML output using KaTeX, you can render display math equations flush left using |
pagestyle |
Control the |
papersize |
The paper size for the document. |
grid |
Properties of the grid system used to layout Quarto HTML pages. |
margin-left |
For HTML output, sets the For LaTeX output, sets the left margin if For ConTeXt output, sets the left margin if For |
margin-right |
For HTML output, sets the For LaTeX output, sets the right margin if For ConTeXt output, sets the right margin if For |
margin-top |
For HTML output, sets the For LaTeX output, sets the top margin if For ConTeXt output, sets the top margin if For |
margin-bottom |
For HTML output, sets the For LaTeX output, sets the bottom margin if For ConTeXt output, sets the bottom margin if For |
geometry |
Options for the geometry package. For example:
|
hyperrefoptions |
Options for the hyperref package. For example:
To customize link colors, please see the Quarto PDF reference. |
indent |
Whether to use document class settings for indentation. If the document class settings are not used, the default LaTeX template removes indentation and adds space between paragraphs For groff ( |
block-headings |
Make
|
Code
code-line-numbers |
Include line numbers in code block output ( For revealjs output only, you can also specify a string to highlight specific lines (and/or animate between sets of highlighted lines).
|
code-annotations |
The style to use when displaying code annotations. Set this value to false to hide code annotations. |
code-block-border-left |
Specifies to apply a left border on code blocks. Provide a hex color to specify that the border is enabled as well as the color of the border. |
code-block-bg |
Specifies to apply a background color on code blocks. Provide a hex color to specify that the background color is enabled as well as the color of the background. |
highlight-style |
Specifies the coloring style to be used in highlighted source code. Instead of a STYLE name, a JSON file with extension |
syntax-definitions |
KDE language syntax definition files (XML) |
listings |
Use the |
indented-code-classes |
Specify classes to use for all indented code blocks |
Execution
Execution options should be specified within the execute
key. For example:
execute:
echo: false
warning: false
eval |
Evaluate code cells (if
|
echo |
Include cell source code in rendered output.
|
output |
Include the results of executing the code in the output. Possible values:
|
warning |
Include warnings in rendered output. |
error |
Include errors in the output (note that this implies that errors executing code will not halt processing of the document). |
include |
Catch all for preventing any output (code or results) from being included in output. |
cache |
Cache results of computations (using the knitr cache for R documents, and Jupyter Cache for Jupyter documents). Note that cache invalidation is triggered by changes in chunk source code (or other cache attributes you’ve defined).
|
freeze |
Control the re-use of previous computational output when rendering.
|
Figures
fig-align |
Figure horizontal alignment ( |
fig-env |
LaTeX environment for figure output |
fig-pos |
LaTeX figure position arrangement to be used in Computational figure output that is accompanied by the code that produced it is given a default value of If |
fig-cap-location |
Where to place figure captions ( |
fig-width |
Default width for figures generated by Matplotlib or R graphics. Note that with the Jupyter engine, this option has no effect when provided at the cell level; it can only be provided with document or project metadata. |
fig-height |
Default height for figures generated by Matplotlib or R graphics. Note that with the Jupyter engine, this option has no effect when provided at the cell level; it can only be provided with document or project metadata. |
fig-format |
Default format for figures generated by Matplotlib or R graphics ( |
fig-dpi |
Default DPI for figures generated by Matplotlib or R graphics. Note that with the Jupyter engine, this option has no effect when provided at the cell level; it can only be provided with document or project metadata. |
fig-asp |
The aspect ratio of the plot, i.e., the ratio of height/width. When The |
Tables
tbl-colwidths |
Apply explicit table column widths for markdown grid tables and pipe tables that are more than Some formats (e.g. HTML) do an excellent job automatically sizing table columns and so don’t benefit much from column width specifications. Other formats (e.g. LaTeX) require table column sizes in order to correctly flow longer cell content (this is a major reason why tables > 72 columns wide are assigned explicit widths by Pandoc). This can be specified as:
|
tbl-cap-location |
Where to place table captions ( |
df-print |
Method used to print tables in Knitr engine documents:
The default printing method is |
References
bibliography |
Document bibliography (BibTeX or CSL). May be a single file or a list of files |
csl |
Citation Style Language file to use for formatting references. |
cite-method |
Method used to format citations ( |
citeproc |
Turn on built-in citation processing. To use this feature, you will need to have a document containing citations and a source of bibliographic data: either an external bibliography file or a list of |
biblatexoptions |
A list of options for BibLaTeX. |
natbiboptions |
One or more options to provide for |
biblio-style |
The bibliography style to use (e.g. |
biblio-title |
The bibliography title to use when using |
biblio-config |
Controls whether to output bibliography configuration for |
citation-abbreviations |
JSON file containing abbreviations of journals that should be used in formatted bibliographies when
|
link-citations |
If true, citations will be hyperlinked to the corresponding bibliography entries (for author-date and numerical styles only). Defaults to false. |
link-bibliography |
If true, DOIs, PMCIDs, PMID, and URLs in bibliographies will be rendered as hyperlinks. (If an entry contains a DOI, PMCID, PMID, or URL, but none of these fields are rendered by the style, then the title, or in the absence of a title the whole entry, will be hyperlinked.) Defaults to true. |
notes-after-punctuation |
If true (the default for note styles), Quarto (via Pandoc) will put footnote references or superscripted numerical citations after following punctuation. For example, if the source contains If false, the space will still be collapsed, but the footnote will not be moved after the punctuation. The option may also be used in numerical styles that use superscripts for citation numbers (but for these styles the default is not to move the citation). |
Footnotes
links-as-notes |
Causes links to be printed as footnotes. |
reference-location |
Specify location for footnotes. Also controls the location of references, if
|
Crossrefs
crossref |
Configuration for crossref labels and prefixes. |
Citation
citation |
Citation information for the document itself specified as CSL YAML in the document front matter. For more on supported options, see Citation Metadata. |
Language
lang |
Identifies the main language of the document using IETF language tags (following the BCP 47 standard), such as This affects most formats, and controls hyphenation in PDF output when using LaTeX (through |
language |
YAML file containing custom language translations |
dir |
The base script direction for the document ( For bidirectional documents, native pandoc When using LaTeX for bidirectional documents, only the |
Includes
include-before-body |
Include contents at the beginning of the document body (e.g. after the A string value or an object with key “file” indicates a filename whose contents are to be included An object with key “text” indicates textual content to be included |
include-after-body |
Include content at the end of the document body immediately after the markdown content. While it will be included before the closing A string value or an object with key “file” indicates a filename whose contents are to be included An object with key “text” indicates textual content to be included |
include-in-header |
Include contents at the end of the header. This can be used, for example, to include special CSS or JavaScript in HTML documents. A string value or an object with key “file” indicates a filename whose contents are to be included An object with key “text” indicates textual content to be included |
metadata-files |
Read metadata from the supplied YAML (or JSON) files. This option can be used with every input format, but string scalars in the YAML file will always be parsed as Markdown. Generally, the input will be handled the same as in YAML metadata blocks. Values in files specified later in the list will be preferred over those specified earlier. Metadata values specified inside the document, or by using |
Metadata
keywords |
List of keywords to be included in the document metadata. |
subject |
The document subject |
title-meta |
Sets the title metadata for the document |
author-meta |
Sets the author metadata for the document |
date-meta |
Sets the date metadata for the document |
Rendering
from |
Format to read from. Extensions can be individually enabled or disabled by appending +EXTENSION or -EXTENSION to the format name (e.g. markdown+emoji). |
output-file |
Output file to write to |
output-ext |
Extension to use for generated output file |
template |
Use the specified file as a custom template for the generated document. |
template-partials |
Include the specified files as partials accessible to the template for the generated content. |
filters |
Specify executables or Lua scripts to be used as a filter transforming the pandoc AST after the input is parsed and before the output is written. |
shortcodes |
Specify Lua scripts that implement shortcode handlers |
keep-md |
Keep the markdown file generated by executing code |
keep-ipynb |
Keep the notebook file generated from executing code. |
ipynb-filters |
Filters to pre-process ipynb files before rendering to markdown |
ipynb-shell-interactivity |
Specify which nodes should be run interactively (displaying output from expressions) |
plotly-connected |
If true, use the “notebook_connected” plotly renderer, which downloads its dependencies from a CDN and requires an internet connection to view. |
keep-tex |
Keep the intermediate tex file used during render. |
extract-media |
Extract images and other media contained in or linked from the source document to the path DIR, creating it if necessary, and adjust the images references in the document so they point to the extracted files. Media are downloaded, read from the file system, or extracted from a binary container (e.g. docx), as needed. The original file paths are used if they are relative paths not containing … Otherwise filenames are constructed from the SHA1 hash of the contents. |
resource-path |
List of paths to search for images and other resources. |
default-image-extension |
Specify a default extension to use when image paths/URLs have no extension. This allows you to use the same source for formats that require different kinds of images. Currently this option only affects the Markdown and LaTeX readers. |
abbreviations |
Specifies a custom abbreviations file, with abbreviations one to a line. This list is used when reading Markdown input: strings found in this list will be followed by a nonbreaking space, and the period will not produce sentence-ending space in formats like LaTeX. The strings may not contain spaces. |
dpi |
Specify the default dpi (dots per inch) value for conversion from pixels to inch/ centimeters and vice versa. (Technically, the correct term would be ppi: pixels per inch.) The default is |
html-table-processing |
If |
use-rsvg-convert |
If |
Latexmk
latex-auto-mk |
Use Quarto’s built-in PDF rendering wrapper (includes support for automatically installing missing LaTeX packages) |
latex-auto-install |
Enable/disable automatic LaTeX package installation |
latex-min-runs |
Minimum number of compilation passes. |
latex-max-runs |
Maximum number of compilation passes. |
latex-clean |
Clean intermediates after compilation. |
latex-makeindex |
Program to use for |
latex-makeindex-opts |
Array of command line options for |
latex-tlmgr-opts |
Array of command line options for |
latex-output-dir |
Output directory for intermediates and PDF. |
latex-tinytex |
Set to |
latex-input-paths |
Array of paths LaTeX should search for inputs. |
Text Output
ascii |
Use only ASCII characters in output. Currently supported for XML and HTML formats (which use entities instead of UTF-8 when this option is selected), CommonMark, gfm, and Markdown (which use entities), roff ms (which use hexadecimal escapes), and to a limited degree LaTeX (which uses standard commands for accented characters when possible). roff man output uses ASCII by default. |