diff options
Diffstat (limited to 'gs/lib/align.ps')
-rw-r--r-- | gs/lib/align.ps | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/gs/lib/align.ps b/gs/lib/align.ps new file mode 100644 index 000000000..75d2b66c7 --- /dev/null +++ b/gs/lib/align.ps @@ -0,0 +1,71 @@ +% Copyright (C) 1989, 1996 Aladdin Enterprises. All rights reserved. +% +% This file is part of Aladdin Ghostscript. +% +% Aladdin Ghostscript is distributed with NO WARRANTY OF ANY KIND. No author +% or distributor accepts any responsibility for the consequences of using it, +% or for whether it serves any particular purpose or works at all, unless he +% or she says so in writing. Refer to the Aladdin Ghostscript Free Public +% License (the "License") for full details. +% +% Every copy of Aladdin Ghostscript must include a copy of the License, +% normally in a plain ASCII text file named PUBLIC. The License grants you +% the right to copy, modify and redistribute Aladdin Ghostscript, but only +% under certain conditions described in the License. Among other things, the +% License requires that the copyright notice and this notice be preserved on +% all copies. + +% Print a page that indicates the proper settings of Margins and HWMargins +% for a given device. Requires a Level 2 system. + +% Reset the offset and margins. + +<< + /PageOffset [0 0] + /Margins [0 0] + /.HWMargins [0 0 0 0] +>> +setpagedevice +<< + /ImagingBBox null +>> +setpagedevice + +% Determine the actual page size. + +clippath pathbbox newpath +/y1 exch def /x1 exch def pop pop + +% Draw lines that should be exactly 1" in from each edge, +% and should extend precisely to the edge of the paper. + +1 setlinewidth +0 setgray +72 0 moveto 0 y1 rlineto stroke +0 72 moveto x1 0 rlineto stroke + +% Print the text in the middle of the page. + +/S 80 string def +108 360 moveto +/Helvetica 12 selectfont + { currentfile S readline pop dup (%END) eq { pop exit } if + gsave show grestore 0 -15 rmoveto + } loop +Let the distance in inches from the left edge of the page to +the vertical line be H, and from the bottom edge to the +horizontal line be V; let the lengths of the gaps at the top +and bottom of the vertical line be T and B respectively, and +the gaps at the left and right of the horizontal line be L +and R. For measurements in inches, the proper page device +parameters for this printer are set by + << /.HWMargins [ml mb mr mt] /Margins [x y] + >> setpagedevice +where + ml = L * 72, mb = B * 72, mr = R * 72, mt = T * 72 +%END +/res currentpagedevice /.MarginsHWResolution get def +( x = (1 - H) * ) show res 0 get =string cvs show +(, y = (V - 1) * ) show res 1 get =string cvs show + +showpage |