| PDFTEX(1) | General Commands Manual | PDFTEX(1) |
NAME
pdftex, pdfetex - PDF output from TeX
SYNOPSIS
pdftex [options] [&format] [ file [ more-input ] | [ \more-input ]
DESCRIPTION
Run the pdfTeX typesetter on file[.tex], usually creating file.pdf. If the file argument has no extension, ".tex" will be appended to it. See tex(1) for details of command-line parsing.
pdfTeX is a descendant of TeX that can create pdf files directly as well as dvi files (determined by the value of the \pdfoutput primitive parameter). It includes the etex(1) extensions, and adds many more extensions of its own. In dvi mode, pdfTeX can be used as an upward-compatible replacement for the TeX engine.
The typical use of pdfTeX is with pregenerated TeX formats (.fmt files), usually with pdf output enabled. For example, the pdftex command uses the plain TeX format, and the pdflatex(1) command uses the LaTeX format. As described in etex(1), the e-TeX extensions are enabled when building the .fmt file.
Image formats supported
In pdf mode, pdfTeX can natively handle the pdf, jpg, jbig2, and png graphics formats. It cannot include PostScript or Encapsulated PostScript (eps) graphics files; you can convert them to pdf using, for example, epstopdf(1). The PostScript files output by mpost(1), which are highly restricted in their use of PostScript, can be handled directly using the supp-pdf.tex macros, or converted to pdf with mptopdf(1).
Program variants
Starting with version 1.40 (around 2007), pdfTeX incorporated the e-TeX extensions, and the pdfetex and etex executables became symlinks to the pdftex binary. The etex executable generates dvi files by default; pdfetex has the same behavior as pdftex.
Both engine and driver
When generating pdf output, pdfTeX must have all necessary font and device information and thus is acting like a device driver with dvi output, similar to, say, dvips(1). Therefore there are various primitives to specify the device information, such as the height, width, resolution, and so forth. Also, pdfTeX reads glyph information for the fonts used, e.g., from Type 1 or PK bitmap files. pdfTeX also supports TrueType fonts, but it's necessary to define an encoding before using them (see references). OpenType fonts are not supported.
OPTIONS
For the common TeX command-line options and handling, see tex(1). The following pdfTeX-specific options are also supported:
- -draftmode
- Enabled \pdfdraftmode, in which pdfTeX doesn't write a pdf and doesn't read any included images, thus speeding up execution.
- -etex
- Enable the e-TeX extensions. This option is only effective in combination with -ini. It is typically enabled implicitly, with a leading "*" on the format initialization file, as described in etex(1).
- -output-format format
- Set the output format mode; format must be either ``pdf'' or ``dvi''.
- -synctex number
- generate SyncTeX data for previewers according to bits of number. See synctex(1).
ENVIRONMENT
See tex(1). Also, this environment variable is specific to pdfTeX:
- TEXMF_DEBUG_PNG_COPY
- If set to "1", pdfTeX reports various attributes of each png image, including whether the image is copied. This is useful when a document uses numerous png images, since reencoding (instead of copying) can take considerable time. See the Graphics chapter in the pdfTeX manual for more information.
Also, these environment variables are considered for all engines except original TeX:
- SOURCE_DATE_EPOCH
- If set, its value, taken to be in epoch-seconds, will be used for the timestamps in the PDF output, such as the CreationDate and ModDate keys. This is useful for making reproducible builds.
- FORCE_SOURCE_DATE
- If set to the value "1", the time-related TeX primitives
(\year, \month, \day, \time) are also
initialized from the value of SOURCE_DATE_EPOCH. This is not recommended
if there is any viable alternative.
pdfTeX also has several primitives to support reproducible builds; see the manual.
FILES
See tex(1). Also:
- $TEXMFMAIN/tex/plain/config/etex.ini
- The driver file that builds the plain format files for pdfTeX, pdftex.fmt and pdfetex.fmt, in TeX Live.
- $TEXMFMAIN/tex/plain/config/pdftexmagfix.tex
- Make \magnification work as expected under pdfTeX. Included in the format files.
- $TEXMFMAIN/tex/generic/tex-ini-files/pdftexconfig.tex
- Define shared pdf settings, such as the default pdf version, the pdf height and width, etc.
- $TEXMF[SYS]CONFIG/tex/generic/tex-ini-files/pdftexconfig.tex
- The installation-specific version of the above (in TeX Live), since the default paper size is defined by the installation.
- $TEXMF[SYS]VAR/fonts/map/pdftex/updmap/pdftex.map
- Mapping of tfm files to Type 1 fonts; generally maintained automatically in TeX Live.
BUGS
See tex(1).
SEE ALSO
epstopdf(1), etex(1), luatex(1), mptopdf(1), tex(1).
Micro-typographic extensions to the TeX typesetting system, by
Hàn The Thành (thesis describing the major new typesetting
feature in pdfTeX): https://tug.org/TUGboat/tb21-4/
A closer look at TrueType fonts and pdfTeX, by Hàn The Thành (on
using TrueType fonts with TeX): https://tug.org/TUGboat/tb30-1/tb94thanh.pdf
pdfTeX home page: https://www.pdftex.org
Package page on CTAN: https://ctan.org/pkg/pdftex
pdfTeX manual: https://mirror.ctan.org/systems/doc/pdftex/manual/pdftex-a.pdf
Web2c manual: https://tug.org/web2c
Kpathsea manual: https://tug.org/kpathsea
Sources for the TeX-world literate programs, as pdf:
https://ctan.org/pkg/knuth-pdf
AUTHORS
TeX was created by Donald E. Knuth. The primary author of the pdfTeX enhancements is Hàn The Thành, with major contributions from Petr Sojka, Jiri Zlatuska, and Peter Breitenlohner (e-TeX).
Public discussion list for pdfTeX-specific issues:
https://lists.tug.org/pdftex
Public discussion list for TeX Live: https://lists.tug.org/tex-live
Public discussion list for all things TeX (and LaTeX):
https://lists.tug.org/texhax
| 14 February 2026 | Web2C 2026 |