From dc55d4f5cde421a3704c183bc6ceb3fcdb6b0653 Mon Sep 17 00:00:00 2001 From: Reinhard Kotucha Date: Wed, 12 May 2010 19:25:45 +0000 Subject: tlgs: 8.70 => 8.71 git-svn-id: svn://tug.org/texlive/trunk@18215 c570f23f-e606-0410-a88d-b1316a301751 --- Master/tlpkg/tlgs/lib/gsnup.ps | 186 ++++++++++++++++++++--------------------- 1 file changed, 93 insertions(+), 93 deletions(-) mode change 100755 => 100644 Master/tlpkg/tlgs/lib/gsnup.ps (limited to 'Master/tlpkg/tlgs/lib/gsnup.ps') diff --git a/Master/tlpkg/tlgs/lib/gsnup.ps b/Master/tlpkg/tlgs/lib/gsnup.ps old mode 100755 new mode 100644 index df96ba332da..9b4fa039d39 --- a/Master/tlpkg/tlgs/lib/gsnup.ps +++ b/Master/tlpkg/tlgs/lib/gsnup.ps @@ -1,93 +1,93 @@ -%! -% Copyright (C) 1999 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: gsnup.ps 6300 2005-12-28 19:56:24Z giles $ -% Prefix this to very well-behaved PostScript files for n-up printing. - -/cdef { 1 index where { pop pop } { def } ifelse } def - -%%%%%%%%%%%%%%%% Begin parameters %%%%%%%%%%%%%%%% - -% All parameters are also settable from the command line with -d, e.g., -% -d.Nx=3 - -/.Nx 2 cdef % # of pages across the physical page -/.Ny 2 cdef % # of pages down the physical page -/.Landscape false cdef % if true, rotate page by 90 degrees - -%%%%%%%%%%%%%%%% End parameters %%%%%%%%%%%%%%%% - -vmstatus pop pop 0 eq { save pop } if -.Landscape { - currentpagedevice /PageSize get aload pop - exch 2 array astore - 1 dict dup /PageSize 4 -1 roll put - setpagedevice -} if -/.BP currentpagedevice /BeginPage get def -/.EP currentpagedevice /EndPage get def -/.Ps 1 string def % survive save/restore -/.Pn { .Ps 0 get } def -true setglobal % protect from restore -/.ELevel [0] def -/.Rmat matrix def -false setglobal -/.max { 2 copy lt { exch } if pop } cdef -% Work around the common save ... showpage ... restore locution. -/restore { - .Rmat currentmatrix pop restore - vmstatus pop pop .ELevel 0 get lt { .Rmat setmatrix } if -} bind def -<< - /BeginPage { - .Nx .Ny .max - gsave - initclip clippath pathbbox exch 4 -1 roll sub 3 1 roll exch sub - grestore - 2 copy exch .Nx div exch .Ny div - .Pn dup .Nx mod exch .Nx idiv .Ny 1 sub exch sub - % Stack: nmax pw ph pw/nx ph/ny ix iy - exch 3 index mul exch 2 index mul - translate - % Stack: nmax pw ph pw/nx ph/ny - 4 -1 roll 4 index div 4 -1 roll 4 index div - % Stack: nmax pw/nx ph/ny pw/nmax ph/nmax - exch 4 -1 roll exch sub 2 div - 3 1 roll sub 2 div - translate - % Stack: nmax - 1 exch div dup scale - .BP - } - /EndPage { - dup 2 lt { - .ELevel 0 vmstatus pop pop put - .Ps 0 .Pn 1 add .Nx .Ny mul mod put - .Pn 0 eq { - .EP - } { - pop pop false - } ifelse - } { - pop pop false - } ifelse - } ->> setpagedevice -/.EOJ { - { .Pn 0 eq { exit } if showpage } loop -} def - -{ currentfile cvx exec .EOJ } exec +%! +% Copyright (C) 1999 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: gsnup.ps 6300 2005-12-28 19:56:24Z giles $ +% Prefix this to very well-behaved PostScript files for n-up printing. + +/cdef { 1 index where { pop pop } { def } ifelse } def + +%%%%%%%%%%%%%%%% Begin parameters %%%%%%%%%%%%%%%% + +% All parameters are also settable from the command line with -d, e.g., +% -d.Nx=3 + +/.Nx 2 cdef % # of pages across the physical page +/.Ny 2 cdef % # of pages down the physical page +/.Landscape false cdef % if true, rotate page by 90 degrees + +%%%%%%%%%%%%%%%% End parameters %%%%%%%%%%%%%%%% + +vmstatus pop pop 0 eq { save pop } if +.Landscape { + currentpagedevice /PageSize get aload pop + exch 2 array astore + 1 dict dup /PageSize 4 -1 roll put + setpagedevice +} if +/.BP currentpagedevice /BeginPage get def +/.EP currentpagedevice /EndPage get def +/.Ps 1 string def % survive save/restore +/.Pn { .Ps 0 get } def +true setglobal % protect from restore +/.ELevel [0] def +/.Rmat matrix def +false setglobal +/.max { 2 copy lt { exch } if pop } cdef +% Work around the common save ... showpage ... restore locution. +/restore { + .Rmat currentmatrix pop restore + vmstatus pop pop .ELevel 0 get lt { .Rmat setmatrix } if +} bind def +<< + /BeginPage { + .Nx .Ny .max + gsave + initclip clippath pathbbox exch 4 -1 roll sub 3 1 roll exch sub + grestore + 2 copy exch .Nx div exch .Ny div + .Pn dup .Nx mod exch .Nx idiv .Ny 1 sub exch sub + % Stack: nmax pw ph pw/nx ph/ny ix iy + exch 3 index mul exch 2 index mul + translate + % Stack: nmax pw ph pw/nx ph/ny + 4 -1 roll 4 index div 4 -1 roll 4 index div + % Stack: nmax pw/nx ph/ny pw/nmax ph/nmax + exch 4 -1 roll exch sub 2 div + 3 1 roll sub 2 div + translate + % Stack: nmax + 1 exch div dup scale + .BP + } + /EndPage { + dup 2 lt { + .ELevel 0 vmstatus pop pop put + .Ps 0 .Pn 1 add .Nx .Ny mul mod put + .Pn 0 eq { + .EP + } { + pop pop false + } ifelse + } { + pop pop false + } ifelse + } +>> setpagedevice +/.EOJ { + { .Pn 0 eq { exit } if showpage } loop +} def + +{ currentfile cvx exec .EOJ } exec -- cgit v1.2.3