\documentstyle[a4,12pt]{article}

\newcommand{\Tauthor}{Alastair Young}
\newcommand{\Ttitle}{Edwin PostScript Driver}
\newcommand{\Tdate}{14th December 1988}
\newcommand{\Tdoctype}{}
\newcommand{\Tversion}{DDPS}

\input{logo}
\begin{document}
\input{title}
\section{Overview}
The Edwin PostScript Driver is device number 16\_5053 ('PS'). It outputs
to a file called EDWIN\_PS.PS which is a standard PostScript format file.
As PostScript is in itself a programming language it has been possible to 
make the output mildly ``intelligent'' and to incorporate some nice touches
not available on other devices. The defaults are set up to work correctly
on the Apple LaserWriter II/NTX but should not have to be changed to drive
any 300dpi A4 PostScript printer. The defaults may be changed by various
logical names, allowing full utilisation of different page sizes and resolutions
should a customer have a non standard printer or emulator. 

\section{Device Specifics}
\subsection{Page Size}
The default page size is A4. PostScript thinks from the physical bottom left
of the paper which is normally outside the area which a printer can actually
print. To allow for this a margin is used. These margins, and the area which
is actually printed on, is defined in inches. The margins default to half an
inch and the printable area to 7.25 by 10.5 inches. These may be modified with
the logical names EDWIN\_PS\_LEFT\_MARGIN, EDWIN\_PS\_BOTTOM\_MARGIN,
EDWIN\_PS\_PAGE\_HEIGHT, EDWIN\_PS\_PAGE\_WIDTH. The height is longer than the width
and the image is rotated on the page.

\subsection{Device Resolution}
The device resolution is used to make one edwin device unit equal one pixel. 
This defaults to 300 dots per inch and may be modified with the logical name
EDWIN\_PS\_DEVICE\_RESOLUTION. If an incorrect value is used no great harm will
result.

\section{Drawing Facilities}
Move Abs, Line Abs, Polygons, Boxes and Circles are all available. Polygons,
boxes and circles can be filled. Shading styles are taken from the Edwin
Patterns facility. Standard Edwin line styles are available.

\section{Text}
Full text scaling, rotation and mirroring are available. Also the 13 standard
PostScript fonts are available as numbers 1 to 13. 
These are 
                                               ``Courier'',
                                               ``Courier-Bold'',
                                               ``Courier-Oblique'',
                                               ``Courier-BoldOblique'',
                                               ``Times-Roman'',
                                               ``Times-Bold'',
                                               ``Times-Italic'',
                                               ``Times-BoldItalic'',
                                               ``Helvetica'',
                                               ``Helvetica-Bold'',
                                               ``Helvetica-Oblique'',
                                               ``Helvetica-BoldOblique'' and
                                               ``Symbol''.
The default (0) is ``Courier'', but this may be changed
with the logical name EDWIN\_PS\_FONT. PostScript is case sensitive about font
names. If a variable width font is selected the PostScript automatically makes
an educated guess at the average width then justifies the text to fit the space
provided. As long as there is at least one space character in the string the 
string should come out to the right length.

\section{Colour}
No attempt has been made to use colours other than black and white. White, 
if used, is really white, not transparent.

\section{Limitations}
\begin{itemize}
\item Colour Mode is Overlay only. 
\item Problems may arise with very complicated plots. The
printer has a limited memory and this can overflow, particularly if a lot of
non-solid 
shading is being done. For this reason the PostScript automatically creates
a 64 by 64 bit image for filling from the 16 by 16 bit provided by the Pattern
facility. This reduces by a factor of 16 the number of actual ``characters''
placed when filling. Only testing on real applications will show up whether
this is adequate. If the printer's memory overflows it gives up and prints 
nothing.
\end{itemize}
\end{document}
