diff options
author | Reinhard Kotucha <reinhard.kotucha@web.de> | 2009-05-12 20:13:15 +0000 |
---|---|---|
committer | Reinhard Kotucha <reinhard.kotucha@web.de> | 2009-05-12 20:13:15 +0000 |
commit | 4d16db8c341b357cb6209a97591b7632dd27db0d (patch) | |
tree | e44fe66e80ee5f21862ff2d5bb231b0747e6c76b /Master/tlpkg/tlgs/lib/viewcmyk.ps | |
parent | 7e621409df5dc29ec8c64a9a172766749aa99665 (diff) |
tlgs/gs8.64
git-svn-id: svn://tug.org/texlive/trunk@13059 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/tlpkg/tlgs/lib/viewcmyk.ps')
-rw-r--r-- | Master/tlpkg/tlgs/lib/viewcmyk.ps | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/Master/tlpkg/tlgs/lib/viewcmyk.ps b/Master/tlpkg/tlgs/lib/viewcmyk.ps new file mode 100644 index 00000000000..e874b09db2b --- /dev/null +++ b/Master/tlpkg/tlgs/lib/viewcmyk.ps @@ -0,0 +1,63 @@ +% Copyright (C) 1996, 1997, 1998 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: viewcmyk.ps 6300 2005-12-28 19:56:24Z giles $
+% viewcmyk.ps
+% Display a raw CMYK file.
+% Requires the colorimage operator.
+% If SCALE is defined, maps input pixels to output pixels with that scale;
+% if SCALE is undefined, scales the image to fit the page.
+% If BITS is defined, it is the number of bits per sample (1,2,4,8,12);
+% if BITS is undefined, its default value is 1.
+
+/viewcmyk { % <filename> <width> viewcmyk -
+ 20 dict begin
+ /w exch def
+ /fname exch def
+ /bpc /BITS where { pop BITS } { 1 } ifelse def
+ /f fname (r) file def
+ mark fname status pop pop pop /flen exch def cleartomark
+ /h flen w bpc 4 mul mul 7 add 8 idiv idiv def
+ (Dimensions: ) print [w h] == flush
+ % Set up scaling.
+ /SCALE where {
+ pop
+ % Map pixels SCALE-for-1. Assume orthogonal transformation.
+ SCALE 1 0 dtransform add abs div
+ SCALE 0 1 dtransform add abs div
+ } {
+ % Scale the image (uniformly) to fit the page.
+ clippath pathbbox pop pop translate
+ pathbbox 3 -1 roll sub h div
+ 3 1 roll exch sub w div .min dup
+ } ifelse scale
+ w h bpc [1 0 0 -1 0 h] f false 4 colorimage
+ showpage
+ f closefile
+ end
+} bind def
+
+% If the program was invoked from the command line, run it now.
+[ shellarguments {
+ counttomark 2 eq {
+ cvi viewcmyk
+ } {
+ cleartomark
+ (Usage: gs -- viewcmyk.ps filename.cmyk width\n) print
+ ( e.g.: gs -- viewcmyk.ps my.cmyk 2550\n) print flush
+ } ifelse
+} {
+ pop
+} ifelse
|