dvipdfmx - Man Page
produce PDF files directly from DVI files
Synopsis
dvipdfmx or dvipdfm [options] file[.dvi]
Description
The program dvipdfmx generates a PDF file from a DVI file. DVI files are the output produced by TeX. groff can also generate DVI files using grodvi(-Tdvi).
In TeX Live, dvipdfm is another incarnation of dvipdfmx rather than a separate program. Compatibility is attempted as best as possible.
xdvipdfmx is another incarnation. It is used as the back end for xetex(1) and is not intended to be invoked directly.
dvipdfmx recognizes several commonly used \special commands, which are extensions to the DVI format. Specifically, it understands color specials, papersize specials, tpic specials (which allow it to be used with pic), hypertex specials, and some PostScript specials. These extensions allow documents to contain color, figures, and hyperlinks. The program tries to mimic the behavior of dvips where possible, so that many macro packages produced for use with dvips will also work with dvipdfmx. In addition, dvipdfmx understands its own specific \special commands to allow access to PDF features such as annotations and bookmarks.
As of December 2018, one such special specific to dvipdfmx is pdf:trailerid, which specifies the /ID in the PDF trailer. It is used like this (from the TeX level):
\special{pdf:trailerid [ (0123456789abcdef) (01234567890abcdef) ]}
That is, the special takes an array (the square brackets) of two 16-byte PDF strings (the parentheses). This is the same syntax as LuaTeX's \pdfvariable trailerid, while different from pdfTeX's \pdftrailerid. It must appear on the first output page, otherwise it is ignored.
Unrecognized specials will generate warning messages. Packages that may need a dvipdfm or dvipdfmx driver option include geometry, hyperref, bookmark, graphicx, and xcolor.
For issues related to bounding boxes (and hence image sizes), see extractbb(1).
Options
Unlike with many other programs, argument values must be separated from option names by a space, not an = sign; option names cannot be abbreviated; and - and -- cannot be used interchangeably.
- -c
 Ignore (or accept) color \specials. By default, color \specials are interpreted normally (changeable in the configuration file). The -c option may be used to produce a black and white document from a document containing color TeX \special commands.
- --dvipdfm
 Enable dvipdfm emulation mode. This is the default if the executable name is `dvipdfm'.
- -d number
 Specify the number of decimal digits in the PDF output; must be between 0 and 5, default is 2.
- -e
 Ignored, for (semi-)compatibility with dvipdfm.
- -f map_file
 Read the font map file given by map_file. The default map file in TeX Live is pdftex.map, as defined in the configuration file.
- --help
 Show a help message and exit successfully.
- -i cfgfile
 Read cfgfile as another include file, after reading the default dvipdfmx.cfg.
- --kpathsea-debug number
 Have Kpathsea output debugging information; `-1' for everything (voluminous).
- -l
 Select landscape mode. In other words, exchange the x and y dimensions of the paper.
- -m mag
 Magnify the input document by mag.
- -o filename
 Set the PDF output file name; use `-' for stdout. By default, the name of the output file is derived from the input, that is, file.pdf.
- -p paper
 Select the papersize by name (e.g., letter, legal, ledger, tabloid, a3, a4, or a5 )
- --pdfm-str-utf8
 Assume PDFMark strings in \special commands are encoded in UTF-8.
- -q
 Quiet mode.
- -r size
 Set resolution of bitmapped fonts to size dots per inch. Bitmapped fonts are generated by the Kpathsea library, which uses Metafont. Bitmapped fonts are included as Type 3 fonts in the PDF output file. Default is 600.
- -s page_specifications
 Select the pages of the DVI file to be processed; default is `-', meaning all pages. The page_specifications consists of a comma separated list of page_ranges:
page_specifications := page_specification[,page_specifications]
where
page_specification := single_page|page_range page_range := [first_page]-[last_page]
An empty first_page is treated as the first page of the DVI file, and an empty last_page is treated as the last page of the DVI file.
Examples:
- -s 1,3,5
 includes pages 1, 3, and 5;
- -s -
 includes all pages;
- -s -,-
 includes two copies of all pages in the DVI file; and
- -s 1-10
 includes the first ten pages of the DVI file.
- -t
 Search for thumbnail images of each page in the directory named by the TMPDIR environment variable. The thumbnail images must be named in a specific format: the same base name as the DVI file and the page number as the extension to the file name. dvipdfmx does not generate such thumbnails itself, but it is distributed with a wrapper program named dvipdft that does so.
- --version
 Show a help message and exit successfully.
- -v
 Increase verbosity. Results of the -v option are cumulative (e.g., -vv increases the verbosity by two increments). Maximum verbosity is four.
- -x x_offset
 Set the left margin to x_offset. The default left margin is 1.0in. The dimension may be specified in any units understood by TeX (e.g., bp, pt, in, cm).
- -y y_offset
 Set the top margin to y_offset. The default top margin is 1.0in. The dimension may be specified in any units understood by TeX (e.g., bpt, pt, in, cm).
- -z number
 Set the compression level to compression_level. Compression levels range from 0 (no compression) to 9 (maximum compression) and correspond to the values understood by zlib; default is 9.
- -C number
 Miscellaneous option flags; see the --help output for details.
- -D template
 PostScript to PDF conversion command line template; the default is taken from the configuration file, which also gives all the details and mentions several possibilities.
- -E
 Always try to embed fonts, ignoring licensing flags, etc.
- -I number
 Image cache life in hours; default is -2, meaning to not cache images at all. A value of -1 means to erase all old images and also new images; 0 means to erase all old images but leave new images.
- -K number
 Encryption key length; default 40.
- -M
 Process MetaPost PostScript output.
- -O number
 Set maximum depth of open bookmark items; default 0.
- -P number
 Set permission flags for PDF encryption; default 0x003C.
- -S
 Enable PDF encryption.
- -V number
 Set PDF minor version; default 5 (from the configuration file).
Image Bounding Boxes
When including images with dvipdfmx, their bounding boxes should be generated by running extractbb. The result will be in an .xbb file; the xbb information is the same as for the PDF format.
Environment
dvipdfmx uses the kpathsea library for locating the files that it opens. Hence, the environment variables documented in the Kpathsea library documentation influence dvipdfmx. It also uses the value of the environment variable TMPDIR as the directory to search for thumbnail images of each page.
Files
The precise location of the following files is determined by the Kpathsea library configuration. The location may be determined by using kpsewhich, e.g.,
kpsewhich -progname=dvipdfmx -format='other text files' dvipdfmx.cfg
- dvipdfmx.cfg
 Default configuration file
- dvipdfmx-unsafe.cfg
 Configuration file that runs Ghostscript without safety checks; use only for trusted source files. It is currently required to use PSTricks with XeTeX: xetex -output-driver="xdvipdfmx -i dvipdfmx-unsafe.cfg -q -E" ...
- pdftex.map
 The default font map file (this may be changed in the config file).
- *.tfm
 TeX font metrics
- *.vf
 TeX virtual font files
- *.pfb
 PostScript Type 1 font files
- texmf.cnf
 The Kpathsea library configuration file. The location of this file may be found by typing
kpsewhich texmf.cnf
See Also
dvipdft(1), extractbb(1),
tex(1), luatex(1), xetex(1), dvips(1),
groff(1), grodvi(1), pic(1), the Kpathsea library Info documentation (https://tug.org/kpathsea), and the Dvipdfmx User's Manual (in the distribution, and linked from https://tug.org/dvipdfmx).
Author
Primarily Mark A. Wicks; dvipdfmx extensions primarily by Jin-Hwan Cho, Shunsaku Hirata, and Matthias Franz. For the version in TeX Live, please send bugs and other reports to the maintainers at dvipdfmx (at) tug.org (https://lists.tug.org/dvipdfmx).
This man page edited for TeX Live by Bob Tennent and others. This man page is public domain.
Referenced By
dvipdft(1), dvispc(1), musixtex(1), updmap.cfg(5).
The man pages dvipdfm(1) and xdvipdfmx(1) are aliases of dvipdfmx(1).