dvipdfmx, xdvipdfmx, dvipdfm - produce PDF files directly from DVI
files
dvipdfmx or dvipdfm [options]
file[.dvi]
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).
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.
- -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 )
- -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.
- --kpathsea-debug
number
- Have Kpathsea output debugging information; `-1' for everything
(voluminous).
- -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).
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.
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.
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
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).
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.