home *** CD-ROM | disk | FTP | other *** search
/ Big Green CD 8 / BGCD_8_Apps.iso / YellowBox / Publishing / PDFView-2.0-mw-MIS / PDFView.app / Resources / pdfpkg.procset < prev    next >
Encoding:
Text File  |  1998-04-20  |  28.4 KB  |  804 lines

  1. %!
  2. %%Copyright: Copyright 1995 Guenther Fuerthaller. All Rights Reserved.
  3. /currentpacking where {pop currentpacking true setpacking}if
  4. %/L2 false def /where {dup /colorimage eq {pop false} {where} ifelse} bind def
  5. /L2 /languagelevel where {pop languagelevel 2 ge} {false} ifelse def
  6. /packedarray where {pop} {/packedarray {array astore readonly} bind def} ifelse
  7. /isarray {type dup /arraytype eq exch /packedarraytype eq or} bind def
  8. /hardbind
  9. {    dup xcheck exch mark exch
  10.     {    dup type /marktype eq
  11.         {pop {mark} aload pop}
  12.         {    dup xcheck
  13.             {    dup type /nametype eq
  14.                 {dup where {exch get dup xcheck {dup isarray {{exec} aload pop} if} if} if}
  15.                 {dup isarray {hardbind} if}
  16.                 ifelse
  17.             } if
  18.         }
  19.         ifelse
  20.     } forall
  21.     counttomark packedarray exch pop exch {cvx} if
  22. } bind def
  23. systemdict /nextimage known
  24. {    /image
  25.     {    dup type /dicttype eq currentcolorspace 0 get dup /CIEBasedA eq exch /CIEBasedABC eq or and
  26.         {currentcolorrendering 0 dict copy setcolorrendering} if
  27.         image
  28.     } hardbind def
  29. } if
  30. /NextStepEncoding where
  31. {    pop
  32.     /nxfindfont /findfont load def
  33.     /CopyOfStandardEncoding StandardEncoding dup length array copy def
  34.     /findfont
  35.     {    /currentshared where {pop currentshared} {false} ifelse
  36.          {nxfindfont}
  37.         {    dup nxfindfont
  38.             dup /Encoding get NextStepEncoding eq
  39.             {    dup length dict begin
  40.                 {1 index /FID ne {def} {pop pop} ifelse} forall
  41.                 /Encoding CopyOfStandardEncoding def
  42.                 currentdict end definefont
  43.             }
  44.             {exch pop}
  45.             ifelse
  46.         }
  47.         ifelse
  48.     } bind def
  49. } if
  50. /product where {pop product} {(unknown)} ifelse
  51. (Ghostscript) search exch pop
  52. {    pop pop
  53. %% In some cases ASCIIHexDecode filter doesn't read the eof marker
  54.     /repairfilterbugsdict 1 dict def
  55.     repairfilterbugsdict begin
  56.     /ASCIIHexDecode
  57.     {    filter
  58.         3 dict begin
  59.         /src exch def
  60.         /state 1 string dup 0 0 put def
  61.         /buf 501 string def
  62.         [    currentdict end
  63.             {    begin
  64.                 {    {    /state load 0 1 put
  65.                         /src load /buf load readstring
  66.                         {0 500 getinterval}
  67.                         {/state load 0 2 put /src load closefile}
  68.                         ifelse
  69.                     }
  70.                     {    /src load /buf load dup 0 1 index 500 get put 1 500 getinterval readstring
  71.                         {pop 500}
  72.                         {length 1 add /state load 0 2 put /src load closefile}
  73.                         ifelse
  74.                         /buf load 0 3 -1 roll getinterval
  75.                     }
  76.                     {()}
  77.                 }
  78.                 /state load 0 get get exec
  79.                 end
  80.             } /exec cvx
  81.         ] cvx 0 () /SubFileDecode
  82.     } hardbind def
  83.     end
  84.     /filter
  85.     {    repairfilterbugsdict 1 index known
  86.         {repairfilterbugsdict 1 index get exec} if
  87.         filter
  88.     } hardbind def
  89. } if
  90. L2 not
  91. {    /setcmykcolor where
  92.     {pop}
  93.     {    /setcmykcolor
  94.         {1 sub 4 1 roll 3 {3 index add neg dup 0 lt { pop 0 } if 3 1 roll} repeat setrgbcolor pop} hardbind def
  95.     }
  96.     ifelse
  97.     /rectclip where
  98.     {pop}
  99.     {    /rectclip
  100.         {4 2 roll moveto 1 index 0 rlineto 0 exch rlineto neg 0 rlineto closepath clip newpath} hardbind def
  101.     }
  102.     ifelse
  103.     /execform
  104.     {    gsave dup begin
  105.         Matrix concat BBox aload pop exch 3 index sub exch 2 index sub rectclip
  106.         /PaintProc load end exec
  107.         grestore
  108.     } hardbind def
  109.     /UserObjects 10 array def
  110.     /defineuserobject
  111.     {    exch dup 1 add dup /UserObjects load length gt
  112.         {array dup 0 /UserObjects load putinterval /UserObjects exch store} {pop} ifelse
  113.         /UserObjects load exch 3 -1 roll put
  114.     } hardbind def
  115.     /undefineuserobject {/UserObjects load exch null put} hardbind def
  116.     /execuserobject {/UserObjects load exch get exec} hardbind def
  117. } if
  118.  
  119. mark /AHx /ASCIIHexDecode /A85 /ASCII85Decode /CCF /CCITTFaxDecode
  120. /DCT /DCTDecode /LZW /LZWDecode /RL /RunLengthDecode /Fl /FlateDecode
  121. counttomark 2 idiv dup dict begin {def} repeat currentdict end /ShrtFN exch def pop
  122. mark /CMYK /DeviceCMYK /G /DeviceGray /RGB /DeviceRGB /I /Indexed /CG /CalGray /CR /CalRGB /CC /CalCMYK
  123. counttomark 2 idiv dup dict begin {def} repeat currentdict end /ShrtCSN exch def pop
  124. mark /W /Width /H /Height /BPC /BitsPerComponent /CS /ColorSpace /F /Filter
  125. /I /Interpolate /IM /ImageMask /D /Decode /DP /DecodeParms
  126. counttomark 2 idiv dup dict begin {def} repeat currentdict end /imgparaabrevdict exch def pop
  127. /buildimagecolorspace
  128. {    dup type /nametype eq
  129.     {ShrtCSN 1 index known {ShrtCSN exch get} if}
  130.     {    dup 0 2 copy get buildimagecolorspace put
  131.         dup 0 get /Indexed eq {dup 1 2 copy get buildimagecolorspace put} if
  132.     }
  133.     ifelse
  134. } hardbind def
  135. /buildimagedict
  136. {    counttomark 2 idiv dup 10 add dict begin
  137.     {    imgparaabrevdict 2 index known {imgparaabrevdict 3 -1 roll get exch} if
  138.         1 index /ColorSpace eq {buildimagecolorspace} if
  139.         1 index /Filter eq
  140.         {    dup isarray
  141.             {[exch {ShrtFN 1 index known {ShrtFN exch get} if} forall]}
  142.             {ShrtFN 1 index known {ShrtFN exch get} if}
  143.             ifelse
  144.         } if
  145.         def
  146.     } repeat cleartomark currentdict end
  147. } hardbind def
  148.  
  149. /numcolorspacecomponents 8 dict def
  150. numcolorspacecomponents begin
  151. /DeviceGray 1 def
  152. /DeviceRGB 3 def
  153. /DeviceCMYK 4 def
  154. /CIEBasedABC 3 def
  155. /CIEBasedA 1 def
  156. /Pattern 1 def
  157. /Indexed 1 def
  158. /Separation 1 def
  159. end
  160.  
  161. /pdfpkg 200 dict def
  162. pdfpkg begin
  163.  
  164. /pdfpkgget {pdfpkg exch get} hardbind def
  165. /pdfpkgput {pdfpkg 3 1 roll put} hardbind def
  166. /pdfpkgexec {pdfpkgget exec} hardbind def
  167.  
  168. /pdfresources 3 dict def
  169. pdfresources begin
  170. /Category pdfresources def
  171. end
  172. /pdfdefineresource {pdfresources exch get 3 1 roll put} hardbind def
  173. /pdffindresource {pdfresources exch get exch get} hardbind def
  174.  
  175. /ColorSpace 100 dict /Category pdfdefineresource
  176. /definecolorspaceresource {/ColorSpace pdfdefineresource} hardbind def
  177. /findcolorspaceresource {/ColorSpace pdffindresource} hardbind def
  178.  
  179. /Pattern 100 dict /Category pdfdefineresource
  180. /definepatternresource
  181. {dup /Matrix known {dup /Matrix get} {matrix} ifelse makepattern /Pattern pdfdefineresource} hardbind def
  182. /findpatternresource {/Pattern pdffindresource} hardbind def
  183.  
  184. /ExtGState 100 dict /Category pdfdefineresource
  185. /defineextgstateresource {/ExtGState pdfdefineresource} hardbind def
  186. /findextgstateresource {/ExtGState pdffindresource} hardbind def
  187.  
  188. /DeviceGray [/DeviceGray] definecolorspaceresource
  189. /DeviceRGB [/DeviceRGB] definecolorspaceresource
  190. /DeviceCMYK [/DeviceCMYK] definecolorspaceresource
  191. /Pattern [/Pattern] definecolorspaceresource
  192. /DefaultGray /DeviceGray findcolorspaceresource definecolorspaceresource
  193. /DefaultRGB /DeviceRGB findcolorspaceresource definecolorspaceresource
  194. /calibratecolorspacedict 8 dict def
  195. /calibratecolorspace
  196. {    dup type /nametype eq
  197.     {findcolorspaceresource}
  198.     {calibratecolorspacedict 1 index 0 get get exec}
  199.     ifelse
  200. } hardbind def
  201. calibratecolorspacedict begin
  202. /DeviceGray {pop /DeviceGray findcolorspaceresource} def
  203. /DeviceRGB {pop /DeviceRGB findcolorspaceresource} def
  204. /DeviceCMYK {} def
  205. /CIEBasedABC {} def
  206. /CIEBasedA {} def
  207. /Pattern {} def
  208. /Indexed {dup 1 2 copy get calibratecolorspace put} def
  209. /Separation {dup 2 2 copy get calibratecolorspace put} def
  210. end
  211.  
  212. /cmtmpmat matrix def
  213. /clipper {} def
  214. /fillcolorspace null def
  215. /strokecolorspace null def
  216. /fillcolor null def
  217. /fillcolorarrays [null [0] [0 0] [0 0 0] [0 0 0 0] [0 0 0 0 0]] def
  218. /strokecolor null def
  219. /strokecolorarrays [null [0] [0 0] [0 0 0] [0 0 0 0] [0 0 0 0 0]] def
  220. /mustinstallfillcolor true def
  221. /mustinstallstrokecolor true def
  222. /InText false def
  223. /TextLeading 0 def
  224. /TextRise 0 def
  225. /TextCharSpacing 0 def
  226. /TextWordSpacing 0 def
  227. /TextRendering 0 def
  228. /TextHScale 1 def
  229. /TextSize 1 def
  230. /TextMatrix matrix def
  231. /TextBaseMatrix matrix def
  232.  
  233. /_q null def
  234. /q {/_q save pdfpkgput} hardbind def
  235. /Q {/_q pdfpkgget restore} hardbind def
  236.  
  237. /cs
  238. {    findcolorspaceresource /fillcolorspace 1 index pdfpkgput
  239.     /fillcolor fillcolorarrays numcolorspacecomponents 4 -1 roll 0 get get get pdfpkgput
  240.     /mustinstallfillcolor true pdfpkgput
  241. } hardbind def
  242. /CS
  243. {    findcolorspaceresource /strokecolorspace 1 index pdfpkgput
  244.     /strokecolor strokecolorarrays numcolorspacecomponents 4 -1 roll 0 get get get pdfpkgput
  245.     /mustinstallstrokecolor true pdfpkgput
  246. } hardbind def
  247. /sc
  248. {    /fillcolor pdfpkgget astore pop
  249.     /mustinstallfillcolor true pdfpkgput
  250. } hardbind def
  251. /SC
  252. {    /strokecolor pdfpkgget astore pop
  253.     /mustinstallstrokecolor true pdfpkgput
  254. } hardbind def
  255. /scn
  256. {    /fillcolorspace pdfpkgget 0 get /Pattern eq
  257.     {    findpatternresource 1 1 index /PaintType get 2 eq
  258.         {numcolorspacecomponents /fillcolorspace pdfpkgget 1 get dup isarray {0 get} if get add} if
  259.         /fillcolor fillcolorarrays 3 -1 roll get pdfpkgput
  260.     } if
  261.     sc
  262. } hardbind def
  263. /SCN
  264. {    /strokecolorspace pdfpkgget 0 get /Pattern eq
  265.     {    findpatternresource 1 1 index /PaintType get 2 eq
  266.         {numcolorspacecomponents /strokecolorspace pdfpkgget 1 get dup isarray {0 get} if get add} if
  267.         /strokecolor strokecolorarrays 3 -1 roll get pdfpkgput
  268.     } if
  269.     SC
  270. } hardbind def
  271. /g {/DeviceGray cs sc} hardbind def
  272. /G {/DeviceGray CS SC} hardbind def
  273. /rg {/DeviceRGB cs sc} hardbind def
  274. /RG {/DeviceRGB CS SC} hardbind def
  275. /k {/DeviceCMYK cs sc} hardbind def
  276. /K {/DeviceCMYK CS SC} hardbind def
  277. L2
  278. {    /pkgsetcolorspace /setcolorspace load def
  279.     /pkgsetcolor /setcolor load def
  280.     /pkgimage /image load def
  281.     /pkgimagemask /imagemask load def
  282. }
  283. {    /pkgsetcolorspacedict 4 dict def
  284.     /pkgsetcolorspace {dup isarray {0 get} if pkgsetcolorspacedict exch get {aload pop pdfpkgput} forall} hardbind def
  285.     /pkgsetcolor null def
  286.     /pkgimage null def
  287.     /pkgimagemask
  288.     {    begin {/Width /Height /ImageMatrix /DataSource} {load} forall /Decode load 0 get 0 ne 3 1 roll end
  289.         imagemask
  290.     } hardbind def
  291.     /pushimageparams {begin {/Width /Height /BitsPerComponent /ImageMatrix /DataSource} {load} forall end} hardbind def
  292.     /pkggrayimage {pushimageparams image} hardbind def
  293.     /pkgimageworkbuf 65535 string def
  294.     /havecolorimage /colorimage where {pop true} {false} ifelse def
  295.     havecolorimage not {save} if
  296.     /pkgrgbimage {pushimageparams false 3 colorimage} hardbind def
  297.     /pkgcmykimage {pushimageparams false 4 colorimage} hardbind def
  298.     havecolorimage not {restore} if
  299.     havecolorimage {save} if
  300.     /NTSCSUM {.11 mul exch .59 mul add exch .3 mul add} hardbind def
  301.     /rgbtogray8Bit {NTSCSUM round cvi} hardbind def
  302.     /cmyktogray8Bit {4 1 roll NTSCSUM add dup 255 gt {pop 0} {255 exch sub} ifelse round cvi} hardbind def
  303.     /pkgrgbimage
  304.     {    pushimageparams
  305.         {    {exec pkgimageworkbuf 0 3 -1 roll length 8 mul 3 idiv getinterval}
  306.             {exec pkgimageworkbuf 0 3 -1 roll length 4 mul 3 idiv getinterval}
  307.             {exec pkgimageworkbuf 0 3 -1 roll length 2 mul 3 idiv getinterval}
  308.             null
  309.             {    exec 0 1 2 index length 3 idiv 1 sub
  310.                 {2 copy 3 mul 3 getinterval {} forall rgbtogray8Bit pkgimageworkbuf 3 1 roll put} for
  311.                 pkgimageworkbuf 0 3 -1 roll length 3 idiv getinterval
  312.             }
  313.         }
  314.         3 index 2 idiv get aload length 1 add packedarray cvx image
  315.     } hardbind def
  316.     /pkgcmykimage
  317.     {    pushimageparams
  318.         {    {exec pkgimageworkbuf 0 3 -1 roll length 2 mul getinterval}
  319.             {exec pkgimageworkbuf 0 3 -1 roll length getinterval}
  320.             {    exec 0 1 2 index length 2 idiv 1 sub
  321.                 {    2 copy 2 mul 2 getinterval {} forall
  322.                     exch dup -4 bitshift 15 and exch 15 and 3 -1 roll dup -4 bitshift 15 and exch 15 and
  323.                     4 {17 mul 4 1 roll} repeat
  324.                     cmyktogray8Bit pkgimageworkbuf 3 1 roll put
  325.                 } for
  326.                 pkgimageworkbuf 0 3 -1 roll length 2 idiv getinterval
  327.             }
  328.             null
  329.             {    exec 0 1 2 index length 4 idiv 1 sub
  330.                 {2 copy 4 mul 4 getinterval {} forall cmyktogray8Bit pkgimageworkbuf 3 1 roll put} for
  331.                 pkgimageworkbuf 0 3 -1 roll length 4 idiv getinterval
  332.             }
  333.         }
  334.         3 index 2 idiv get aload length 1 add packedarray cvx image
  335.     } hardbind def
  336.     havecolorimage {restore} if
  337.     /pkgimagebuf null def
  338.     /pkgimagestripcnt 0 def
  339.     /pkgindexedimageprocdict 3 dict def
  340.     pkgindexedimageprocdict begin
  341.     /DeviceGray
  342.     {    exec pkgimageworkbuf 0 2 index length getinterval 0 3 -1 roll
  343.         {    3 index exch get
  344.             3 copy put pop 1 add
  345.         } forall pop exch pop
  346.     } hardbind def
  347.     /DeviceRGB
  348.     {    exec pkgimageworkbuf 0 2 index length 3 mul getinterval 0 3 -1 roll
  349.         {    3 index exch 3 mul 3 getinterval
  350.             3 copy putinterval pop 3 add
  351.         } forall pop exch pop
  352.     } hardbind def
  353.     /DeviceCMYK
  354.     {    exec pkgimageworkbuf 0 2 index length 4 mul getinterval 0 3 -1 roll
  355.         {    3 index exch 4 mul 4 getinterval
  356.             3 copy putinterval pop 4 add
  357.         } forall pop exch pop
  358.     } hardbind def
  359.     end
  360.     /normalizelookup
  361.     {    8 dict begin
  362.         /numdestcomps numcolorspacecomponents ColorSpace 1 get dup isarray {0 get} if get def
  363.         /numindices 2 BitsPerComponent exp cvi def
  364.         /maxval numindices 1 sub def
  365.         /decodescale Decode aload pop exch sub maxval div def
  366.         /decodemin Decode 0 get def
  367.         /hival ColorSpace 2 get def
  368.         /srclookup ColorSpace 3 get def
  369.         decodemin 0 ne decodescale 1 ne or hival maxval ne or
  370.         {    /dstlookup numdestcomps numindices mul string def
  371.             0 1 maxval
  372.             {    dup numdestcomps mul exch decodescale mul decodemin add
  373.                 0 2 copy lt {exch} {pop hival 2 copy gt {exch} if} ifelse pop cvi
  374.                 numdestcomps mul numdestcomps srclookup 3 1 roll getinterval
  375.                 dstlookup 3 1 roll putinterval
  376.             } for
  377.             ColorSpace 2 maxval put ColorSpace 3 dstlookup put
  378.             0 maxval Decode astore pop
  379.         } if
  380.         end
  381.     } bind def
  382.     /pkgindexedimage
  383.     {    begin
  384.         normalizelookup
  385.         havecolorimage not /ColorSpace load 1 get dup isarray {0 get} if /DeviceGray ne and
  386.         {    /ColorSpace load 1 get dup isarray {0 get} if /DeviceRGB eq
  387.             {    0 1 /ColorSpace load 2 get
  388.                 {    dup 3 mul 3 /ColorSpace load 3 get 3 1 roll getinterval {} forall rgbtogray8Bit
  389.                     /ColorSpace load 3 get 3 1 roll put
  390.                 } for
  391.             }
  392.             {    0 1 /ColorSpace load 2 get
  393.                 {    dup 4 mul 4 /ColorSpace load 3 get 3 1 roll getinterval {} forall cmyktogray8Bit
  394.                     /ColorSpace load 3 get 3 1 roll put
  395.                 } for
  396.             }
  397.             ifelse
  398.             /ColorSpace load 3 2 copy get 0 3 index 2 get 1 add getinterval put
  399.             /ColorSpace load 1 /DeviceGray put
  400.         } if
  401.         /ColorSpace load 3 get /DataSource load
  402.         pkgindexedimageprocdict /ColorSpace load 1 get dup isarray {0 get} if get
  403.         aload length 2 add packedarray cvx /DataSource exch def
  404.         /ColorSpace dup load 1 get def
  405.         /ColorSpace load pkgsetcolorspace currentdict end /pkgimage pdfpkgexec
  406.     } hardbind def
  407.     pkgsetcolorspacedict begin
  408.     /DeviceGray [[/pkgsetcolor /setgray load] [/pkgimage /pkggrayimage load]] def
  409.     /DeviceRGB [[/pkgsetcolor /setrgbcolor load] [/pkgimage /pkgrgbimage load]] def
  410.     /DeviceCMYK [[/pkgsetcolor /setcmykcolor load] [/pkgimage /pkgcmykimage load]] def
  411.     /Indexed [[/pkgsetcolor null] [/pkgimage /pkgindexedimage load]] def
  412.     end
  413. }
  414. ifelse
  415. /installfillcolor
  416. {    /mustinstallfillcolor pdfpkgget
  417.     {    /fillcolorspace pdfpkgget /pkgsetcolorspace pdfpkgexec
  418.         /fillcolor pdfpkgget aload pop /pkgsetcolor pdfpkgexec
  419.         /mustinstallfillcolor false pdfpkgput
  420.         /mustinstallstrokecolor true pdfpkgput
  421.     } if
  422. } hardbind def
  423. /installstrokecolor
  424. {    /mustinstallstrokecolor pdfpkgget
  425.     {    /strokecolorspace pdfpkgget /pkgsetcolorspace pdfpkgexec
  426.         /strokecolor pdfpkgget aload pop /pkgsetcolor pdfpkgexec
  427.         /mustinstallstrokecolor false pdfpkgput
  428.         /mustinstallfillcolor true pdfpkgput
  429.     } if
  430. } hardbind def
  431.  
  432. /cm {cmtmpmat astore concat} hardbind def
  433. /n {/clipper pdfpkgexec /clipper {} pdfpkgput newpath} hardbind def
  434. /N /n load def
  435. /W {/clipper {clip} pdfpkgput} hardbind def
  436. /W* {/clipper {eoclip} pdfpkgput} hardbind def
  437. /f {/installfillcolor pdfpkgexec q fill Q n} hardbind def
  438. /f* {/installfillcolor pdfpkgexec q eofill Q n} hardbind def
  439. /F /f load def
  440. /F* /f* load def
  441. /S {/installstrokecolor pdfpkgexec q stroke Q n} hardbind def
  442. /s {h S} hardbind def
  443. /B {q f Q S} hardbind def
  444. /B* {q f* Q S} hardbind def
  445. /b {h B} hardbind def
  446. /b* {h B*} hardbind def
  447. /re {4 2 roll m 1 index 0 rlineto 0 exch rlineto neg 0 rlineto h} hardbind def
  448. /ri
  449. {    /findcolorrendering where
  450.     {    pop findcolorrendering pop dup /ColorRendering resourcestatus
  451.         {pop pop /ColorRendering findresource setcolorrendering} {pop} ifelse
  452.     }
  453.     {pop}
  454.     ifelse
  455. } hardbind def
  456. /PS {/pdfdebug where {/pdfdebug get} {false} ifelse {(/PS: ) print dup == flush} if pop} hardbind def
  457. /gsactiondict 7 dict def
  458. gsactiondict begin
  459. /SA mark {systemdict /currentwindow get exec} stopped {cleartomark {setstrokeadjust}} {cleartomark {pop}} ifelse def
  460. /OP {setoverprint} def
  461. /BG {setblackgeneration} def
  462. /UCR {setundercolorremoval} def
  463. /HT {sethalftone} def
  464. /HTP {aload pop sethalftonephase} def
  465. /TR {dup xcheck {settransfer} {aload pop setcolortransfer} ifelse} def
  466. end
  467. /gs {findextgstateresource {gsactiondict 2 index known {gsactiondict 3 -1 roll get exec} {pop pop} ifelse} forall} def
  468.  
  469. /m /moveto load def
  470. /l /lineto load def
  471. /c /curveto load def
  472. /v {currentpoint 6 2 roll c } hardbind def
  473. /y {2 copy c} hardbind def
  474. /h /closepath load def
  475. /d /setdash load def
  476. /j /setlinejoin load def
  477. /J /setlinecap load def
  478. /M /setmiterlimit load def
  479. /w /setlinewidth load def
  480. /defaultflat currentflat def
  481. /i {dup 0 eq {pop defaultflat} if setflat} hardbind def
  482. /d0 /setcharwidth load def
  483. /d1 {setcachedevice /installfillcolor {} pdfpkgput /installstrokecolor {} pdfpkgput} hardbind def
  484.  
  485. /BI {q mark} hardbind def
  486. /EI /Q load def
  487. /DI
  488. {    begin
  489.     /ImageType 1 def
  490.     /ImageMatrix [Width 0 0 Height neg 0 Height] def
  491.     currentdict /ImageMask known not    {/ImageMask false def} if
  492.     ImageMask
  493.     {/installfillcolor pdfpkgexec}
  494.     {    ColorSpace calibratecolorspace
  495.         /ColorSpace 1 index def
  496.         /pdfdebug where {/pdfdebug get} {false} ifelse
  497.         {    (imagecolorspace: ) print dup dup isarray {dup length 2 gt {0 3 getinterval} if} if ==
  498.             (BitsPerComponent: ) print BitsPerComponent ==
  499.             flush
  500.         } if
  501.         /pkgsetcolorspace pdfpkgexec
  502.     }
  503.     ifelse
  504.     currentdict /Intent known
  505.     {Intent /pdfdebug where {/pdfdebug get} {false} ifelse {(Intent: ) print dup == flush} if ri} if
  506.     currentdict /Decode known not
  507.     {    /Decode
  508.         [    ImageMask
  509.             {0 1}
  510.             {    ColorSpace dup isarray {0 get} if dup /Indexed eq
  511.                 {pop 0 2 BitsPerComponent exp 1 sub}
  512.                 {    dup /CIEBasedABC eq
  513.                     {pop ColorSpace 1 get /RangeABC 2 copy known {get aload pop} {pop pop 0 1 0 1 0 1} ifelse}
  514.                     {numcolorspacecomponents exch get {0 1} repeat}
  515.                     ifelse
  516.                 }
  517.                 ifelse
  518.             } ifelse
  519.         ] def
  520.     } if
  521.     L2 not
  522.     {    /pkgimagestripcnt Height pdfpkgput
  523.         /pkgimagebuf
  524.         Width ImageMask not
  525.         {    numcolorspacecomponents ColorSpace dup isarray {0 get} if get
  526.             mul BitsPerComponent mul
  527.         } if
  528.         7 add 8 idiv string pdfpkgput
  529.     } if
  530.     currentdict /DataSource known
  531.     {    L2 not
  532.         {    /DataSource load isarray not
  533.             {/DataSource dup load {pkgimagebuf readstring pop} aload length 1 add packedarray cvx def} if
  534.         } if
  535.     } 
  536.     {    L2
  537.         {    currentfile
  538.             currentdict /Filter known
  539.             {    Filter dup isarray {length} {pop 1} ifelse
  540.                 1 sub 0 1 3 -1 roll
  541.                 {    currentdict /DecodeParms known
  542.                     {DecodeParms dup isarray {1 index get} if dup null eq {pop} {exch} ifelse} if
  543.                     Filter dup isarray {exch get} {exch pop} ifelse
  544.                     filter
  545.                 } for
  546.             } if
  547.         }
  548.         {    currentdict /Filter known
  549.             {    Filter dup isarray
  550.                 {dup length 1 ne {(Image uses unsupported cascading filters: ) print flush Filter == flush quit} if 0 get} if
  551.                 /ASCIIHexDecode ne {(Image uses unsupported filter: ) print Filter == flush quit} if
  552.                 {    /pkgimagestripcnt pdfpkgget 0 gt
  553.                     {    currentfile pkgimagebuf readhexstring pop
  554.                         /pkgimagestripcnt dup pdfpkgget 1 sub dup 0 eq
  555.                         {{currentfile read {62 eq} {true} ifelse {exit} if} loop} if
  556.                         pdfpkgput
  557.                     }
  558.                     {()}
  559.                     ifelse
  560.                 }
  561.             }
  562.             {{currentfile pkgimagebuf readstring pop}}
  563.             ifelse
  564.         }
  565.         ifelse
  566.         /DataSource exch def
  567.     }
  568.     ifelse
  569.     currentdict ImageMask end {/pkgimagemask} {/pkgimage} ifelse pdfpkgexec
  570. } bind def
  571. /ID {buildimagedict DI} def
  572.  
  573.  
  574. /awidthparams {/TextWordSpacing pdfpkgget 0 32 /TextCharSpacing pdfpkgget 0 6 -1 roll} hardbind def
  575. /cshow where {pop} {/cshow {[0 0 5 -1 roll {exec} aload pop] cvx forall} hardbind def} ifelse
  576. /awidthcharpath    % cx cy char ax ay bool string awidthcharpath
  577. {    {    pop pop (0) dup 0 3 index put 2 index charpath
  578.         4 index eq {5 index 5 index rmoveto} if
  579.         2 index 2 index rmoveto
  580.     } exch cshow
  581.     pop pop pop pop pop pop
  582. } hardbind def
  583. /filltext {/installfillcolor pdfpkgexec awidthparams awidthshow} hardbind def
  584. /stroketext
  585. {    /installstrokecolor pdfpkgexec awidthparams false exch awidthcharpath
  586.     currentpoint cmtmpmat currentmatrix TextBaseMatrix setmatrix stroke setmatrix moveto
  587. } hardbind def
  588. /fillandstroketext {currentpoint 2 index filltext newpath moveto stroketext} hardbind def
  589. /appendtextpath {awidthparams false exch awidthcharpath} hardbind def
  590. /textprocs
  591. [/filltext load
  592. /stroketext load
  593. /fillandstroketext load
  594. {q nulldevice filltext currentpoint Q newpath moveto} hardbind
  595. {q dup filltext Q appendtextpath} hardbind
  596. {q dup stroketext Q appendtextpath} hardbind
  597. {q dup fillandstroketext Q appendtextpath} hardbind
  598. /appendtextpath load
  599. ] def
  600. /Tj {textprocs /TextRendering pdfpkgget get exec} hardbind def
  601. /inittextmatrix
  602. {    TextBaseMatrix setmatrix TextMatrix concat
  603.     0 /TextRise pdfpkgget translate /TextHScale pdfpkgget 1 scale
  604. } hardbind def
  605. /Tf {/TextSize 1 index pdfpkgput exch findfont exch scalefont setfont} hardbind def
  606. /Tw {/TextWordSpacing exch pdfpkgput} hardbind def
  607. /Tc {/TextCharSpacing exch pdfpkgput} hardbind def
  608. /TL {neg /TextLeading exch pdfpkgput} hardbind def
  609. /Ts {/TextRise exch pdfpkgput currentpoint inittextmatrix moveto} hardbind def
  610. /Tz {100 div /TextHScale exch pdfpkgput inittextmatrix} hardbind def
  611. /Tr
  612. {    /InText pdfpkgget {/TextRendering pdfpkgget 3 le {currentpoint newpath moveto} if} if
  613.     /pdfdebug where {/pdfdebug get} {false} ifelse {dup 0 ne {(TextRendering set to: ) print dup == flush} if} if
  614.     /TextRendering exch pdfpkgput
  615. } hardbind def
  616. /Td {cmtmpmat translate TextMatrix dup concatmatrix pop inittextmatrix 0 0 moveto} hardbind def
  617. /TD {/TextLeading 1 index pdfpkgput Td} hardbind def
  618. /T* {0 /TextLeading pdfpkgget Td} hardbind def
  619. /' {T* Tj} hardbind def
  620. /" {exch Tc exch Tw '} hardbind def
  621. /TJ {{dup type /stringtype eq {Tj} {1000 div /TextSize pdfpkgget mul neg 0 rmoveto} ifelse} forall} hardbind def
  622. /Tm {TextMatrix astore pop inittextmatrix 0 0 moveto} hardbind def
  623. /BT
  624. {    /InText true pdfpkgput
  625.     TextBaseMatrix currentmatrix pop TextMatrix identmatrix pop inittextmatrix newpath 0 0 moveto
  626. } hardbind def
  627. /ET
  628. {    /TextRendering pdfpkgget 3 gt {clip} if TextBaseMatrix setmatrix newpath
  629.     /InText false pdfpkgput
  630. } hardbind def
  631.  
  632. /reencodeenc null def
  633. /reencodeindex null def
  634. /reencode
  635. {    /reencodeenc exch pdfpkgput /reencodeindex 0 pdfpkgput
  636.     counttomark 1 sub -1 0
  637.     {    index dup type /nametype eq
  638.         {/reencodeenc pdfpkgget /reencodeindex pdfpkgget 3 -1 roll put /reencodeindex pdfpkgget 1 add} if
  639.         /reencodeindex exch pdfpkgput
  640.     } for
  641.     cleartomark /reencodeenc pdfpkgget
  642. } bind def
  643. /PredefinedEncodings
  644. [
  645. [39/quotesingle 96/grave 128/Adieresis/Aring/Ccedilla/Eacute/Ntilde/Odieresis
  646. /Udieresis/aacute/agrave/acircumflex/adieresis/atilde/aring/ccedilla/eacute
  647. /egrave/ecircumflex/edieresis/iacute/igrave/icircumflex/idieresis/ntilde
  648. /oacute/ograve/ocircumflex/odieresis/otilde/uacute/ugrave/ucircumflex
  649. /udieresis/dagger/degree/cent/sterling/section/bullet/paragraph/germandbls
  650. /registered/copyright/trademark/acute/dieresis/.notdef/AE/Oslash
  651. /.notdef/plusminus/.notdef/.notdef/yen/mu/.notdef/.notdef
  652. /.notdef/.notdef/.notdef/ordfeminine/ordmasculine/.notdef/ae/oslash
  653. /questiondown/exclamdown/logicalnot/.notdef/florin/.notdef/.notdef
  654. /guillemotleft/guillemotright/ellipsis/.notdef/Agrave/Atilde/Otilde/OE/oe
  655. /endash/emdash/quotedblleft/quotedblright/quoteleft/quoteright/divide
  656. /.notdef/ydieresis/Ydieresis/fraction/currency/guilsinglleft/guilsinglright
  657. /fi/fl/daggerdbl/periodcentered/quotesinglbase/quotedblbase/perthousand
  658. /Acircumflex/Ecircumflex/Aacute/Edieresis/Egrave/Iacute/Icircumflex
  659. /Idieresis/Igrave/Oacute/Ocircumflex/.notdef/Ograve/Uacute/Ucircumflex
  660. /Ugrave/dotlessi/circumflex/tilde/macron/breve/dotaccent/ring/cedilla
  661. /hungarumlaut/ogonek/caron
  662. StandardEncoding 256 array copy reencode
  663. [1/dotlessi/caron 39/quotesingle 96/grave 
  664. 127/bullet/bullet/bullet/quotesinglbase/florin/quotedblbase/ellipsis
  665. /dagger/daggerdbl/circumflex/perthousand/Scaron/guilsinglleft/OE
  666. /bullet/bullet/bullet/bullet/quoteleft/quoteright/quotedblleft
  667. /quotedblright/bullet/endash/emdash/tilde/trademark/scaron
  668. /guilsinglright/oe/bullet/bullet/Ydieresis/space/exclamdown/cent/sterling
  669. /currency/yen/brokenbar/section/dieresis/copyright/ordfeminine
  670. /guillemotleft/logicalnot/hyphen/registered/macron/degree/plusminus
  671. /twosuperior/threesuperior/acute/mu/paragraph/periodcentered/cedilla
  672. /onesuperior/ordmasculine/guillemotright/onequarter/onehalf/threequarters
  673. /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla
  674. /Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex/Idieresis
  675. /Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis/multiply/Oslash
  676. /Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn/germandbls/agrave
  677. /aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla/egrave/eacute
  678. /ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis/eth/ntilde
  679. /ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash/ugrave/uacute
  680. /ucircumflex/udieresis/yacute/thorn/ydieresis
  681. StandardEncoding 256 array copy reencode
  682. ] def
  683. /TZ
  684. {    3 1 roll findfont dup length 3 add dict begin
  685.     {1 index /FID ne {def} {pop pop} ifelse} forall
  686.     currentdict /OrigFontName known not
  687.     {/OrigFontName currentdict /FontName known {/FontName load} {1 index} ifelse def} if
  688.     /FontName exch def
  689.     dup 0 ge {/Encoding PredefinedEncodings 3 -1 roll get def} {pop} ifelse
  690.     counttomark 0 eq {pop} {/Encoding load 256 array copy reencode /Encoding exch def} ifelse
  691.     /FontName load currentdict end definefont pop
  692. } bind def
  693. /performfontsubstitution
  694. {    20 dict begin
  695.     /OrigFontName 3 -1 roll def
  696.     counttomark 2 add -1 roll exch 2 index counttomark 1 add 1 roll TZ
  697.     6 1 roll 5 index findfont 1000 scalefont
  698.     /_basefont exch def
  699.     /FontBBox exch def
  700.     /ItalicAngle exch def
  701.     /MissingWidth exch def
  702.     /Widths exch def
  703.     /FirstChar exch def
  704.     /NewItalicMatrix matrix def
  705.     /UnItalicMatrix matrix def
  706.     _basefont /FontInfo known
  707.     {    _basefont /FontInfo get /ItalicAngle known
  708.         {    ItalicAngle 0 eq {/ItalicAngle _basefont /FontInfo get /ItalicAngle get def} if
  709.             NewItalicMatrix 2 ItalicAngle dup 0 lt {neg} if dup sin exch cos div put
  710.             UnItalicMatrix 2 _basefont /FontInfo get /ItalicAngle get dup 0 gt {neg} if dup sin exch cos div put
  711.         } if
  712.     } if
  713.     /_basefont _basefont UnItalicMatrix makefont def
  714.     /FontType 3 def
  715.     /FontMatrix [0.001 0 0 0.001 0 0] def
  716.     /Encoding _basefont /Encoding get def
  717.     /fontbboxisnotallzero FontBBox {0 ne} forall or or or def
  718.     %fontbboxisnotallzero
  719.     %{    gsave NewItalicMatrix setmatrix
  720.     %    _basefont /FontMatrix get concat _basefont /FontBBox get aload pop
  721.     %    newpath 3 index 3 index moveto 1 index 3 index lineto 2 copy lineto 3 index 1 index lineto pop pop pop pop
  722.     %    matrix setmatrix pathbbox grestore
  723.     %    exch pop 3 -1 roll pop
  724.     %    FontBBox 3 get exch div exch FontBBox 1 get exch div
  725.     %    2 copy gt {exch} if pop
  726.     %    /pdfdebug where {/pdfdebug get} {false} ifelse
  727.     %    {    (Vertical adjustment for Font ) print
  728.     %        OrigFontName dup length string cvs print
  729.     %        (: ) print
  730.     %        dup == flush
  731.     %    } if
  732.     %    [1 0 0 5 -1 roll 0 0] _basefont exch makefont
  733.     %    /_basefont exch def
  734.     %} if
  735.     /BuildChar
  736.     {    exch begin
  737.         gsave _basefont setfont ( ) dup 0 3 index put dup stringwidth grestore
  738.         4 -1 roll FirstChar sub dup 0 ge 1 index Widths length lt and
  739.         {Widths exch get} {pop MissingWidth} ifelse dup 0 eq {pop 1 index} if
  740.         dup 4 -1 roll 1 index 0 ne 1 index 0 ne and {div} {pop pop 1} ifelse 3 1 roll exch
  741.         fontbboxisnotallzero
  742.         {FontBBox aload pop}
  743.         {    gsave NewItalicMatrix setmatrix 2 index 1 scale
  744.             _basefont /FontMatrix get concat _basefont /FontBBox get aload pop
  745.             newpath 3 index 3 index moveto 1 index 3 index lineto 2 copy lineto 3 index 1 index lineto pop pop pop pop
  746.             matrix setmatrix pathbbox grestore
  747.         }
  748.         ifelse
  749.         6 copy setcachedevice
  750.         newpath 3 index 3 index moveto 1 index 3 index lineto 2 copy lineto 3 index 1 index lineto clip
  751.         pop pop pop pop pop pop
  752.         NewItalicMatrix concat 1 scale _basefont setfont 0 0 moveto show
  753.         end
  754.     } hardbind def
  755.     currentdict end definefont pop
  756. } bind def
  757. /substfontifneeded
  758. {    1 index /TimesNewRoman eq {exch pop /Times-Roman exch} if
  759.     1 index
  760.     /resourcestatus where {pop dup /Font resourcestatus {pop pop pop false} {true} ifelse} if
  761.     {dup findfont /FontName get ne} {false} ifelse
  762.     {performfontsubstitution} {TZ 6 {pop} repeat} ifelse
  763. } bind def
  764. L2
  765. {    /DefaultCalRGB
  766.     [    /CIEBasedABC
  767.         2 dict begin
  768.         /MatrixLMN [.4124 .2126 .0193 .3576 .7152 .1192 .1805 .0722 .9505] def
  769.         /WhitePoint [0.9505 1 1.089] def
  770.         currentdict end
  771.     ] definecolorspaceresource
  772.     /DefaultCalGray
  773.     [    /CIEBasedA
  774.         2 dict begin
  775.         /MatrixLMN [.4124 .2126 .0193 .3576 .7152 .1192 .1805 .0722 .9505] def
  776.         /WhitePoint [0.9505 1 1.089] def
  777.         currentdict end
  778.     ] definecolorspaceresource
  779.     /initcalcs
  780.     {    /DefaultRGB findcolorspaceresource dup isarray {0 get} if /DeviceRGB eq
  781.         {/DefaultRGB /DefaultCalRGB findcolorspaceresource definecolorspaceresource} if
  782.         /DeviceRGB /DefaultRGB findcolorspaceresource definecolorspaceresource
  783.         /DefaultGray findcolorspaceresource dup isarray {0 get} if /DeviceGray eq
  784.         {    /DefaultRGB findcolorspaceresource 1 get
  785.             dup dup /RangeABC known not exch dup /DecodeABC known not exch /MatrixABC known not and and
  786.             not {pop /DefaultCalGray findcolorspaceresource 1 get} {0 dict copy} ifelse
  787.             /CIEBasedA exch 2 array astore
  788.             /DefaultGray exch definecolorspaceresource
  789.         } if
  790.         /DeviceGray /DefaultGray findcolorspaceresource definecolorspaceresource
  791.         /ColorSpace /Category pdffindresource {calibratecolorspace definecolorspaceresource} forall
  792.         0 g 0 G
  793.     } def
  794. }
  795. {    /initcalcs {} def
  796.     /definecolorspaceresource {pop pop} def
  797. }
  798. ifelse
  799. /beginpdf {pdfpkg begin 0 g 0 G []0 d 0 j 0 J 10 M 1 w 0 Tr} def
  800. /endpdf {end} def
  801. end
  802.  
  803. /currentpacking where {pop setpacking}if
  804.