From the dvips man pages: \special OPTIONS This DVI driver allows the inclusion of POSTSCRIPT code to be inserted in a TeX file via TeX's \special command. For compatibility with other systems, several different conven- tions are supported. First, there's a flexible key-and-value scheme: \special{psfile="filename"[ key=value]*} This will download the POSTSCRIPT file called filname such that the current point will be the origin of the POSTSCRIPT coordinate system. If the filename string begins with the ` (grave accent) character then the remainder of the filnename field is treated as a Unix Bourne shell script to be exe- cuted with its sysout down loaded as a POSTSCRIPT file. For example: \special{psfile="`zcat packed.ps" ...} will uncompress the file packed.ps.Z for inclusion in dvips output. The optional key/value assignments allow you to specify transformations on the POSTSCRIPT in filename. The possible keys are: hoffset The horizontal offset (default 0) voffset The vertical offset (default 0) hsize The horizontal clipping size (default 612) vsize The vertical clipping size (default 792) hscale The horizontal scaling factor (default 100) vscale The vertical scaling factor (default 100) angle The rotation (default 0) The hoffset, voffset, hsize, and vsize are given in POSTSCRIPT units (1/72 of an inch), called bp elsewhere in TeX; these are the units of the default coordinate system assumed to be valid in the POSTSCRIPT file. The hscale and vscale are given in non-dimensioned percentage units, and the rotate value is specified in degrees. Thus \special{psfile=foo.ps hoffset=72 hscale=90 vscale=90} will shift the graphics produced by file foo.ps right by 1", and will draw it at 0.9 normal size. If either hsize or vsize is specified, the figure will be clipped to a rectangular region from (0,0) to (hsize,vsize) in default coordinates, after scaling, translation, and/or rotation. Otherwise no clipping will be done. Offsets are given rela- tive to the point of the \special command, and are unaf- fected by scaling or rotation. Rotation is counterclockwise about (0,0). The order of operations is: Take the POSTSCRIPT figure, rotate it, then scale it, then offset it, then clip it. For example, if you want to extract a one-inch-square figure bounded by (100,200), (172,200), (172,272), and (100,272) in the POSTSCRIPT coordinates of the graphic in cropthis.ps, you would say \special{psfile=cropthis.ps hoffset=-100 yoffset=-200 hsize=72 vsize=72} Secondly, if your file conforms to the Encapsulated PostScript (EPS) conventions, then it is possible to use a simpler \special command that will automatically reserve the required space. To use, simply say \input epsf % at the beginning of your TeX document \epsfbox{filename.ps} % at the place where you want the figure A vbox of the appropriate size for the bounding box will be built. The height and width of this vbox will be the height and width of the figure; the depth of the vbox will be zero. By default, the graphic will have its `natural' width. If you wish to enlarge or reduce it, simply set the dimension `\epsfxsize' to something else, such as `\hsize'; the figure will be scaled so that \epsfxsize is its final width. A more general facility for sizing is available by defining the `\epsfsize' macro. This macro is used to give \epsfx- size a value each time \epsffile is called. It takes two parameters; the first is the horizontal natural size of the POSTSCRIPT figure, and the second is the vertical natural size. (Natural size, in this case, is the size in POSTSCRIPT points from the bounding box comment.) The default definition of this macro is \def\epsfsize#1#2{\epsfxsize} which just means to take the value that was set before the macro was invoked. Note that the variable \epsfxsize is reset to zero at the end of each call to \epsffile. You can redefine this macro to do almost anything. It must return the xsize to use, or 0 if natural scaling is to be used. Common uses include: \epsfxsize % just leave the old value alone 0pt % use the natural sizes #1 % use the natural sizes \hsize % scale to full width 0.5#1 % scale to 50% of natural size \ifnum#1>\hsize\hsize\else#1\fi % smaller of natural, hsize The resultant vbox can be centered with \centerline, or treated as any other vbox. If you are using LaTeX and the center environment, be sure to execute a \leavevmode before each use of \epsffile, so that LaTeX leaves the vertical mode and enters the paragraph making mode. (This should probably be provided by the LaTeX macros themselves.) (The \epsfbox macro does its job by scanning filename.ps for a standard `BoundingBox' comment. The figure is clipped to the size of that bounding box. If the bounding box is not found, a bounding box of `72 72 540 720' is assumed. If the POSTSCRIPT file to be included is not EPSF, you are probably better off using the psfile special instead.)