diff options
author | Taru Karttunen <taruti@taruti.net> | 2011-03-30 16:53:33 +0300 |
---|---|---|
committer | Taru Karttunen <taruti@taruti.net> | 2011-03-30 16:53:33 +0300 |
commit | e463eb40363ff4c68b1d903f4e0cdd0ac1c5977f (patch) | |
tree | d5e9f57c28f026cb21de3bd77cc10cd7f64aaa85 /sys/lib/ghostscript/zeroline.ps | |
parent | b41b9034225ab3e49980d9de55c141011b6383b0 (diff) |
Import sources from 2011-03-30 iso image - sys/lib
Diffstat (limited to 'sys/lib/ghostscript/zeroline.ps')
-rwxr-xr-x | sys/lib/ghostscript/zeroline.ps | 100 |
1 files changed, 100 insertions, 0 deletions
diff --git a/sys/lib/ghostscript/zeroline.ps b/sys/lib/ghostscript/zeroline.ps new file mode 100755 index 000000000..cc9295ae4 --- /dev/null +++ b/sys/lib/ghostscript/zeroline.ps @@ -0,0 +1,100 @@ +%! +% Copyright (C) 1994 Aladdin Enterprises. All rights reserved. +% +% This software is provided AS-IS with no warranty, either express or +% implied. +% +% This software is distributed under license and may not be copied, +% modified or distributed except as expressly authorized under the terms +% of the license contained in the file LICENSE in this distribution. +% +% For more information about licensing, please refer to +% http://www.ghostscript.com/licensing/. For information on +% commercial licensing, go to http://www.artifex.com/licensing/ or +% contact Artifex Software, Inc., 101 Lucas Valley Road #110, +% San Rafael, CA 94903, U.S.A., +1(415)492-9861. + +% $Id: zeroline.ps,v 1.4 2002/02/21 21:49:28 giles Exp $ +% zeroline.ps +% Test file to determine how other PostScript implementations handle +% filling zero-width lines under a variety of conditions. + +% Add a small "fan" of zero-width lines at different angles to the path. +/fan + { currentpoint 100 0 rlineto + 2 copy moveto 100 20 rlineto + 2 copy moveto 100 100 rlineto + 2 copy moveto 20 100 rlineto + moveto 0 100 rlineto + } def + +% Append a rectangle to the current path. +/rectappend + { 4 -2 roll moveto 1 index 0 rlineto 0 exch rlineto + neg 0 rlineto closepath + } def +% Fill a rectangle. +/rectfill + { gsave newpath rectappend fill grestore + } def +% Stroke a rectangle. +/rectstroke + { gsave newpath rectappend stroke grestore + } def +% Clip to a rectangle. Unlike the real rectclip, +% this clear the current path. +/rectclip + { newpath rectappend clip newpath + } def + +40 40 translate + +% Display fans of different colors on different backgrounds. +gsave +0 setgray +0 0 120 120 rectstroke +10 10 moveto fan fill +140 0 translate +0 setgray +0 0 120 120 rectstroke +0.8 setgray +10 10 moveto fan fill +140 0 translate +0 setgray +0 0 120 120 rectfill +1 setgray +10 10 moveto fan fill +grestore +0 140 translate + +% Display rectangles with two edges coincident. +gsave +newpath +0 setgray +0 0 40 40 rectappend +0 0 20 20 rectappend +eofill +60 0 translate +0 0 40 40 rectappend +40 0 -20 20 rectappend +fill +grestore +0 60 translate + +% Display superimposed lines. +gsave +/super + { currentpoint fan + 2 copy moveto 20 0 rmoveto 50 0 rlineto + 2 copy moveto 20 4 rmoveto 50 10 rlineto + 2 copy moveto 20 20 rmoveto 50 50 rlineto + 2 copy moveto 4 20 rmoveto 10 50 rlineto + moveto 0 20 rmoveto 0 50 rlineto + } def +0 setgray +0 0 moveto super fill +140 0 translate 0 0 moveto super eofill +grestore +0 140 translate + +showpage |