home *** CD-ROM | disk | FTP | other *** search
/ PC World 1999 August / PCWorld_1999-08_cd.bin / Novinky / adobe / Instal / archive.z / AIRes.dll / TEXT / 1024 < prev    next >
Text File  |  1998-10-05  |  7KB  |  314 lines

  1. %%BeginResource: procset Adobe_shading_AI8 1.0 0
  2. %%Title: (Adobe Illustrator 8 Shading Procset)
  3. %%Version: 1.0 0
  4. %%CreationDate: (12/17/97) ()
  5. %%Copyright: ((C) 1987-1997 Adobe Systems Incorporated All Rights Reserved)
  6. userdict /defaultpacking currentpacking put true setpacking
  7. userdict /Adobe_shading_AI8 10 dict dup begin put
  8. /initialize {
  9.     Adobe_shading_AI8 begin
  10.     Adobe_shading_AI8 bdprocs
  11.     Mesh /initialize get exec
  12. } def
  13. /terminate {
  14.     currentdict Adobe_shading_AI8 eq {
  15.      end
  16.     } if
  17. } def
  18. /bdprocs {
  19.     {
  20.         dup xcheck 1 index type /arraytype eq and {
  21.             bind
  22.         } if
  23.         pop pop
  24.     } forall
  25. } def
  26. /X! {pop} def
  27. /X# {pop pop} def
  28. /Mesh 40 dict def
  29. Mesh begin
  30. /initialize {
  31.     Mesh bdprocs
  32.     Mesh begin
  33.         /emulate? /AI8MeshEmulation where {
  34.             pop AI8MeshEmulation
  35.         }{
  36.             systemdict /shfill known not
  37.         } ifelse def
  38.  end
  39. } def
  40. /bd {
  41.     shadingdict begin
  42. } def
  43. /paint {
  44.     emulate? {
  45.      end
  46.     }{
  47.         /_lp /none ddef _fc /_lp /none ddef
  48.         
  49.         /AIColorSpace AIColorSpace tocolorspace store
  50.         /ColorSpace AIColorSpace topsspace store
  51.         
  52.         version_ge_3010.106 not systemdict /setsmoothness known and {
  53.             0.0001 setsmoothness
  54.         } if
  55.         
  56.         composite? {
  57.             /DataSource getdatasrc def
  58.             Matrix concat
  59.             currentdict end
  60.             shfill
  61.         }{
  62.             AIColorSpace makesmarks AIPlateList markingplate and not isoverprint and {
  63.              end
  64.             }{
  65.                 /ColorSpace /DeviceGray store
  66.                 /Decode [0 1 0 1 0 1] store
  67.                 /DataSource getplatesrc def
  68.                 Matrix concat
  69.                 currentdict end
  70.                 shfill
  71.             } ifelse
  72.         } ifelse
  73.     } ifelse
  74. } def
  75. /shadingdict 12 dict def
  76. shadingdict begin
  77.     /ShadingType 6 def
  78.     /BitsPerCoordinate 16 def
  79.     /BitsPerComponent 8 def
  80.     /BitsPerFlag 8 def
  81. end
  82. /datafile null def
  83. /databuf 256 string def
  84. /dataptr 0 def
  85. /srcspace null def
  86. /srcchannels 0 def
  87. /dstchannels 0 def
  88. /dstplate 0 def
  89. /srctodstcolor null def
  90. /getplatesrc {
  91.     /srcspace AIColorSpace store
  92.     /srcchannels AIColorSpace getnchannels store
  93.     /dstchannels 1 store
  94.     /dstplate getplateindex store
  95.     /srctodstcolor srcspace makesmarks {
  96.         dstplate 4 eq {
  97.             {1 exch sub}
  98.         }{
  99.             {srcspace tocmyk 3 dstplate sub index 1 exch sub 5 1 roll 4 {pop} repeat}
  100.         } ifelse
  101.     }{
  102.         {srcchannels {pop} repeat 1}
  103.     } ifelse store
  104.     /datafile getdatasrc store
  105.     /rdpatch168 load DataLength () /SubFileDecode filter
  106. } def
  107. /getdatasrc {
  108.     /rdcmntline load /ASCII85Decode filter
  109. } def
  110. /rdpatch168 {
  111.     /dataptr 0 store
  112.     49 rdcount
  113.     4 {
  114.         dup {pop srcchannels getint8} if
  115.         dup {pop srctodstcolor dstchannels putint8 true} if
  116.     } repeat
  117.     {databuf 0 dataptr getinterval}{()} ifelse
  118. } def
  119. /rdpatch3216 {
  120.     /dataptr 0 store
  121.     97 rdcount
  122.     4 {
  123.         dup {pop srcchannels getint16} if
  124.         dup {pop srctodstcolor dstchannels putint16 true} if
  125.     } repeat
  126.     {databuf 0 dataptr getinterval}{()} ifelse
  127. } def
  128. /rdcount {
  129.     dup 0 gt {
  130.         datafile databuf dataptr 4 -1 roll getinterval readstring
  131.         exch length dataptr add /dataptr exch store
  132.     }{
  133.         true
  134.     } ifelse
  135. } def
  136. /getint8 {
  137.     mark true 3 -1 roll
  138.     {
  139.         dup {pop datafile read} if
  140.         dup {pop 255 div true} if
  141.     } repeat
  142.     {
  143.         counttomark 1 add -1 roll pop true
  144.     }{
  145.         cleartomark false
  146.     } ifelse
  147. } def
  148. /putint8 {
  149.     dup dataptr add /dataptr exch store
  150.     dataptr exch
  151.     {
  152.         1 sub exch
  153.         255 mul cvi
  154.         databuf 2 index
  155.         3 -1 roll put
  156.     } repeat
  157.     pop
  158. } def 
  159. /getint16 {
  160.     mark true 3 -1 roll
  161.     {
  162.         dup {pop datafile read} if
  163.         dup {pop 256 mul datafile read} if
  164.         dup {pop add 65535 div true} if
  165.     } repeat
  166.     {
  167.         counttomark 1 add -1 roll pop true
  168.     }{
  169.         cleartomark false
  170.     } ifelse
  171. } def
  172. /putint16 {
  173.     dup 2 mul dataptr add /dataptr exch store
  174.     dataptr exch
  175.     {
  176.         2 sub exch
  177.         65535 mul cvi dup
  178.         256 idiv databuf 3 index 3 -1 roll put
  179.         256 mod databuf 2 index 1 add 3 -1 roll put
  180.     } repeat
  181.     pop
  182. } def 
  183. /srcbuf 256 string def
  184. /rdcmntline {
  185.     currentfile srcbuf readline pop
  186.     (%) anchorsearch {pop} if
  187. } def
  188. /getplateindex {
  189.     0 [cyan? magenta? yellow? black? customColor?] {{exit} if 1 add} forall
  190. } def
  191. /aicsarray 4 array def
  192. /aicsaltvals 4 array def
  193. /aicsaltcolr aicsaltvals def
  194. /tocolorspace {
  195.     dup type /arraytype eq {
  196.         mark exch aload pop
  197.         aicsarray 0 3 -1 roll put
  198.         aicsarray 1 3 -1 roll put
  199.         dup aicsarray 2 3 -1 roll put
  200.         gettintxform aicsarray 3 3 -1 roll put
  201.         counttomark aicsaltvals 0 3 -1 roll getinterval /aicsaltcolr exch store
  202.         aicsaltcolr astore pop pop
  203.         aicsarray
  204.     } if
  205. } def
  206. /subtintxform {aicsaltcolr {1 index mul exch} forall pop} def
  207. /addtintxform {aicsaltcolr {1 sub 1 index mul 1 add exch} forall pop} def
  208. /gettintxform {
  209.     /DeviceRGB eq {/addtintxform}{/subtintxform} ifelse load
  210. } def
  211. /getnchannels {
  212.     dup type /arraytype eq {0 get} if
  213.     colorspacedict exch get begin Channels end
  214. } def
  215. /makesmarks {
  216.     composite? {
  217.         pop true
  218.     }{
  219.         dup dup type /arraytype eq {0 get} if
  220.         colorspacedict exch get begin MarksPlate end
  221.     } ifelse
  222. } def
  223. /markingplate {
  224.     composite? {
  225.         pop true
  226.     }{
  227.         dup type /arraytype eq {
  228.             dup length getplateindex gt {getplateindex get}{pop false} ifelse
  229.         } if
  230.     } ifelse
  231. } def
  232. /tocmyk {
  233.     dup dup type /arraytype eq {0 get} if
  234.     colorspacedict exch get begin ToCMYK end
  235. } def
  236. /topsspace {
  237.     dup dup type /arraytype eq {0 get} if
  238.     colorspacedict exch get begin ToPSSpace end
  239. } def
  240. /colorspacedict 5 dict dup begin
  241.     /DeviceGray 4 dict dup begin
  242.         /Channels 1 def
  243.         /MarksPlate {pop black?} def
  244.         /ToCMYK {pop 1 exch sub 0 0 0 4 -1 roll} def
  245.         /ToPSSpace {} def
  246.  end def
  247.     /DeviceRGB 4 dict dup begin
  248.         /Channels 3 def
  249.         /MarksPlate {pop isCMYKSep?} def
  250.         /ToCMYK {pop _rgbtocmyk} def
  251.         /ToPSSpace {} def
  252.  end def
  253.     /DeviceCMYK 4 dict dup begin
  254.         /Channels 4 def
  255.         /MarksPlate {pop isCMYKSep?} def
  256.         /ToCMYK {pop} def
  257.         /ToPSSpace {} def
  258.  end def
  259.     /Separation 4 dict dup begin
  260.         /Channels 1 def
  261.         /MarksPlate {
  262.             /findcmykcustomcolor where {
  263.                 pop dup 1 exch ToCMYK 5 -1 roll 1 get
  264.                 findcmykcustomcolor 1 setcustomcolor
  265.                 systemdict /currentgray get exec
  266.                 1 ne
  267.             }{
  268.                 pop false
  269.             } ifelse
  270.         } def
  271.         /ToCMYK {
  272.             dup 2 get mark exch 4 2 roll
  273.             3 get exec
  274.             counttomark -1 roll tocmyk
  275.             5 -1 roll pop
  276.         } def
  277.         /ToPSSpace {} def
  278.  end def
  279.     /Process 4 dict dup begin
  280.         /Channels 1 def
  281.         /MarksPlate {
  282.             isCMYKSep? {
  283.                 1 exch ToCMYK 4 array astore getplateindex get 0 ne 
  284.             }{
  285.                 pop false
  286.             } ifelse
  287.         } def
  288.         /ToCMYK {
  289.             dup 2 get mark exch 4 2 roll
  290.             3 get exec
  291.             counttomark -1 roll tocmyk
  292.             5 -1 roll pop
  293.         } def
  294.         /ToPSSpace {
  295.             4 array copy dup 0 /Separation put
  296.         } def
  297.  end def
  298. end def
  299. /isoverprint {
  300.     /currentoverprint where {pop currentoverprint}{_of} ifelse
  301. } def
  302. /version_ge_3010.106 {
  303.    version {cvr} stopped {
  304.       pop
  305.       false
  306.    }{
  307.       3010.106 ge
  308.    } ifelse
  309. } def
  310. end
  311. end
  312. defaultpacking setpacking
  313. %%EndResource
  314.