ASCIIDOCTOR-PDF(1)

NAME
asciidoctor-pdf - converts AsciiDoc source files to PDF format

SYNOPSIS

asciidoctor-pdf [OPTION]... FILE...

DESCRIPTION

The asciidoctor-pdf(1) command converts the AsciiDoc source file(s) FILE to PDF format.

If FILE is - then the AsciiDoc source is read from standard input.

OPTIONS

  Security Settings

-B, --base-dir=DIR
    Base directory containing the document and resources. Defaults to the directory containing the source file, or the working directory if the source is read from a stream. When combined with the safe mode setting, can be used to chroot the execution of the program.

-S, --safe-mode=SAFE_MODE
    Set safe mode level: unsafe, safe, server or secure. Disables potentially dangerous macros in source files, such as include::[]. If not set, the safe mode level defaults to unsafe when Asciidoctor-pdf is invoked using this script.

--safe
    Set safe mode level to safe. Enables include directives, but prevents access to ancestor paths of source file. Provided for compatibility with the asciidoc command. If not set, the safe mode level defaults to unsafe when Asciidoctor-pdf is invoked using this script.

  Document Settings

-a, --attribute=ATTRIBUTE
    Define, override or delete a document attribute. Command-line attributes take precedence over attributes defined in the source file unless the value ends with @.

    ATTRIBUTE is normally formatted as a key-value pair, in the form NAME=VALUE. Alternate acceptable forms are NAME (where the VALUE defaults to an empty string), NAME! (unassigns the NAME attribute) and NAME=VALUE@ (where VALUE does not override value of NAME attribute if it’s already defined in the source document). Values containing spaces should be enclosed in quotes.

    This option may be specified more than once.

-d, --doctype=DOCTYPE
    Document type: article, book, manpage or inline. The book document type allows multiple level-0 section titles in a single document. The manpage document type enables parsing of metadata necessary to produce a man page. The inline document type allows the content of a single paragraph to be formatted and returned without wrapping it in a containing element. Defaults to article.

  Document Conversion

-D, --destination-dir=DIR
    Destination output directory. Defaults to the directory containing the source file, or the working directory if the source is read from a stream. If specified, the directory is resolved relative to the working directory.

-E, --template-engine=NAME
    Template engine to use for the custom converter templates. The gem with the same name as the engine will be loaded automatically. This name is also used to build the full path to the custom converter templates. If a template engine is not specified, it will be auto-detected based on the file extension of the custom converter templates found.

-e, --eruby
    Specifies the eRuby implementation to use for executing the custom converter templates written in ERB. Supported values are erb and erubis. Defaults to erb.

-I, --load-path=DIRECTORY
    Add the specified directory to the load path, so that -r can load extensions from outside the default Ruby load path. This option may be specified more than once.

-n, --section-numbers
    Auto-number section titles. Synonym for --attribute sectnums.

-o, --out-file=OUT_FILE
    Write output to file OUT_FILE. Defaults to the base name of the input file suffixed with backend extension. The file is resolved relative to the working directory. If the input is read from standard input or a named pipe (fifo), then the output file defaults to stdout. If OUT_FILE is -, then the output file is written to standard output.

-R, --source-dir=DIR
    Source directory. Currently only used if the destination directory is also specified. Used to preserve the directory structure of files converted within this directory in the destination directory. If specified, the directory is resolved relative to the working directory.

-r, --require=LIBRARY
    Require the specified library before executing the processor, using the standard Ruby require. This option may be specified more than once.

-s, --no-header-footer
    Output an embeddable document, which excludes the header, the footer, and everything outside the body of the document. This option is useful for producing documents that can be inserted into an external template.

-T, --template-dir=DIR
    A directory containing custom converter templates that override one or more templates from the built-in set. (requires tilt gem)

    If there is a subfolder that matches the engine name (if specified), that folder is appended to the template directory path. Similarly, if there is a subfolder in the resulting template directory that matches the name of the backend, that folder is appended to the template directory path.

    This option may be specified more than once. Matching templates found in subsequent directories override ones previously discovered.

  Processing Information

--failure-level=LEVEL
    The minimum logging level that triggers a non-zero exit code (failure). If this option is not set (default: FATAL), the program exits with a status code zero even if warnings or errors have been logged.

-q, --quiet
    Silence warnings.

--trace
    Include backtrace information on errors. Not enabled by default.

-v, --verbose
    Verbosely print processing information and configuration file checks to stderr.

-t, --timings
    Display timings information (time to read, parse and convert).

  Program Information

-h, --help [TOPIC]
    Print the help message. Show the command usage if TOPIC is not specified (or not recognized).

-V, --version
    Print program version number.

    -v can also be used if no other flags or arguments are present.

ENVIRONMENT

Asciidoctor-pdf honors the SOURCE_DATE_EPOCH environment variable. If this variable is assigned an integer value, that value is used as the epoch of all input documents and as the local date and time. See for more information about this environment variable.

EXIT STATUS

0
    Success.

1
    Failure (syntax or usage error; configuration error; document processing failure; unexpected error).

BUGS

Refer to the Asciidoctor issue tracker at

AUTHORS

Asciidoctor-pdf was written by Dan Allen, Ryan Waldron, Jason Porter, Nick Hengeveld and other contributors.

Asciidoctor was written by Dan Allen, Ryan Waldron, Jason Porter, Nick Hengeveld and other contributors.

AsciiDoc was written by Stuart Rackham and has received contributions from many other individuals.

RESOURCES

Project web site:

Git source repository on GitHub:

GitHub organization:

Discussion list / forum:

COPYING

Copyright (C) 2012-2018 Dan Allen, Ryan Waldron and the Asciidoctor Project. Free use of this software is granted under the terms of the MIT License.

AUTHORS

Dan Allen

Sarah White

Ryan Waldron