# dvips - convert a TeX DVI file to PostScript - man(1) - [phpMan]

[_DVIPS_(1)](https://www.chedong.com/phpMan.php/man/DVIPS/1/markdown)                               General Commands Manual                              [_DVIPS_(1)](https://www.chedong.com/phpMan.php/man/DVIPS/1/markdown)

## NAME
       dvips - convert a TeX DVI file to PostScript

## SYNOPSIS
       **dvips **[_OPTIONS_] _file_[**.dvi**]

## DESCRIPTION
       THIS MAN PAGE IS OBSOLETE!  See the Texinfo documentation instead.  You can read it either in
       Emacs or with the standalone **info **program.

       The  program  **dvips  **takes  a DVI file _file_[**.dvi**] produced by TeX (or by some other processor
       such as GFtoDVI) and converts it to PostScript, sending the output to a file or directly to a
       printer.  The DVI file may be specified without the **.dvi **extension.  Fonts used may either be
       resident in the printer or defined as bitmaps in PK files,  or  a  `virtual'  combination  of
       both.   If the **mktexpk **program is installed, **dvips **will automatically invoke METAFONT to gen‐
       erate fonts that don't already exist.

       For more information, see the Texinfo manual _dvips.texi_, which should be installed  somewhere
       on your system, hopefully accessible through the standard Info tree.

## OPTIONS
### -a     
              loading those characters actually used.  Generally only useful on machines with a very
              limited amount of memory, like some PCs.

### -A     

### -b num 
              _#numcopies_ option.  This can be useful in conjunction with a header file setting _\bop-_
              _hook_ to do color separations or other neat tricks.

### -B     

### -c num 
              option below.)

### -C num 
              Slower  than  the _-c_ option, but easier on the hands, and faster than resubmitting the
              same PostScript file multiple times.

### -d num 
              ing  expeditions;  it will work only if **dvips **has been compiled with the DEBUG option.
              If nonzero, prints additional information on standard error.  For maximum information,
              you can use `-1'.  See the Dvips Texinfo manual for more details.

### -D num 
              fonts  that  are  loaded  and  also  the positioning of letters in resident PostScript
              fonts. Must be between 10 and 10000.  This affects both the  horizontal  and  vertical
              resolution.   If  a high resolution (something greater than 400 dpi, say) is selected,
              the _-Z_ flag should probably also be used.

### -e num 
              lution-independent position on the page. The default value of this parameter is  reso‐
              lution  dependent.   Allowing  individual  characters  to `drift' from their correctly
              rounded positions by a few pixels, while regaining the true position at the  beginning
              of each new word, improves the spacing of letters in words.

### -E     
              works on one-page files, and it only looks at marks made by characters and rules,  not
              by  any  included graphics.  In addition, it gets the glyph metrics from the _tfm_ file,
              so characters that lie outside their enclosing _tfm_ box may confuse it.   In  addition,
              the  bounding box might be a bit too loose if the character glyph has significant left
              or right side bearings.  Nonetheless, this option works well for creating  small  EPSF
              files  for  equations  or  tables or the like.  (Note, of course, that **dvips **output is
              resolution dependent and thus does not make very good EPSF files,  especially  if  the
              images are to be scaled; use these EPSF files with a great deal of care.)

### -f     
              standard output.  The standard input must be seekable, so it cannot be a pipe.  If you
              must use a pipe, write a shell script that copies the pipe output to a temporary  file
              and  then  points **dvips **at this file.  This option also disables the automatic reading
              of the _PRINTER_ environment variable, and turns off the automatic sending of control  D
              if it was turned on with the _-F_ option or in the configuration file; use _-F_ after this
              option if you want both.

### -F     
              Script  file.   This  is  useful when **dvips **is driving the printer directly instead of
              working through a spooler, as is common on extremely small systems.  NOTE! DO NOT  USE
              THIS OPTION!

### -G     
              be useful sometimes.

### -h name
              Prepend file _name_ as an additional header file. (However, if the name  is  simply  `-'
              suppress  all header files from the output.)  This header file gets added to the Post‐
              Script _userdict_.

### -i     
              the document up into `sections' to be processed independently; this is most often done
              for  memory reasons.  Using this option tells **dvips **to place each section into a sepa‐
              rate file; the new file names are created replacing the suffix of the supplied  output
              file  name  by  a three-digit sequence number.  This option is most often used in con‐
              junction with the _-S_ option which sets the maximum section length in pages.   For  in‐
              stance,  some  phototypesetters cannot print more than ten or so consecutive pages be‐
              fore running out of steam; these options can be used to  automatically  split  a  book
              into ten-page sections, each to its own file.

### -j     
              release.  Some debugging flags trace this operation.  You  can  also  control  partial
              downloading on a per-font basis, via the **psfonts.map **file.

### -k     
              either with a paper size special or with the _-T_ option) by a half inch in each  dimen‐
              sion.  It translates each page by a quarter inch and draws cross-style crop marks.  It
              is mostly useful with typesetters that can set the page size automatically.

### -K     
              to be removed.  This is sometimes necessary to get around bugs in  spoolers  or  Post‐
              Script post-processing programs.  Specifically, the %%Page comments, when left in, of‐
              ten  cause  difficulties.   Use of this flag can cause some included graphics to fail,
              since the PostScript header macros from some software packages read  portions  of  the
              input  stream  line by line, searching for a particular comment.  This option has been
              turned off by default because PostScript previewers and  spoolers  have  been  getting
              better.

### -l num 
              the document.  If the _num_ is prefixed by an equals sign, then it (and any argument  to
              the  _-p_  option)  is treated as a sequence number, rather than a value to compare with
              _\count0_ values.  Thus, using _-l_ _=9_ will end with the ninth page of  the  document,  no
              matter what the pages are actually numbered.  On the other hand, if _num_ is suffixed by
              `.SEQ', the SEQth occurrence of _num_ is used; for example, _-l_ _99.2_ says to end process‐
              ing with the second page numbered 99 in the document.

### -m     

### -mode mode
              Use  _mode_  as  the  Metafont device name for path searching and font generation.  This
              overrides any value from configuration files.   With  the  default  paths,  explicitly
              specifying  the  mode  also  makes  the program assume the fonts are in a subdirectory
              named _mode_.

### -M     
              to  generate the fonts are appended to the file _missfont.log_ in the current directory;
              this file can then be executed and deleted to create the missing fonts.

### -n num 

### -N     
              terpret PostScript comments in weird ways, or on some PostScript printers.   Old  ver‐
              sions of TranScript in particular cannot handle modern Encapsulated PostScript.

### -noomega
              This  will  disable  the  use of Omega extensions when interpreting DVI files.  By de‐
              fault, the additional opcodes _129_ and _134_ are recognized by dvips as Omega or pTeX ex‐
              tensions and interpreted as requests to set 2-byte characters.

### -noptex
              This will disable the use of pTeX extensions when interpreting DVI files.  By default,
              the additional opcodes _130_ and _135_ are recognized by dvips as pTeX extensions and  in‐
              terpreted as requests to set 3-byte characters, and _255_ as request to change the type‐
              setting direction.

              The  only  drawback is that the virtual font array will (at least temporarily) require
              65536 or more positions instead of the default 256 positions,  i.e.,  the  memory  re‐
              quirements  of  dvips  will  be somewhat larger.  If you find this unacceptable or en‐
              counter another problem with the Omega or pTeX extensions, you can switch off the pTeX
              extension by using **-noptex**, or both by using **-noomega **(but please do send a bug report
              if you find such problems - see the bug address in the **AUTHORS **section below).

### -o name
              The output will be sent to file _name_ If no file name is given (i.e., -o is last on the
              command line), the default name is _file.ps_ where the .dvi file was called _file.dvi_; if
              this option isn't given, any default in the configuration file is used.  If the  first
              character  of the supplied output file name is an exclamation mark, then the remainder
              will be used as an argument to _popen_; thus, specifying _!lpr_ as the  output  file  will
              automatically  queue  the  file for printing.  This option also disables the automatic
              reading of the _PRINTER_ environment variable, and turns off the  automatic  sending  of
              control  D if it was turned on with the _-F_ option or in the configuration file; use _-F_
              after this option if you want both.

### -O offset
              Move the origin by a certain amount.  The _offset_ is a comma-separated pair  of  dimen‐
              sions,  such  as  _.1in,-.3cm_  (in the same syntax used in the _papersize_ special).  The
              origin of the page is shifted from the default position (of one inch down, one inch to
              the right from the upper left corner of the paper) by this amount.

### -p num 

### -pp pagelist
              A comma-separated list of pages and ranges (a-b) may be given, which  will  be  inter‐
              preted  as _\count0_ values.  Pages not specified will not be printed.  Multiple **-pp **op‐
              tions may be specified or all pages and page ranges can be specified with one **-pp  **op‐
              tion.

### -P printername
              Sets  up  the  output  for the appropriate printer.  This is implemented by reading in
              _config.printername_ , which can then set the output pipe (as in, _!lpr_ _-Pprintername_  as
              well  as  the font paths and any other _config.ps_ defaults for that printer only.  Note
              that _config.ps_ is read before _config.printername_  In  addition,  another  file  called
              _~/.dvipsrc_ is searched for immediately after _config.ps_; this file is intended for user
              defaults.  If no _-P_ command is given, the environment variable _PRINTER_ is checked.  If
              that  variable  exists, and a corresponding configuration file exists, that configura‐
              tion file is read in.

### -q     
              rors to standard error.

### -r     

### -R[0|1|2]
              Run securely.  **-R2 **disables both shell command execution in _\special'{}_ (via backticks
              **` **) and config files (via the _E_ option), and opening of any absolute filenames.  **-R1 **,
              the  default,  forbids  shell escapes but allows absolute filenames.  **-R0 **allows both.
              The config file option is _z_

### -s     
              the file to not be truly conformant, and is thus not recommended, but is useful if you
              are  driving the printer directly and don't care too much about the portability of the
              output.

### -S num 
              with the _-i_ option; see that documentation above for more information.

### -t papertype
              This  sets the paper type to _papertype_.  The _papertype_ should be defined in one of the
              configuration files, along with the appropriate code to select it.   (Currently  known
              types  include  **letter**,  **legal**,  **ledger**,  **a4**, **a3**).  You can also specify **-t landscape**,
              which rotates a document by 90 degrees.  To rotate a document whose size is  not  let‐
              ter,  you can use the _-t_ option twice, once for the page size, and once for landscape.
              You should not use any _-t_ option when the DVI file already contains a  _papersize_  spe‐
              cial, as is done by some LaTeX packages, notably hyperref.sty.

              The  upper  left corner of each page in the _.dvi_ file is placed one inch from the left
              and one inch from the top.  Use of this option is highly dependent on  the  configura‐
              tion  file.   Note that executing the **letter **or **a4 **or other PostScript operators cause
              the document to be nonconforming and can cause it not to print on certain printers, so
              the paper size should not execute such an operator if at all possible.

### -T papersize
              Set the paper size to the given pair of dimensions.  This option takes  its  arguments
              in the same style as _-O_.  It overrides any paper size special in the dvi file.

### -u psmapfile
              Set  _psmapfile_  to be the file that dvips uses for looking up PostScript font aliases.
              If _psmapfile_ begins with a **+ **character, then the rest of the name is used as the  name
              of the map file, and the map file is appended to the list of map files (instead of re‐
              placing  the list).  In either case, if _psmapfile_ has no extension, then **.map **is added
              at the end.

### -U     
              ric information in the same string that is used to store the bitmap information.  This
              is only necessary when driving the Xerox 4045 PostScript interpreter.  It is caused by
              a bug in that interpreter that results in `garbage' on the bottom of  each  character.
              Not recommended unless you must drive this printer.

### -v     

### -V     
              `pstopk' or some other such program(s) in order to generate the required bitmap fonts;
              these programs are supplied with **dvips**.

### -x num 
              .dvi file.  Must be between 10 and 100000.  Instead of an integer, _num_ may be  a  real
              number for increased precision.

### -X num 

### -y num 
              file.  See **-x **above.

### -Y num 

### -z     
              This  is not enabled by default to avoid including the header files unnecessarily, and
              use of temporary files in creating the output.

### -Z     
              the  size  of  the PostScript font-downloading information.  Especially useful at high
              resolutions or when very large fonts are used.  Will slow down printing somewhat,  es‐
              pecially on early 68000-based PostScript printers.

## SEE ALSO
       [afm2tfm(1)](https://www.chedong.com/phpMan.php/man/afm2tfm/1/markdown), [tex(1)](https://www.chedong.com/phpMan.php/man/tex/1/markdown), [mf(1)](https://www.chedong.com/phpMan.php/man/mf/1/markdown), [dvitype(1)](https://www.chedong.com/phpMan.php/man/dvitype/1/markdown), [lpr(1)](https://www.chedong.com/phpMan.php/man/lpr/1/markdown), _dvips.texi_, <https://tug.org/dvips>.

## ENVIRONMENT
       Dvipsk  uses  the same environment variables and algorithms for finding font files as TeX and
       its friends do.  See the documentation for the Kpathsea library for details.   (Repeating  it
       here is too cumbersome.)

       KPATHSEA_DEBUG: Trace Kpathsea lookups; set to -1 for complete tracing.

       PRINTER: see above.

## NOTES
       PostScript is a registered trademark of Adobe Systems Incorporated.

## AUTHOR
       Tomas Rokicki; extended to virtual fonts by Don Knuth.  Path searching and configuration mod‐
       ifications by Karl Berry.

       Maintained  in  TeX  Live;  please  send bug reports or other correspondence to <tex-k@tug.org>
       (<https://lists.tug.org/tex-k>).

                                           24 October 2021                                  [_DVIPS_(1)](https://www.chedong.com/phpMan.php/man/DVIPS/1/markdown)
