MINI SHELL

Server : Apache/2.2.2 (Fedora)
System : Linux App1.pathumtani.go.th 2.6.20-1.2320.fc5smp #1 SMP Tue Jun 12 19:40:16 EDT 2007 i686
User : apache ( 48)
PHP Version : 5.2.9
Disable Function : NONE
Directory :  /usr/share/ghostscript/8.15/lib/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //usr/share/ghostscript/8.15/lib/gsnup.ps
%!
%    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,v 1.4 2002/02/21 21:49:28 giles Exp $
% 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 {
    .BP .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
  }
  /EndPage {
    .ELevel 0 vmstatus pop pop put
    .Ps 0 .Pn 1 add .Nx .Ny mul mod put    
    .Pn 0 eq {
      .EP
    } {
      pop pop false
    } ifelse
  }
>> setpagedevice
/.EOJ {
  { .Pn 0 eq { exit } if showpage } loop
} def

{ currentfile cvx exec .EOJ } exec

Anon7 - 2021