/
usr
/
share
/
ghostscript
/
Resource
/
Init
/
/usr/share/ghostscript/Resource/Init
mkdir
upload
Name
Size
Mode
Actions
cidfmap
2156
0644
edit
dl
rm
FAPIcidfmap
1483
0644
edit
dl
rm
FAPIconfig
815
0644
edit
dl
rm
FAPIfontmap
1468
0644
edit
dl
rm
FCOfontmap-PCLPS2
2857
0644
edit
dl
rm
Fontmap
109
0644
edit
dl
rm
Fontmap.GS
12929
0644
edit
dl
rm
gs_agl.ps
218021
0644
edit
dl
rm
gs_btokn.ps
12765
0644
edit
dl
rm
gs_cet.ps
4964
0644
edit
dl
rm
gs_cff.ps
6969
0644
edit
dl
rm
gs_cidcm.ps
16827
0644
edit
dl
rm
gs_ciddc.ps
8505
0644
edit
dl
rm
gs_cidfm.ps
8069
0644
edit
dl
rm
gs_cidfn.ps
14547
0644
edit
dl
rm
gs_cidtt.ps
5847
0644
edit
dl
rm
gs_cmap.ps
18444
0644
edit
dl
rm
gs_cspace.ps
4059
0644
edit
dl
rm
gs_dbt_e.ps
2134
0644
edit
dl
rm
gs_diskn.ps
6867
0644
edit
dl
rm
gs_dps1.ps
4756
0644
edit
dl
rm
gs_dps2.ps
8771
0644
edit
dl
rm
gs_dscp.ps
3938
0644
edit
dl
rm
gs_epsf.ps
12161
0644
edit
dl
rm
gs_fapi.ps
15611
0644
edit
dl
rm
gs_fntem.ps
11389
0644
edit
dl
rm
gs_fonts.ps
48531
0644
edit
dl
rm
gs_frsd.ps
3780
0644
edit
dl
rm
gs_icc.ps
3104
0644
edit
dl
rm
gs_il1_e.ps
2722
0644
edit
dl
rm
gs_img.ps
23998
0644
edit
dl
rm
gs_init.ps
94572
0644
edit
dl
rm
gs_lev2.ps
43850
0644
edit
dl
rm
gs_ll3.ps
19572
0644
edit
dl
rm
gs_mex_e.ps
3843
0644
edit
dl
rm
gs_mgl_e.ps
2181
0644
edit
dl
rm
gs_mro_e.ps
2506
0644
edit
dl
rm
gs_pdfwr.ps
32179
0644
edit
dl
rm
gs_pdf_e.ps
1556
0644
edit
dl
rm
gs_res.ps
42450
0644
edit
dl
rm
gs_resmp.ps
22482
0644
edit
dl
rm
gs_setpd.ps
38487
0644
edit
dl
rm
gs_statd.ps
17851
0644
edit
dl
rm
gs_std_e.ps
3143
0644
edit
dl
rm
gs_sym_e.ps
3104
0644
edit
dl
rm
gs_trap.ps
2946
0644
edit
dl
rm
gs_ttf.ps
66173
0644
edit
dl
rm
gs_typ32.ps
4560
0644
edit
dl
rm
gs_typ42.ps
2096
0644
edit
dl
rm
gs_type1.ps
12543
0644
edit
dl
rm
gs_wan_e.ps
1563
0644
edit
dl
rm
pdf_base.ps
60815
0644
edit
dl
rm
pdf_draw.ps
188723
0644
edit
dl
rm
pdf_font.ps
98378
0644
edit
dl
rm
pdf_main.ps
143907
0644
edit
dl
rm
pdf_ops.ps
75878
0644
edit
dl
rm
pdf_rbld.ps
20480
0644
edit
dl
rm
pdf_sec.ps
27865
0644
edit
dl
rm
xlatmap
1767
0644
edit
dl
rm
Edit:
/usr/share/ghostscript/Resource/Init/gs_btokn.ps
(12765B)
% Copyright (C) 2001-2021 Artifex Software, Inc. % 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. % % Refer to licensing information at http://www.artifex.com or contact % Artifex Software, Inc., 1305 Grant Avenue - Suite 200, Novato, % CA 94945, U.S.A., +1(415)492-9861, for further information. % % Initialization file for binary tokens. % When this is run, systemdict is still writable, % but everything defined here goes into level2dict. % Define whether or not to allow writing dictionaries. % This is a non-standard feature! /WRITEDICTS //false def languagelevel 1 .setlanguagelevel level2dict begin % Initialization for the system name table. mark % 0 /abs /add /aload /anchorsearch /and /arc /arcn /arct /arcto /array /ashow /astore /awidthshow /begin /bind /bitshift /ceiling /charpath /clear /cleartomark % 20 /clip /clippath /closepath /concat /concatmatrix /copy /count /counttomark /currentcmykcolor /currentdash /currentdict /currentfile /currentfont /currentgray /currentgstate /currenthsbcolor /currentlinecap /currentlinejoin /currentlinewidth /currentmatrix % 40 /currentpoint /currentrgbcolor /currentshared /curveto /cvi /cvlit /cvn /cvr /cvrs /cvs /cvx /def /defineusername /dict /div /dtransform /dup /end /eoclip /eofill % 60 /eoviewclip /eq /exch /exec /exit /file /fill /findfont /flattenpath /floor /flush /flushfile /for /forall /ge /get /getinterval /grestore /gsave /gstate % 80 /gt /identmatrix /idiv /idtransform /if /ifelse /image /imagemask /index /ineofill /infill /initviewclip /inueofill /inufill /invertmatrix /itransform /known /le /length /lineto % 100 /load /loop /lt /makefont /matrix /maxlength /mod /moveto /mul /ne /neg /newpath /not /null /or /pathbbox /pathforall /pop /print /printobject % 120 /put /putinterval /rcurveto /read /readhexstring /readline /readstring /rectclip /rectfill /rectstroke /rectviewclip /repeat /restore /rlineto /rmoveto /roll /rotate /round /save /scale % 140 /scalefont /search /selectfont /setbbox /setcachedevice /setcachedevice2 /setcharwidth /setcmykcolor /setdash /setfont /setgray /setgstate /sethsbcolor /setlinecap /setlinejoin /setlinewidth /setmatrix /setrgbcolor /setshared /shareddict % 160 /show /showpage /stop /stopped /store /string /stringwidth /stroke /strokepath /sub /systemdict /token /transform /translate /truncate /type /uappend /ucache /ueofill /ufill % 180 /undef /upath /userdict /ustroke /viewclip /viewclippath /where /widthshow /write /writehexstring /writeobject /writestring /wtranslation /xor /xshow /xyshow /yshow /FontDirectory /SharedFontDirectory /Courier % 200 /Courier-Bold /Courier-BoldOblique /Courier-Oblique /Helvetica /Helvetica-Bold /Helvetica-BoldOblique /Helvetica-Oblique /Symbol /Times-Bold /Times-BoldItalic /Times-Italic /Times-Roman /execuserobject /currentcolor /currentcolorspace /currentglobal /execform /filter /findresource /globaldict % 220 /makepattern /setcolor /setcolorspace /setglobal /setpagedevice /setpattern % pad to 256 counttomark 256 exch sub { 0 } repeat % 256 /= /== /ISOLatin1Encoding /StandardEncoding % 260 ([) cvn (]) cvn /atan /banddevice /bytesavailable /cachestatus /closefile /colorimage /condition /copypage /cos /countdictstack /countexecstack /cshow /currentblackgeneration /currentcacheparams /currentcolorscreen /currentcolortransfer /currentcontext /currentflat % 280 /currenthalftone /currenthalftonephase /currentmiterlimit /currentobjectformat /currentpacking /currentscreen /currentstrokeadjust /currenttransfer /currentundercolorremoval /defaultmatrix /definefont /deletefile /detach /deviceinfo /dictstack /echo /erasepage /errordict /execstack /executeonly % 300 /exp /false /filenameforall /fileposition /fork /framedevice /grestoreall /handleerror /initclip /initgraphics /initmatrix /instroke /inustroke /join /kshow /ln /lock /log /mark /monitor % 320 /noaccess /notify /nulldevice /packedarray /quit /rand /rcheck /readonly /realtime /renamefile /renderbands /resetfile /reversepath /rootfont /rrand /run /scheck /setblackgeneration /setcachelimit /setcacheparams % 340 /setcolorscreen /setcolortransfer /setfileposition /setflat /sethalftone /sethalftonephase /setmiterlimit /setobjectformat /setpacking /setscreen /setstrokeadjust /settransfer /setucacheparams /setundercolorremoval /sin /sqrt /srand /stack /status /statusdict % 360 /true /ucachestatus /undefinefont /usertime /ustrokepath /version /vmreclaim /vmstatus /wait /wcheck /xcheck /yield /defineuserobject /undefineuserobject /UserObjects /cleardictstack % 376 /A /B /C /D /E /F /G /H /I /J /K /L /M /N /O /P /Q /R /S /T /U /V /W /X /Y /Z /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o /p /q /r /s /t /u /v /w /x /y /z % 428 /setvmthreshold (<<) cvn (>>) cvn /currentcolorrendering /currentdevparams /currentoverprint /currentpagedevice /currentsystemparams /currentuserparams /defineresource /findencoding /gcheck % 440 /glyphshow /languagelevel /product /pstack /resourceforall /resourcestatus /revision /serialnumber /setcolorrendering /setdevparams /setoverprint /setsystemparams /setuserparams /startjob /undefineresource /GlobalFontDirectory /ASCII85Decode /ASCII85Encode /ASCIIHexDecode /ASCIIHexEncode % 460 /CCITTFaxDecode /CCITTFaxEncode /DCTDecode /DCTEncode /LZWDecode /LZWEncode /NullEncode /RunLengthDecode /RunLengthEncode /SubFileDecode /CIEBasedA /CIEBasedABC /DeviceCMYK /DeviceGray /DeviceRGB /Indexed /Pattern /Separation /CIEBasedDEF /CIEBasedDEFG % 480 /DeviceN % 481 -- end //.packtomark exec .installsystemnames % Define printobject and writeobject. % These are mostly implemented in PostScript, so that we don't have to % worry about interrupts or callbacks when writing to the output file. % Define procedures for accumulating the space required to represent % an object in binary form. % <#refs> <#chars> <obj> -proc- <#refs'> <#chars'> /cntdict mark /integertype /pop load /realtype 1 index /marktype 1 index /nulltype 1 index /booleantype 1 index /nametype { length add } .bind /stringtype 1 index /arraytype 0 % replaced below /dicttype 0 % replaced below .dicttomark def /.cntobj { dup type //cntdict exch get exec } .bind def cntdict /arraytype { dup length % #refs #chars array len 4 -1 roll add % #chars array #refs+len dup 65536 gt { /writeobject .systemvar /limitcheck signalerror } if 3 1 roll % #refs+len #chars array //.cntobj forall } .bind put % replace arraytype in cntdict cntdict /dicttype { /writeobject .systemvar /typecheck signalerror } bind put /.bosheader { % <top_length> <total_length> <string8> .bosheader % <string4|8> dup 0 currentobjectformat 127 add put % object format => BOS tag 2 index 255 le 2 index 65531 le and { % Use the short header format: tag toplen(1) totlen(2) exch 4 add exch 0 4 getinterval dup 1 5 -1 roll put } { % Use the long header format: tag 0(1) toplen(2) totlen(4) exch 8 add exch 0 0 4 2 roll .bosobject exch pop exch pop % store with byte swapping } ifelse % Stack: shortlen str exch dup -8 bitshift exch 255 and % str hibyte lobyte currentobjectformat 1 and 0 eq { % lsb first exch } if 2 index 3 3 -1 roll put 1 index 2 3 -1 roll put } .bind def /.writeobjects { % <file> <tag> <array> .writeobjects - % Apply the tag early and forget about it. (12345678) dup 1 5 -1 roll % file array (...) (...) 1 tag put exch % file (.t.) array % Calculate the space required for refs and strings. % Reject excessively large graphs or graphs with loops. 0 0 % file (.t.) array #refs #chars 2 index //.cntobj exec % file (.t.) array #refs #chars % Write the header. 1 index 8 mul add % file (.t.) array #refs #refs*8+#chars 2 index length exch (12345678) % file (.t.) array #refs len(array) #refs*8+#chars (...) //.bosheader exec % file (.t.) array #refs (...) 4 index exch writestring % file (.t.) array #refs % Traverse an array tree in width-first order and place all the % arrays that are found on the operand stack. Acyclic graphs are % expanded to trees. The top parameter K indicates the number % of arrays on a given depth level. At the root level, K is equal to 1. mark 2 index 1 % file (.t.) array #refs -mark- array K { dup 0 le { pop exit } if dup { dup index { dup type /arraytype eq { exch 1 add } { pop } ifelse } forall 1 sub } repeat } loop % file (.t.) array #refs -mark- array1 ... arrayN counttomark 5 add -4 roll % -mark- array1 ... arrayN file (.t.) array #refs % Write the content of the root array 8 mul % -mark- array1 ... arrayN file (.t.) array #refs*8 exch dup length 8 mul % -mark- array1 ... arrayN file (.t.) #refs*8 array len(array)*8 3 1 roll % -mark- array1 ... arrayN file (.t.) len(array)*8 #refs*8 array { 3 index % -mark- array1 ... arrayN file (.t.) len(array)*8 #refs*8 obj (.t.) .bosobject % -mark- array1 ... arrayN file (.t.) len(array)*8 #refs*8 (.t.) 4 index exch writestring % -mark- array1 ... arrayN file (.t.) len(array)*8 #refs*8 } forall 3 -1 roll pop % -mark- array1 ... arrayN file len(array)*8 #refs*8 % Write the remaining arrays counttomark 2 sub -1 3 { index { % ... file #refs #str obj (1\000345678) .bosobject % ... file #refs #str (...) 3 index exch writestring % ... file #refs #str } forall } for pop pop % -mark- array1 ... arrayN file % Write strings and names. counttomark 1 sub -1 1 { index { dup type /nametype eq { .namestring } if dup type /stringtype eq { 1 index exch writestring } { pop } ifelse } forall } for cleartomark % Clean up } .bind def /.writeobject { 3 copy exch % We must allocate the array in local VM % to avoid a possible invalidaccess. .currentglobal //false .setglobal exch 1 array astore exch .setglobal //.writeobjects exec pop pop pop } .bind def /printobject { % <obj> <tag> printobject - currentobjectformat 0 eq { /printobject .systemvar /undefined signalerror } if (%stdout) (w) file 2 index 2 index //.writeobject exec pop pop } odef /writeobject { % <file> <obj> <tag> writeobject - currentobjectformat 0 eq { /writeobject .systemvar /undefined signalerror } if 2 .argindex pop % check # of args //.writeobject exec } odef % Implement binary error message output. /.objectprinttest { % <obj> .objectprinttest - % This is a pseudo-operator so it will restore the stack % if it gets an error. mark 0 0 3 .argindex //.cntobj exec cleartomark pop } bind def /.printerror { $error /binary get .languagelevel 2 ge and { currentobjectformat 0 ne { [ /Error $error /errorname get $error /command get % Convert the object with cvs if it isn't printable. dup { //.objectprinttest exec } //.internalstopped exec { pop 100 string cvs } if //false ] 250 printobject } //.printerror % known to be a procedure ifelse } //.printerror % known to be a procedure ifelse } bind def currentdict /cntdict .undef % End of level2dict end .setlanguagelevel % undefine things defined in this file and not referenced elsewhere [ /.objectprinttest /.bosheader /.cntobj /.writeobject /.writeobjects ] dup level2dict .undefinternalnames systemdict .undefinternalnames
Save
cmd:
run