DataMuseum.dk

Presents historical artifacts from the history of:

DKUUG/EUUG Conference tapes

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about DKUUG/EUUG Conference tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download
Index: T p

⟦19d46f8ef⟧ TextFile

    Length: 28510 (0x6f5e)
    Types: TextFile
    Names: »plot2ps.texinfo«

Derivation

└─⟦a05ed705a⟧ Bits:30007078 DKUUG GNU 2/12/89
    └─⟦148e64aa4⟧ »./plot2ps.tar.Z« 
        └─⟦ff7617d1d⟧ 
            └─⟦this⟧ »plot2ps.texinfo« 

TextFile

\input texinfo   @c -*-texinfo-*-
@setfilename plot2ps.info
@settitle plot2ps

@ifinfo
This file documents plot2ps, a Unix plot file to postscript converter.

Copyright @copyright{} 1989 Free Software Foundation, Inc.
@end ifinfo

@titlepage
@sp10
@center @titlefont{plot2ps}
@sp2
@center A Unix plot to postscript file conversion utility
@sp2
@center Carey Richard Murphey
@vskip 0pt plus 1filll
Copyright @copyright{} 1989 Free Software Foundation
@end titlepage

@node    Top,       Introduction, (dir),    (dir)
@menu
* Introduction::     The @code{plot2ps} utility
* Options::          Command Line Options
* Examples::         Examples Using @code{plot2ps}
* LaTeX Example::    Including a Figure in an Article
* psfig::            Options to @code{psfig} for Including Figures
* dvi2ps::           How to Get @code{dvi2ps}, a Postscript Printer Driver for TeX
* idraw::            How to Get @code{idraw}, an Interactive Graphics Editor
* xps::              How to Get @code{xps}, a X Windows Postscript Viewer
* Acknowledgements:: The Contributors
* libps::            The Library of Plot Functions for Postscript Output
* files::            The Unix Plot File Format
* Function Index::   An Index to the libps Functions

@end menu

@node     Introduction,  Options, Top,      Top
@chapter The @code{plot2ps} Utility

@code{plot2ps} is a utility for converting Unix plot files into
postscript.  The @code{plot2ps} utility reads plotting commands from
named files or the standard input and writes postscript to the
standard output.  You can then print the postscript output on a
printer, or edit it using the @code{idraw} graphics editor.  You can
also easily include the output in LaTeX documents using @code{dvi2ps}
and the LaTeX command @code{psfig}.@refill

Why is this useful? The plot file format is a commonly supported
format for producing graphics on Unix systems.  To produces figures
for publication you might need to take these graphics and label them
to make figures.  This can be done using @code{plot2ps} and the
@code{idraw} editor, an interactive @samp{what you see is what you
get} graphics editor.  Last, @code{dvi2ps} makes it easy to include
these figures in LaTeX documents.  All of these steps are discussed in
the following sections, followed by a discussion of the plot file
format and the plot library functions.@refill

@node    Options,    Examples,  Introduction, Top
@section Command Line Options

@code{plot2ps} is a relatively simple utility in that there are few
command line options to choose from.  The Unix plot file format does
not contain methods for specifying font or font size, so you must
specify these things with options.  There are no other options for
controlling the picture.@refill

The Unix plot file format is machine dependent on the byte order of
unformatted, signed, two byte integer coordinates contained in plot
commands.  The @samp{-high-byte-first} or @samp{-low-byte-first}
option specifies this order explicitly.  @code{plot2ps} attempts to
determine the byte order from commands early in the plot file, but the
method is heuristic and is not foolproof.  Several standard plot sizes
specified by the @code{open} command are used to recognize byte order
by @code{plot2ps}.  If these sizes are recognized in byte reversed
order, @code{plot2ps} adjusts accordingly.  These sizes include
504x504, 2048x2048 (versatek plotters), 2100x2100,
3120x3120(tektronics 4014 terminals) and 4096x4096 (gsi 300
terminals).@refill

The remaining command line options may be used specify an alternate
postscript prologue and to print the licensing information.@refill

Input plot files names may be specified anywhere on the command line.
If no file names are specified, or the name @samp{-} is specified, the
standard input is read for plotting instructions.  Only the font or
font size options which precede a file name will affect the text for
that file.@refill

@table @samp
@item -help
@itemx -V
The help option prints a summary of command line syntax for
@code{plot2ps}, a list of the font names (the standard builtin
postscript fonts), and version, copyright and warranty information.
Specifying this options causes plot2ps to ignore files on the standard
input.  You can specify a file on the standard input explicitly with
the option @samp{-} if you want it to read the standard input as
well.@refill

@item -fontsize @var{size}
@itemx -f @var{size}
The fontsize options specifies the default size in printer's points
(1/72 inch) of all text appearing in the plot.  If unspecified, the
size defaults to 14 points.@refill

Some sizes are supported better than others under X windows.  The
standard sizes distributed with X windows are 8, 10, 12, 14, 18, and
24 points.  Text at these point sizes will display correctly in the
@code{idraw} editor.  Other font sizes will print correctly on a
postscript device such as the laserwriter, but may not appear at the
correct size in the @code{idraw} editor.@refill

@item -font @var{name}
@itemx -fo @var{name}
The font name option specifies the name of the default font for all
text appearing in the plot.  @samp{plot2ps -help} prints a listing of
the font names on the standard output.  These names include the
available builtin fonts on standard postscript printers.@refill

@item -high-byte-first
@itemx -h
The high-byte-first option specifies explicitly that the higher order
byte of each signed, two byte integer occurs first in the file.  It
disables determination of byte order from the file itself.@refill

@item -low-byte-first
@itemx -l
The low-byte-first option specifies explicitly that the lower order
byte of each signed, two byte integer occurs first in the file.  It
disables determination of byte order from the file itself.@refill

@item -prologue @var{filename}
@itemx -p @var{filename}
The prologue option specifies the name of an alternate postscript
prologue @var{filename} to be used in place of the default
@code{idraw} prologue.  The prologue declares procedures used to draw
each graphic object.  The default prologue was generously provided by
John Interante and is a part of the InterViews distribution, version
2.5.@refill

@item -copying
@itemx -warranty
The copying and warranty options print a copy of the GNU General
Public License on the standard error output.  Included is conditions
for copying @code{plot2ps} and information on the lack of any
warranty.@refill

These conditions do not cover the output of @code{plot2ps}.  The only
conditions imposed on the output are those which come from the
prologue that you are using.@refill

@item -signed
@itemx -unsigned
The signed and unsigned options specify whether coordinates in the
plot file are signed.  By convension, coordinates are always signed.
Some plot files do not follow this convension, and you can use the
unsigned option to convert those files.

@refill

@end table

@node    Examples,    LaTeX,  Options,        Top
@section Examples Using @code{plot2ps}

To produce a plot of data arranged in ordered pairs of x and y
coordinates in an ASCII file, you can use:@refill

@example
graph <asciiDataFile | plot2ps | lpr -Plw
@end example

To create a simple postscript figure you can use:

@example
echo 0 0 1 1 2 0 | spline | graph | plot2ps > test.ps
@end example

To edit the plot:

@example
idraw test.ps
@end example

To use the previewer to look at the plot:

@example
xps -c A4 test.ps
@end example

@node    LaTeX,    psfig,  Examples, Top
@section Including a Figure in an Article

This is an example of LaTeX code which places the figure generated in
the previous example in a page of text.@refill

@example
\documentstyle[]@{article@}
\input@{psfig@}
\begin@{document@}
\title@{Title of the article.@}
\author@{The Author's name@}
\maketitle
This is an example of how to include postscript figures in LaTeX documents.
\begin@{figure@}[h]
\centerline@{\psfig@{figure=test.ps,height=3in@}@}
\caption@{Here is a description of the figure which will appear below it.@}
\end@{figure@}
Note that the above figure was included using dvi2ps.
\end@{document@}
@end example

@node    psfig,  dvi2ps,    LaTeX, Top
@section Options to @code{psfig} for Including Figures

@code{psfig} is a LaTeX command used to insert a postscript figure
into a document.@refill

@code{psfig} can be used to insert @code{plot2ps} generated postscript
into a LaTeX document.  The placement of the @code{psfig} command
tells LaTeX where in the document to place the postscript, and
arguments to the command give the name of the file containing the
postscript, and the desired size of the figure.  Arguments are
separated by commas or blanks, and are of the form
@samp{@var{keyword}=@var{value}}.  The following is a list of valid
arguments for the @code{psfig} command:@refill

@table @code
@item file=@var{name}
The file name of the postscript figure.

@item height=@var{size}
The height of the figure (eg. 3in).  If you specify only a height or
only a width, the width and height are scaled equally.  If you specify
both a width and a height the aspect ratio will be affected.@refill

@item width=@var{size}
The width of the figure (eg. 3in).@refill

@item bbllx=@var{coordinate}
The bounding box lower left-hand x coordinate.  Any postscript file
which conforms to the postscript Document Structuring Conventions
version 2.0 should contain a bounding box information at the head of
the file.  @code{plot2ps} output conforms to the version 2.0
conventions so that you should not need to use any of the bounding box
options.@refill

@item bblly=@var{coordinate}
The bounding box lower left-hand y coordinate.

@item bburx=@var{coordinate}
The bounding box upper right-hand x coordinate.

@item bbury=@var{coordinate}
The bounding box upper right-hand y coordinate.

@item rheight=@var{size}
Horizontal space to reserve for the figure.

@item rwidth=@var{size}
Vertical space to reserve for the figure.

@item clip=
Clip the figure.  @code{clip=} is a switch and takes no value, but the
@samp{=} must be present.  This option is useful for including
postscript figures which use the size of the clipping path to size
themselves.@refill
@end table

@node    dvi2ps,    idraw,  psfig, Top
@section How to Get @code{dvi2ps}

The @code{dvi2ps} utility mentioned previously is used convert dvi
files generated by LaTeX into post-script.  It also has support for
inclusion of postscript figures into LaTeX documents.  It is available
via anonymous ftp from @samp{june.cs.washington.edu} (128.95.1.4).
Look for @file{tex/w_dvi2ps.tar.Z}.@refill


@node    idraw,    xps,  dvi2ps, Top
@section How to Get @code{idraw}

The @code{idraw} utility mentioned previously is an interactive
graphics editor which is distributed with InterViews.  InterViews is
available via anonymous ftp from @samp{interviews.stanford.edu}
(36.22.0.175) in the file @file{InterViews/2.5.tar.Z}.@refill

@node    xps,    Acknowledgements,  idraw, Top
@section How to Get @code{xps}

The @code{xps} utility mentioned previously is a postscript previewer for X
windows written by Crispin Goswell.  @code{xps} is available via anonymous ftp
from @samp{ai.toronto.edu} (128.100.1.65) in @file{pub/X/xps.tar.Z} and from
@samp{qed.rice.edu} (128.42.4.38) in the file @file{pub/x11/xps.tar.Z}.

The original distribution of @code{xps} is available via anonymous ftp from
@samp{uunet.uu.net} (192.48.96.2) in the directory
@file{comp.sources.unix/volume12/postscript}.  You can also find @code{xps}
on the host @samp{j.cc.purdue.edu} (128.210.9.2) in the directory
@file{comp.sources.Unix/volume12} in the files @file{v12i050.Z} through
@file{v12i067.Z}.  Patches for @code{xps} are also available via anonymous ftp
from both @samp{uunet.uu.net} in the directory mentioned above and
@samp{z.andrew.cmu.edu} (128.2.30.8) in the directory @file{psdiffs}.@refill

Ghostscript is another postscript previewer supporting X windows.
Version 1.2 does not yet support all of the features used by
@code{plot2ps}.  It is available via anonymous ftp from
@samp{prep.ai.mit.edu} (18.71.0.38) - Look for
@file{pub/gnu/ghostscript-1.2.tar.Z}.@refill

@node    Acknowledgements,    libps,  xps, Top
@section Acknowledgements

Many thanks to Richard Stallman for his helpful discussions of the
program and documentation.  Also, thanks to John Interrante for
generously providing the postscript prologue and helpful comments on
the program.@refill

@node    libps,     alabel,  xps,     Top
@chapter @code{libps}, a Library of Unix Plot Functions

Libps is a library of Unix plot functions for drawing graphic object
using postscript.  Before drawing any objects or using any of the
other functions, a program should call @code{openpl}.  Before exiting
and after all other libps calls a program should call
@code{closepl}.@refill

@menu
The standard Unix plot library includes:

* arc::          draw an arc
* circle::       draw a circle
* closepl::      close the device for output
* cont::	 continue a line
* erase::        erase the page
* label::        print a label
* line::         draw a line
* linemod::      change the line mode (style)
* move::         move to a new coordinate
* openpl::       open the device for output
* point::        draw a point
* space::        define the user's plot space (size)

The extensions provided only in libps to take advantage of postscript
features include:@refill

* alabel::       print a vertically or horizontally justified label
* color::        change the color
* fontname::     set the font name
* fontsize::     set the font size
* rotate::       rotate subsequent text
@end menu

@node alabel, arc, libps, libps
@section @code{alabel}
@findex @code{alabel} (char @var{x_justify}, char @var{y_justify}, char @var{*label})

int @code{alabel} (char @var{x_justify}, char @var{y_justify}, char @var{*label});

@code{alabel} takes three arguments @var{x_justify}, @var{y_justify},
and @var{label} and places the label according to the x and y axis
adjustments specified in @var{x_justify} and @var{y_justify}
respectively.  @var{x_justify} is a character containing either
@samp{l}, @samp{c}, or @samp{r} for left, center or right justified
with respect to the current x coordinate.  @var{y_justify} is a
character containing either @samp{b}, @samp{c}, or @samp{t} for
placing the bottom center or top of the label even with the current y
coordinate.  @var{*label} is a string containing the label.  The
current point is moved to follow the end of the text.@refill

@xref{fontname} on how to change the default font.
@xref{fontsize} on how to change the font size.

@node arc, circle, alabel, libps
@section @code{arc}
@findex @code{arc} (int @var{x}, int @var{y}, int @var{x0}, int @var{y0}, int @var{x1}, int @var{y1})

int @code{arc} (int @var{x}, int @var{y}, int @var{x0}, int @var{y0}, int @var{x1}, int @var{y1})

@code{arc} takes six integer arguments specifying the coordinates of
the center (@var{x}, @var{y}), beginning (@var{x1}, @var{y1}), and
ending (@var{x}, @var{y}) of a circular arc.  The current point
becomes (@var{x}, @var{y}).@refill

@node circle, closepl, arc, libps
@section @code{circle}
@findex @code{circle} (int @var{x}, int @var{y}, int @var{r})

int @code{circle} (int @var{x}, int @var{y}, int @var{r})

@code{circle} takes three integer arguments specifying the center
(@var{x}, @var{y}) of the circle and its radius (@var{r}).  The
current point becomes (@var{x}, @var{y}).@refill

@node closepl, color, circle, libps
@section @code{closepl}
@findex @code{closepl} ()

int @code{closepl} ()

@code{closepl} takes no arguments.  It merely outputs the postscript
trailer containing a @code{showpage} command.@refill

@node color, cont, closepl, libps
@section @code{color}
@findex @code{color} (int @var{red}, int @var{green}, int @var{blue})

int @code{color} (int @var{red}, int @var{green}, int @var{blue});   

@code{color} sets the foreground color of all the following objects.
The arguments @var{red}, @var{green} and @var{blue} indicate the
intensity of red, green and blue components of the foreground color
respectively.  Each is a unsigned integer specifying an intensity in
the range from 0 to 0xFFFF.  A value of (0, 0, 0) represents black and
a value of (0xFFFF, 0xFFFF, 0xFFFF) indicates white.@refill

@node cont, erase, color, libps
@section @code{cont}
@findex @code{cont} (int @var{x}, int @var{y})

int @code{cont} (int @var{x}, int @var{y})

@code{cont} takes two integer arguments specifying the coordinate
(@var{x}, @var{y}) for the continuation of a line.  This draws a line
segment from the current point to the point (@var{x}, @var{y}).  The
current point then becomes (@var{x}, @var{y}).@refill

@node erase, fill, cont, libps
@section @code{erase}
@findex @code{erase}()

int @code{erase} ()

@code{erase} normally erases all the graphics from the display before
a plot is viewed.  Since we start off with a blank page in postscript
and @code{idraw} this function does nothing.@refill

@node fill, fontname, erase, libps
@section @code{fill}
@findex @code{fill} (int @var{level})

int @code{fill} (int @var{level});   

@code{fill} sets the intensity of the filler for closed paths.  The
argument @var{level} indicates the grey level of the fill pattern.
It's value ranges from 1 to 0xFFFF.  A value of 1 represents black and
a value of 0xFFFF indicates white.  A value of 0 represents no fill,
or transparent.@refill

@node fontname, fontsize, fill, libps
@section @code{fontname}
@findex @code{fontname} (char @var{*font_name})

int @code{fontname} (char @var{*font_name});

@code{fontname} takes a single string argument, @var{font_name},
specifying the name of the font to be used for following text.  The
laser writer builtin fonts are supported:@refill

@example
        courier-bold
        courier-boldoblique
        courier-oblique
        courier
        helvetica-bold
        helvetica-boldoblique
        helvetica-oblique
        helvetica
        symbol
        times-bold
        times-bolditalic
        times-italic
        times-roman
@end example

@node fontsize, label, fontname, libps
@section @code{fontsize}
@findex @code{fontsize} (int @var{size})

int @code{fontsize} (int @var{size});

@code{fontsize} takes a single integer argument @var{size} in
printer's points (1/72 inch) and sets the font size
accordingly.@refill

@node label, line, fontsize, libps
@section @code{label}
@findex @code{label} (char @var{*s})

int @code{label} (char @var{*s})

@code{label} takes a single string argument @var{s} and draws the text
contained in @var{s} at the most recently used coordinate in the
current font.  By default the text is left justified and centered
vertically with respect to the current coordinate.@refill

@node line, linemod, label, libps
@section @code{line}
@findex @code{line} (int @var{x1}, int y@var{1}, int @var{x2}, int @var{y2})

int @code{line} (int @var{x1}, int y@var{1}, int @var{x2}, int @var{y2})

@code{line} takes four integer arguments specifying the beginning
(@var{x1}, @var{y1}) and ending (@var{x2}, @var{y2}) points of a line.
The current point becomes (@var{x2}, @var{y2}).@refill

@xref{linemod} for how to specify the style or pattern of line.

@node linemod, move, line, libps
@section @code{linemod}
@findex @code{linemod} (char @var{*s})

int @code{linemod} (char @var{*s})

@code{linemod} takes a single string arguement @var{s} containing the
name of the line style desired.  The names supported are longdashed,
disconnected, dotdashed, dotted, solid and shortdashed.  These
correspond to the following patterns:@refill

@example
solid             ----------------
longdashed        -------
disconnected      -
dotdashed         -----------  -
dotted            - - - - - - - - 
shortdashed       --
@end example

@node move, openpl, linemod, libps
@section @code{move}
@findex @code{move} (int @var{x}, int @var{y})

int @code{move} (int @var{x}, int @var{y})

@code{move} takes two integer arguments specifying the coordinate
(@var{x}, @var{y}) for the beginning of a new line.  This is
equivalent to lifting the pen on a plotter and moving it to a new
position without drawing any line.  The current point becomes
(@var{x}, @var{y}).@refill

@node openpl, point, move, libps
@section @code{openpl}
@findex @code{openpl}()

int @code{openpl} ()

@code{openpl} normally opens the device.  For postscript we just print
out the postscript prologue.  The following global variables defined
in @code{openpl} specify what prologue is written to the
output.@refill

@var{user_has_prologue} is a flag.  If it is non-zero then the open
routine should output the user specified prologue contained in the
file specified in the string @var{users_prologue}.@refill

@var{users_prologue} is a string containing the file name for any user
specified postscript prologue.  This file is a substitute for the
default prologue.@refill

@node point, rotate, openpl, libps
@section @code{point}
@findex @code{point} (int @var{x}, int @var{y})

int @code{point} (int @var{x}, int @var{y})

@code{point} takes a pair of integer arguments specifying the
coordinate (@var{x}, @var{y}) for a single point.  The current point
then becomes (@var{x}, @var{y}).@refill

@node rotate, space, point, libps
@section @code{rotate}
@findex @code{rotate} (int @var{w}, int @var{h}, int @var{angle})

int @code{rotate} (int @var{w}, int @var{h}, int @var{angle});  

@code{rotate} takes three integer arguments.  The last argument,
@var{angle}, specifies the angle in degrees counter-clockwise from the
x (horizontal) axis following text.  @var{w} and @var{h} are not
currently used, but may be used in future.@refill

@node space, files, rotate, libps
@section @code{space}
@findex @code{space} (int @var{x0}, int @var{y0}, int @var{x1}, int @var{y1})

int @code{space} (int @var{x0}, int @var{y0}, int @var{x1}, int @var{y1})

@code{space} takes two pair of integers arguments specifying the
lower, left-hand and upper, right-hand limits of the range of plot
coordinates.  The scaling of input to output coordinate conversion is
adjusted to fit these ranges into the page.  Note however that if the
ranges of x and y coordinates are different the smallest scaling of
the two is used to avoid affecting the aspect ratio of the plot.  This
means that although the plot is scaled to fit on the page, the axes
are not streched with respect to each other.@refill

@node files, Function Index,  fontsize, Top
@chapter The Unix Plot File Format

The Unix plot file is a set of plotting commands and data.  Each command is
a single ascii character indicating which operation is to be
performed.  The data following a command is either a newline
terminated ascii string or several signed, two byte integers in
binary format.  For example, the command to move the current point
to the coordinate (3,5) would be @code{m\000\003\000\005}.@refill

Note that the byte order of the binary representation of the signed,
two byte integers is machine dependent, so on some machines, this
command might appear as @code{m\003\000\005\000}.  @code{plot2ps}
tries to guess the byte order from the arguments to the @code{openpl}
command and adjust the order accordingly.@refill

The following table lists each single character commands followed by
the name of the corresponding libps function called to handle the data
and a description of the command and data.@refill

@table @samp
@item Command
Description

@item a
The arc command is followed by three pair of signed, two byte integers
indicating the center, starting and ending points for a circular arc.
The center becomes the the current point.  This is equivalent to the
@code{arc} function (@pxref{arc}).@refill

@item c
The circle command is followed by three signed, two byte integers.  The
first two indicate the x and y coordinates of the center of the circle
and the third indicates the radius of the circle.  The center becomes the
the current point.  This is equivalent to the @code{circle} function
(@pxref{circle}).@refill

@item C
The color command is followed by three unsigned, two byte integer which
indicate the intensity of @var{red}, @var{green} and @var{blue}
components respectively of the background color.  For each component the
range of intensity is from 0 to 65535.  A value of (@var{0}, @var{0},
@var{0}) represents black and (@var{65535}, @var{65535}, @var{65535})
represents white. This is equivalent to the @code{color} function
(@pxref{color}).@refill

@item e
The erase command is followed by no data.  The erase command is not
needed since in @code{idraw} and postscript we start off with a blank
page.  For this reason the erase command does not actually output any
postscript. This is equivalent to the @code{erase} function
(@pxref{erase}).@refill

@item f
The linemod command is followed by a newline terminated string containing
the name of the line mode (or style) for all subsequent lines, circles
and arcs. This is equivalent to the @code{linemod} function
(@pxref{linemod}) which describes the line styles and thier names.@refill

@item F
The the fontname command is followed by a newline terminated string
containing the name of the font to be used for all subsequent text. This
is equivalent to the @code{fontname} function (@pxref{fontname}).@refill

@item l
The line command is followed by two pair of signed, two byte integers
which indicate the starting and ending points of the line.  The second
pair becomes the the current point. This is equivalent to the @code{line}
function (@pxref{line}).@refill

@item L
The fill command is followed by an unsigned, two byte integer indicating
the intensity of the fill for closed paths.  A value of 1 represents
black and a value of 0xFFFF indicates white.  The value 0 is special in
that is indicates that no solid fill should occur, and that the interior
of the respective path is transparent. This is equivalent to the
@code{fill} function (@pxref{fill}).@refill

@item m
The move command is followed by a pair of signed, two byte integers
containing the location of the new current point.  No line is drawn to
this point as opposed to the continue command (@code{c}) which draws a
line.  This is equivalent to the @code{move} function (@pxref{move}).
@refill

@item n
The continue command is followed by pair of signed, two byte integers
containing the coordinates of the endpoint of a line segment.  A line is
drawn from the previous current point if it was set using a command such
as move or continue.  This then becomes the the current point. This is
equivalent to the @code{cont} function (@pxref{cont}).@refill

@item p
The point command is followed by pair of signed, two byte integers
containing the location of single point to be drawn.  This then becomes
the the current point. This is equivalent to the @code{point} function
(@pxref{point}).@refill

@item r
The rotate command is followed by three signed, two byte integers.  The
third indicates the rotation of all subsequent text.  The rotation is in
degrees counter-clockwise from the x (horizontal) axis. This is
equivalent to the @code{rotate} function (@pxref{rotate}).@refill

@item s
The space command is followed by two pair of signed, two byte integers
which indicate the the lower right-hand and upper left-hand corners of
the range of plot coordinate space.  @code{plot2ps} uses the third
signed, two byte integer (the right-hand limit) to try to determine the
byte order. This is equivalent to the @code{space} function
(@pxref{space}) which describes the recognized sizes.@refill

@item S
The fontsize command is followed by an signed, two byte integer
containing the size in printers points of all subsequent text. This is
equivalent to the @code{fontsize} function (@pxref{fontsize}).@refill

@item t
The label command is followed by a newline terminated string contains a
label which is printed at the current point.  It is left justified and
centered vertically with respect to the current point.  The current point
is then set at the end of the text. This is equivalent to the
@code{label} function (@pxref{label}).@refill

@item T
The adjusted label command is followed by two characters which indicate
the horizontal and vertical justification respectively and a newline
terminated string containing the label.  The label is drawn with the
specified justification and the current point is set at the end of the
text.  This is equivalent to the @code{alabel} function (@pxref{alabel})
which describes how to specify justification.@refill

@end table

@node Function Index, Top, Top, Top
@section Function Index

@printindex fn

@contents
@bye