Professional Documents
Culture Documents
%
% 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.
systemdict begin
% We make statusdict a little larger for Level 2 stuff.
% Note that it must be allocated in local VM.
.currentglobal false .setglobal
/statusdict 89 dict .forcedef % statusdict is local, sys'dict global
% To support the Level 2 job control features,
% serverdict must also be in local VM.
/serverdict 10 dict .forcedef % serverdict is local, sys'dict global
.setglobal
end
% Define various paper formats. The Adobe documentation defines only these:
% 11x17, a3, a4, a4small, b5, ledger, legal, letter, lettersmall, note.
% These procedures are also accessed as data structures during initialization,
% so the page dimensions must be the first two elements of the procedure.
% Permanent definitions
% Per-job parameters
/paperfamily 0 def % 0 is US, 1 is European
/papertray 1 def
/setpapertray {statusdict exch /papertray exch put} bind def
/trayswitch false def % paperout feeds from another tray
% We don't implement the (undocumented by Adobe) papersize 'operator',
% because it's very awkward to make it interact properly with all the
% different ways of setting the paper size.
%/papersize {/letter true} bind def % <name of paper size>, <short-edge-first-p>
/appletalktype (LaserWriter) def
%/dostartpage
/eescratch {pop 0} bind def
/idlefonts {statusdict begin mark .idlefonts aload pop end} bind def
/jobname () def
%/jobtimeout
/manualfeed false def
/manualfeedtimeout 60 def
/margins {statusdict begin .topmargin .leftmargin end} bind def
/pagecount {4711} bind def
/pagestackorder {false} bind def
/pagetype 0 def
/prefeed false def
/printererror {pop pop} bind def
/printername {statusdict /.printername get exch copy} bind def
/processcolors /processcolors load def % defined in systemdict
/product product def % product is defined in systemdict
/revision revision def % revision is defined in systemdict
/sccbatch {pop 9600 0} bind def
/sccinteractive {pop 9600 0} bind def
/setdefaulttimeouts {statusdict begin .timeouts astore pop end} bind def
/setdostartpage {statusdict exch /dostartpage exch put} bind def
/setduplexmode {mark /Duplex 3 -1 roll currentdevice putdeviceprops} bind def
/seteescratch {pop pop} bind def
/setidlefonts {] statusdict exch /.idlefonts exch put} bind def
/setjobtimeout {statusdict exch /jobtimeout exch put} bind def
/setmargins
{ statusdict begin
/.leftmargin exch def /.topmargin exch def
end
} bind def
/setresolution
{ mark /HWResolution [ 4 -1 roll dup ] currentdevice putdeviceprops pop
initmatrix erasepage
} bind def
/setsccbatch {pop pop pop} bind def
/setsccinteractive {pop pop pop} bind def
/settumble {pop} bind def
/waittimeout 300 def
%%%%%% End of documented items.
/.setpagesize
{ mark /HWSize [
4 index 4 index matrix defaultmatrix dtransform
abs ceiling cvi exch abs ceiling cvi exch
] currentdevice putdeviceprops pop pop pop
initmatrix initclip erasepage
} bind def
/.password 0 def
/.timeouts [0 60 30] def
true setdostartpage
mark setidlefonts
0 setjobtimeout
0 0 setmargins
product setprintername
end % statusdict
systemdict begin
.currentglobal true .setglobal
serverdict begin
end % serverdict