HPGL2PS((1L))

NAME
hpgl2ps - convert HPGL (Hewlett Packard Graphic Language) to PostScript

SYNOPSIS
hpgl2ps [-a orig-plot-size] [-Dmprvw] [-l line sizes] [-s scale] [-x offset] [-y offset] [-o outputfile] [plotfile]

DESCRIPTION
This filter is used to convert the Hewlett Packard Graphic Language (HP-GL) 7475A plotter commands to PostScript.

The default conditions for hpgl2ps are:

1.  The plot translation is from ISO A4 (297mm x 210mm) to ISO A4 (297mm x 210mm).

2.  Line thicknesses are in millimeters and are for lines (pens) 1 to 8: ( 0.1, 0.25, 0.35, 0.5, 0.7, 1.0, 1.25, 1.5 )

3.  The default font is Courier since it is a mono spaced font and closely relates to the character height and width on the plotter.

Note:
    If the plotfile is not specified then standard input is assumed. If no output file is specified then standard output is assumed.

ARGUMENTS

-D  This is a debug option that will display all warning messages and any output that the person debuging the program requires. This filter will handle unusual data and attempt to do the right thing, (eg. Unknown operation commands) however a steam of warning messages may confuse the novice user if seen.

-a orig-plot-size
    The original plot size can be A4 or A3 and is mapped to an A4 or A3 sheet of paper (see argument -w).

-l line-sizes
    This option allows the default line sizes to be replaced with different sizes starting from line (pen) one through eight. The new sizes (real or integer) are entered in a comma separated string (line sizes) and are in millimeters. Only the sizes entered in the string will be changed with respect to lines (pens) one to eight while nonentered line (pen) sizes will retain the default sizes.

    In the following example only the first three sizes will be changed.

    eg: hpgl2ps -l 0.4,0.3,1 file | lpr -Palw

-m  Enable the manual feed on the printer (cutoff time 3 minutes).

-p  The text output of the plotter will be Helvetica and will be proportionally spaced. It is important to know that proportional spacing cannot take place if the HPGL code is actually placing each character, in this case it is best not to use this option.
    When using this feature the actual text width will be smaller and therefore any text displayed will only be left justified.

-r  Rotate plot(s) through 90 degrees. (The plot is made smaller)

-s scale
    Scale plot from 0.1 to 3 times its original size.

-v  Prints the version and usage of this program.

-w  The original plot is mapped to an A3 sheet of paper instead of the default A4 size.

-x offset
    Place an X offset (in mm) in the plot.

-y offset
    Place an Y offset (in mm) in the plot.

Note: Offsets are with respect to the 0, 0 (origin) axis of the HP-GL plotting commands, thus if the minimum plotting coordinates are below either the X and/or Y zero axis then a positive offset is applied. Similarly if the minimum plot coordinates are above the X and/or Y zero axis then a negative offset is applied.

FILES
/usr/local/bin/hpgl2ps

AUTHORS
Don McCormick    Marek Krawus
CSIRO    The Prentice Computer Centre
Division of Applied Physics    The University of Queensland
PO 218, Lindfield, N.S.W., 2070    St. Lucia, Q., 4067
Australia    Australia

BUGS
This filter will translate most HPGL code, however the target machine this code was written for was a HP7475 plotter, new plotters will have different commands that are unknown to this filter. If a graphics command is unimplemented or not known a warning will be displayed. If this command is vital then it must be written into the code.

The HP7475 commands that are not implemented are CA, CS, DC, DP, IM, and all output commands (ie OA, OC, OD, OE, OF, OH, OI, OO, OP, OS, OW), PS, SA and VS. A special case is the LT command where negative numbers are converted to positive numbers (use the -D option if you suspect the line type command is not working properly -- A warning will be displayed).

In addition mirror images of labels are not supported (see SI and SR), and the inbuilt functions cos and sin for the DI command are not supported.

If any bugs are found notify damc@dap.csiro.au or root.