From 4d16db8c341b357cb6209a97591b7632dd27db0d Mon Sep 17 00:00:00 2001 From: Reinhard Kotucha Date: Tue, 12 May 2009 20:13:15 +0000 Subject: tlgs/gs8.64 git-svn-id: svn://tug.org/texlive/trunk@13059 c570f23f-e606-0410-a88d-b1316a301751 --- Master/tlpkg/tlgs/lib/viewcmyk.ps | 63 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 Master/tlpkg/tlgs/lib/viewcmyk.ps (limited to 'Master/tlpkg/tlgs/lib/viewcmyk.ps') 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 { % 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 -- cgit v1.2.3