---
name: "dvi2ps"
section: "1"
platform: "linux"
package: "dvi2ps"
version: "5.1j-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/dvi2ps"
---

# dvi2ps(1)

convert a DVI file to PostScript

## NAME

dvi2ps - convert a DVI file to PostScript

## SYNOPSIS

**dvi2ps** \[**-D** *var=val*\] \[**-F** *fontdesc*\] \[**-K**\] \[**-R** *n*\] \[**-S**\] \[**-c** *output-file*\] \[**-d**\] \[**-f** *n*\] \[**-i** *file*\] \[**-m** *n*\] \[**-n** *n*\] \[**-o** *str*\] \[**-q**\] \[**-r**\] \[**-s** *file*\] \[**-t** *n*\] \[**-w**\] \[*dvifile*\[**.dvi**\]\]

## DESCRIPTION

This program converts a DVI file to PostScript, and writes the result to standard output.  If no *dvifile* is given, it reads from standard input. The setting for the printer is given by the fontdesc file.

## OPTIONS

- **-D** *var=val*

  specify a value of a variable *var* as *val.*

- **-F** *fontdesc*

  specify a fontdesc file.

- **-K**

  remove comments from included PS files.

- **-R** *n*

  specify the resolution of the printer (n dpi).

- **-S**

  turn on printing of statistics. Some versions of *dvi2ps* will optionally print statistics about font usage and some other information that is generally only  interesting to developers.  On these systems, **-S** turns on the statistics printing.

- **-c** *output-file*

  write the output to *output-file* instead of the standard output.

- **-d**

  select debugging output (you probably don't want to).

- **-f** *n*

  specify a starting page number (this is a TeX page number - \\count0).

- **-i** *file*

  copy the named file to the output. The contents of the file named will be copied to the Prolog-part (cf. PostScript Document Structuring Convention) of the output.

- **-m0** \| **-mh** \| **-m1** \| **-m2** \| **-m3** \| **-m4** \| **-m5**

  specify a magstep to use to print the document.  This overrides whatever might be in the DVI file.

- **-m** *n*

  specify a magnification to use to print the document. Magic numbers 1000, 1095, 1200, 1440, 1728, 2074 or 2488 correspond to above magsteps.

- **-n** *n*

  specify the number of copies to print.

- **-o** *str*

  specify a printing option. Valid options are **letter**, **note**, **legal**, **tabloid**, **a3**, **a4**, **a5**, **b4**, **b5**, **landscape**, **letterlandscape**, **notelandscape**, **legalenvelope**, **tabloidlandscape**, **a3landscape**, **a4landscape**, **a5landscape**, **b4landscape**, **b5landscape**, **envelope**, **large**, **small**, and **manualfeed**. This argument may be repeated several times. **envelope** is a variant of **landscape** that selects manual feed and does proper positioning for regular envelopes.

- **-q**

  be quiet. Don't chatter about pages converted, etc.

- **-r**

  stack pages in reverse order.   Normally, the DVI pages are processed in reverse order, with the result that they are stacked in the correct order in the output tray.  This option reverses that.

- **-s** *file*

  copy the named file to the output. The contents of the file named will be copied to the Setup-part (cf. PostScript Document Structuring Convention) of the output.

- **-t** *n*

  specify an ending page number.

- **-w**

  Don't print out warnings.

## NOTES

This is a \`bare bones' DVI-to-PostScript program.  Minimal error checking is done.

Not all fonts are available in the resolution needed to display on the  laser printer;  when a missing font is encountered, *dvi2ps* will continue  to process your DVI file, and will log a warning message. Gaps will  appear in the document where the missing characters should have been.

It can take up to 60 seconds for the first page to be output.  After a head of steam has been built up, it can roll along at 5-10 seconds per page.

## PostScript ILLUSTRATIONS

This program supports use of the **\\special** command in TeX to include special PostScript code for graphics, etc.  Specifying **\\special{psfile=foo.ps}** in the TeX source will result in the contents of file *foo.ps* (assumed to contain PostScript code) being copied  into the output at that point.  For most included graphics, the user's (0,0) point will be set to the point of the **\\special** command with *x* and *y* coordinates increasing up and to the right and in units of PostScript points (72/inch) — thus you must explicitly leave space above the **\\special** command for most graphics.  For graphics produced by  Apple Macintoshes (i.e., MacDraw, MacPaint, etc.), the top left corner of  the drawing will be at the point of the **\\special** command; in this case you must leave the required space below the **\\special**.

The **\\special** string can contain any number of the following  *keyword=value* pairs, separated by blanks:

- *Keyword Value Type*

  *(dimensions in points: 72 pt = 1 in)*

- *psfile string*

  *- PostScript file to include*

- *epsfile string*

  *- Encapsulated PostScript file to include*

- *hsize dimension*

  *- maximum horizontal size (for clipping)*

- *vsize dimension*

  *- maximum vertical size (for clipping). Use negative values to specify a* *clipping region below the current position.*

- *hoffset dimension*

  *- amount to shift right*

- *voffset dimension*

  *- amount to shift up*

- *hscale number*

  *- scale factor in x-dimension*

- *vscale number*

  *- scale factor in y-dimension*

- *rotation number*

  *- counter-clockwise rotation angle*

*Thus:*\
 **\\special{psfile=foo.ps hoffset=72 hscale=0.9 vscale=0.9}** *will shift the graphics produced by file* *foo.ps* *right by* *1", and will draw it at 0.9 normal size.*

**hsize** *and* **vsize** *are given relative to the (0,0) point of the* *drawing and are unaffected by offsets and scales.*

*Offsets are given relative to the point of the* **\\special** *command,* *and are unaffected by scales.*

*If Macintosh drawings are to be included, the proper LaserPrep file* *must be downloaded to the printer, either permanently or as another* *header file in addition to the standard* *tex.ps* *header file.*

## FILES

- *\*.dvi*

  *TeX DeVice Independent output file*

- */usr/local/share/texmf/fonts/.../*

  *default font file directories*

- */usr/local/lib/dvi2ps/fontdesc*

  *default fontdesc file*

## SEE ALSO

*[tex(1)](/tex/1.md)*

## BUGS

*There is likely a limit to the size of documents that can be printed (at*  *least, on the Apple LaserWriter).  If you get VMerrors reported when*  *printing, use the* **-f** *and* **-t** *options, to select a range of pages.* *The exact limit is unknown, but is probably well in excess of 50 pages* *for \`normal' documents, decreasing with number of different fonts used,* *size of fonts, etc.*

## AUTHORS

*Mark Senn wrote the early versions of this program for the* *BBN BitGraph.  Stephan Bechtolsheim, Bob Brown, Richard* *Furuta, James Schaad and Robert Wells improved it.  Norm* *Hutchinson ported the program to the Sun.  Neal Holtz ported* *it to the Apollo, and then to produce PostScript.* *Jean-Francois Lamy fixed the interface for PostScript illustrations.*

*(PostScript is a trademark of Adobe Systems, Inc.)*
