home *** CD-ROM | disk | FTP | other *** search
- %%BeginResource: procset pdf 6.0 1
- %%Copyright: Copyright 1998-2003 Adobe Systems Incorporated. All Rights Reserved.
- %%Title: General operators for PDF, common to all Language Levels.
- /cm { matrix astore concat } bd
- /d /setdash ld
- /f /fill ld
- /h /closepath ld
- /i {dup 0 eq {pop _defaultflatness} if setflat} bd
- /j /setlinejoin ld
- /J /setlinecap ld
- /M /setmiterlimit ld
- /n /newpath ld
- /S /stroke ld
- /w /setlinewidth ld
- /W /clip ld
- /sg /setgray ld
- /initgs {
- 0 setgray
- [] 0 d
- 0 j
- 0 J
- 10 M
- 1 w
- false setSA
- /_defaulttransfer load settransfer
- 0 i
- /RelativeColorimetric ri
- newpath
- } bd
- /int {
- dup 2 index sub 3 index 5 index sub div 6 -2 roll sub mul
- exch pop add exch pop
- } bd
- /limit {
- dup 2 index le { exch } if pop
- dup 2 index ge { exch } if pop
- } bd
- /domainClip {
- Domain aload pop 3 2 roll
- limit
- } [/Domain] bld
- /applyInterpFunc {
- 0 1 DimOut 1 sub
- {
- dup C0 exch get exch
- dup C1 exch get exch
- 3 1 roll
- 1 index sub
- 3 index
- N exp mul add
- exch
- currentdict /Range_lo known
- {
- dup Range_lo exch get exch
- Range_hi exch get
- 3 2 roll limit
- }
- {
- pop
- }
- ifelse
- exch
- } for
- pop
- } [/DimOut /C0 /C1 /N /Range_lo /Range_hi] bld
- /encodeInput {
- NumParts 1 sub
- 0 1 2 index
- {
- dup Bounds exch get
- 2 index gt
- { exit }
- { dup
- 3 index eq
- { exit }
- { pop } ifelse
- } ifelse
- } for
- 3 2 roll pop
- dup Bounds exch get exch
- dup 1 add Bounds exch get exch
- 2 mul
- dup Encode exch get exch
- 1 add Encode exch get
- int
- } [/NumParts /Bounds /Encode] bld
- /rangeClip {
- exch dup Range_lo exch get
- exch Range_hi exch get
- 3 2 roll
- limit
- } [/Range_lo /Range_hi] bld
- /applyStitchFunc {
- Functions exch get exec
- currentdict /Range_lo known {
- 0 1 DimOut 1 sub {
- DimOut 1 add -1 roll
- rangeClip
- } for
- } if
- } [/Functions /Range_lo /DimOut] bld
- /pdf_flushfilters
- {
- aload length
- { dup status
- 1 index currentfile ne and
- { dup flushfile closefile }
- { pop }
- ifelse
- } repeat
- } bd
- /pdf_readstring
- {
- 1 index dup length 1 sub get
- exch readstring pop
- exch pdf_flushfilters
- } bind def
- /pdf_dictOp
- {
- 3 2 roll
- 10 dict copy
- begin
- _Filters dup length 1 sub get def
- currentdict exch exec
- _Filters pdf_flushfilters
- end
- } [/_Filters] bld
- /pdf_image {{image} /DataSource pdf_dictOp} bd
- /pdf_imagemask {{imagemask} /DataSource pdf_dictOp} bd
- /pdf_shfill {{sh} /DataSource pdf_dictOp} bd
- /pdf_sethalftone {{sethalftone} /Thresholds pdf_dictOp} bd
- /pdf_maskedImage
- {
- 10 dict copy begin
- /miDict currentdict def
- /DataDict DataDict 10 dict copy def
- DataDict begin
- /DataSource
- _Filters dup length 1 sub get
- def
- miDict image
- _Filters pdf_flushfilters
- end
- MaskDict /DataSource get dup type /filetype eq { closefile } { pop } ifelse
- end
- } [/miDict /DataDict /_Filters] bld
- /RadialShade {
- 40 dict begin
- /background exch def
- /ext1 exch def
- /ext0 exch def
- /BBox exch def
- /r2 exch def
- /c2y exch def
- /c2x exch def
- /r1 exch def
- /c1y exch def
- /c1x exch def
- /rampdict exch def
- gsave
- BBox length 0 gt {
- newpath
- BBox 0 get BBox 1 get moveto
- BBox 2 get BBox 0 get sub 0 rlineto
- 0 BBox 3 get BBox 1 get sub rlineto
- BBox 2 get BBox 0 get sub neg 0 rlineto
- closepath
- clip
- newpath
- } if
- c1x c2x eq
- {
- c1y c2y lt {/theta 90 def}{/theta 270 def} ifelse
- }
- {
- /slope c2y c1y sub c2x c1x sub div def
- /theta slope 1 atan def
- c2x c1x lt c2y c1y ge and { /theta theta 180 sub def} if
- c2x c1x lt c2y c1y lt and { /theta theta 180 add def} if
- }
- ifelse
- gsave
- clippath
- c1x c1y translate
- theta rotate
- -90 rotate
- { pathbbox } stopped
- { 0 0 0 0 } if
- /yMax exch def
- /xMax exch def
- /yMin exch def
- /xMin exch def
- grestore
- xMax xMin eq yMax yMin eq or
- {
- grestore
- end
- }
- {
- /max { 2 copy gt { pop } {exch pop} ifelse } bind def
- /min { 2 copy lt { pop } {exch pop} ifelse } bind def
- rampdict begin
- 40 dict begin
- background length 0 gt { background sssetbackground gsave clippath fill grestore } if
- gsave
- c1x c1y translate
- theta rotate
- -90 rotate
- /c2y c1x c2x sub dup mul c1y c2y sub dup mul add sqrt def
- /c1y 0 def
- /c1x 0 def
- /c2x 0 def
- ext0 {
- 0 getrampcolor
- c2y r2 add r1 sub 0.0001 lt
- {
- c1x c1y r1 360 0 arcn
- pathbbox
- /aymax exch def
- /axmax exch def
- /aymin exch def
- /axmin exch def
- /bxMin xMin axmin min def
- /byMin yMin aymin min def
- /bxMax xMax axmax max def
- /byMax yMax aymax max def
- bxMin byMin moveto
- bxMax byMin lineto
- bxMax byMax lineto
- bxMin byMax lineto
- bxMin byMin lineto
- eofill
- }
- {
- c2y r1 add r2 le
- {
- c1x c1y r1 0 360 arc
- fill
- }
- {
- c2x c2y r2 0 360 arc fill
- r1 r2 eq
- {
- /p1x r1 neg def
- /p1y c1y def
- /p2x r1 def
- /p2y c1y def
- p1x p1y moveto p2x p2y lineto p2x yMin lineto p1x yMin lineto
- fill
- }
- {
- /AA r2 r1 sub c2y div def
- AA -1 eq
- { /theta 89.99 def}
- { /theta AA 1 AA dup mul sub sqrt div 1 atan def}
- ifelse
- /SS1 90 theta add dup sin exch cos div def
- /p1x r1 SS1 SS1 mul SS1 SS1 mul 1 add div sqrt mul neg def
- /p1y p1x SS1 div neg def
- /SS2 90 theta sub dup sin exch cos div def
- /p2x r1 SS2 SS2 mul SS2 SS2 mul 1 add div sqrt mul def
- /p2y p2x SS2 div neg def
- r1 r2 gt
- {
- /L1maxX p1x yMin p1y sub SS1 div add def
- /L2maxX p2x yMin p2y sub SS2 div add def
- }
- {
- /L1maxX 0 def
- /L2maxX 0 def
- }ifelse
- p1x p1y moveto p2x p2y lineto L2maxX L2maxX p2x sub SS2 mul p2y add lineto
- L1maxX L1maxX p1x sub SS1 mul p1y add lineto
- fill
- }
- ifelse
- }
- ifelse
- } ifelse
- } if
- c1x c2x sub dup mul
- c1y c2y sub dup mul
- add 0.5 exp
- 0 dtransform
- dup mul exch dup mul add 0.5 exp 72 div
- 0 72 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt
- 72 0 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt
- 1 index 1 index lt { exch } if pop
- /hires exch def
- hires mul
- /numpix exch def
- /numsteps NumSamples def
- /rampIndxInc 1 def
- /subsampling false def
- numpix 0 ne
- {
- NumSamples numpix div 0.5 gt
- {
- /numsteps numpix 2 div round cvi dup 1 le { pop 2 } if def
- /rampIndxInc NumSamples 1 sub numsteps div def
- /subsampling true def
- } if
- } if
- /xInc c2x c1x sub numsteps div def
- /yInc c2y c1y sub numsteps div def
- /rInc r2 r1 sub numsteps div def
- /cx c1x def
- /cy c1y def
- /radius r1 def
- newpath
- xInc 0 eq yInc 0 eq rInc 0 eq and and
- {
- 0 getrampcolor
- cx cy radius 0 360 arc
- stroke
- NumSamples 1 sub getrampcolor
- cx cy radius 72 hires div add 0 360 arc
- 0 setlinewidth
- stroke
- }
- {
- 0
- numsteps
- {
- dup
- subsampling { round } if
- getrampcolor
- cx cy radius 0 360 arc
- /cx cx xInc add def
- /cy cy yInc add def
- /radius radius rInc add def
- cx cy radius 360 0 arcn
- eofill
- rampIndxInc add
- }
- repeat
- pop
- } ifelse
- ext1 {
- c2y r2 add r1 lt
- {
- c2x c2y r2 0 360 arc
- fill
- }
- {
- c2y r1 add r2 sub 0.0001 le
- {
- c2x c2y r2 360 0 arcn
- pathbbox
- /aymax exch def
- /axmax exch def
- /aymin exch def
- /axmin exch def
- /bxMin xMin axmin min def
- /byMin yMin aymin min def
- /bxMax xMax axmax max def
- /byMax yMax aymax max def
- bxMin byMin moveto
- bxMax byMin lineto
- bxMax byMax lineto
- bxMin byMax lineto
- bxMin byMin lineto
- eofill
- }
- {
- c2x c2y r2 0 360 arc fill
- r1 r2 eq
- {
- /p1x r2 neg def
- /p1y c2y def
- /p2x r2 def
- /p2y c2y def
- p1x p1y moveto p2x p2y lineto p2x yMax lineto p1x yMax lineto
- fill
- }
- {
- /AA r2 r1 sub c2y div def
- AA -1 eq
- { /theta 89.99 def}
- { /theta AA 1 AA dup mul sub sqrt div 1 atan def}
- ifelse
- /SS1 90 theta add dup sin exch cos div def
- /p1x r2 SS1 SS1 mul SS1 SS1 mul 1 add div sqrt mul neg def
- /p1y c2y p1x SS1 div sub def
- /SS2 90 theta sub dup sin exch cos div def
- /p2x r2 SS2 SS2 mul SS2 SS2 mul 1 add div sqrt mul def
- /p2y c2y p2x SS2 div sub def
- r1 r2 lt
- {
- /L1maxX p1x yMax p1y sub SS1 div add def
- /L2maxX p2x yMax p2y sub SS2 div add def
- }
- {
- /L1maxX 0 def
- /L2maxX 0 def
- }ifelse
- p1x p1y moveto p2x p2y lineto L2maxX L2maxX p2x sub SS2 mul p2y add lineto
- L1maxX L1maxX p1x sub SS1 mul p1y add lineto
- fill
- }
- ifelse
- }
- ifelse
- } ifelse
- } if
- grestore
- grestore
- end
- end
- end
- } ifelse
- } bd
- /GenStrips {
- 40 dict begin
- /background exch def
- /ext1 exch def
- /ext0 exch def
- /BBox exch def
- /y2 exch def
- /x2 exch def
- /y1 exch def
- /x1 exch def
- /rampdict exch def
- gsave
- BBox length 0 gt {
- newpath
- BBox 0 get BBox 1 get moveto
- BBox 2 get BBox 0 get sub 0 rlineto
- 0 BBox 3 get BBox 1 get sub rlineto
- BBox 2 get BBox 0 get sub neg 0 rlineto
- closepath
- clip
- newpath
- } if
- x1 x2 eq
- {
- y1 y2 lt {/theta 90 def}{/theta 270 def} ifelse
- }
- {
- /slope y2 y1 sub x2 x1 sub div def
- /theta slope 1 atan def
- x2 x1 lt y2 y1 ge and { /theta theta 180 sub def} if
- x2 x1 lt y2 y1 lt and { /theta theta 180 add def} if
- }
- ifelse
- gsave
- clippath
- x1 y1 translate
- theta rotate
- { pathbbox } stopped
- { 0 0 0 0 } if
- /yMax exch def
- /xMax exch def
- /yMin exch def
- /xMin exch def
- grestore
- xMax xMin eq yMax yMin eq or
- {
- grestore
- end
- }
- {
- rampdict begin
- 20 dict begin
- background length 0 gt { background sssetbackground gsave clippath fill grestore } if
- gsave
- x1 y1 translate
- theta rotate
- /xStart 0 def
- /xEnd x2 x1 sub dup mul y2 y1 sub dup mul add 0.5 exp def
- /ySpan yMax yMin sub def
- /numsteps NumSamples def
- /rampIndxInc 1 def
- /subsampling false def
- xStart 0 transform
- xEnd 0 transform
- 3 -1 roll
- sub dup mul
- 3 1 roll
- sub dup mul
- add 0.5 exp 72 div
- 0 72 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt
- 72 0 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt
- 1 index 1 index lt { exch } if pop
- mul
- /numpix exch def
- numpix 0 ne
- {
- NumSamples numpix div 0.5 gt
- {
- /numsteps numpix 2 div round cvi dup 1 le { pop 2 } if def
- /rampIndxInc NumSamples 1 sub numsteps div def
- /subsampling true def
- } if
- } if
- ext0 {
- 0 getrampcolor
- xMin xStart lt
- { xMin yMin xMin neg ySpan rectfill } if
- } if
- /xInc xEnd xStart sub numsteps div def
- /x xStart def
- 0
- numsteps
- {
- dup
- subsampling { round } if
- getrampcolor
- x yMin xInc ySpan rectfill
- /x x xInc add def
- rampIndxInc add
- }
- repeat
- pop
- ext1 {
- xMax xEnd gt
- { xEnd yMin xMax xEnd sub ySpan rectfill } if
- } if
- grestore
- grestore
- end
- end
- end
- } ifelse
- } bd
- /currentdistillerparams where { pop currentdistillerparams /CoreDistVersion get 5000 lt}{true}ifelse
- {
- /PDFMark5 {cleartomark} bd
- }
- {
- /PDFMark5 {pdfmark} bd
- }ifelse
- /ReadByPDFMark5
- {
- 2 dict begin
- /makerString exch def string /tmpString exch def
- {
- currentfile tmpString readline pop
- makerString anchorsearch
- {
- pop pop cleartomark exit
- }
- {
- 3 copy /PUT PDFMark5 pop 2 copy (\n) /PUT PDFMark5
- } ifelse
- }loop
- end
- }bd
- %%EndResource
-