home *** CD-ROM | disk | FTP | other *** search
/ NeXTSTEP 3.3.4.17 [SPARC, PA-RISC] / nextstep33_risc.iso / NextLibrary / TeX / tex / ps / special.pro < prev    next >
Encoding:
Text File  |  1995-02-07  |  3.8 KB  |  54 lines

  1. %!
  2. TeXDict begin /SDict 200 dict N SDict begin /@SpecialDefaults{/hs 612 N /vs
  3. 792 N /ho 0 N /vo 0 N /hsc 1 N /vsc 1 N /ang 0 N /CLIP 0 N /rwiSeen false N
  4. /rhiSeen false N /letter{}N /note{}N /a4{}N /legal{}N}B /@scaleunit 100 N
  5. /@hscale{@scaleunit div /hsc X}B /@vscale{@scaleunit div /vsc X}B /@hsize{/hs
  6. X /CLIP 1 N}B /@vsize{/vs X /CLIP 1 N}B /@clip{/CLIP 2 N}B /@hoffset{/ho X}B
  7. /@voffset{/vo X}B /@angle{/ang X}B /@rwi{10 div /rwi X /rwiSeen true N}B /@rhi
  8. {10 div /rhi X /rhiSeen true N}B /@llx{/llx X}B /@lly{/lly X}B /@urx{/urx X}B
  9. /@ury{/ury X}B /magscale true def end /@MacSetUp{userdict /md known{userdict
  10. /md get type /dicttype eq{userdict begin md length 10 add md maxlength ge{/md
  11. md dup length 20 add dict copy def}if end md begin /letter{}N /note{}N /legal{
  12. }N /od{txpose 1 0 mtx defaultmatrix dtransform S atan/pa X newpath clippath
  13. mark{transform{itransform moveto}}{transform{itransform lineto}}{6 -2 roll
  14. transform 6 -2 roll transform 6 -2 roll transform{itransform 6 2 roll
  15. itransform 6 2 roll itransform 6 2 roll curveto}}{{closepath}}pathforall
  16. newpath counttomark array astore /gc xdf pop ct 39 0 put 10 fz 0 fs 2
  17. F/|______Courier fnt invertflag{PaintBlack}if}N /txpose{pxs pys scale ppr
  18. aload pop por{noflips{pop S neg S TR pop 1 -1 scale}if xflip yflip and{pop S
  19. neg S TR 180 rotate 1 -1 scale ppr 3 get ppr 1 get neg sub neg ppr 2 get ppr 0
  20. get neg sub neg TR}if xflip yflip not and{pop S neg S TR pop 180 rotate ppr 3
  21. get ppr 1 get neg sub neg 0 TR}if yflip xflip not and{ppr 1 get neg ppr 0 get
  22. neg TR}if}{noflips{TR pop pop 270 rotate 1 -1 scale}if xflip yflip and{TR pop
  23. pop 90 rotate 1 -1 scale ppr 3 get ppr 1 get neg sub neg ppr 2 get ppr 0 get
  24. neg sub neg TR}if xflip yflip not and{TR pop pop 90 rotate ppr 3 get ppr 1 get
  25. neg sub neg 0 TR}if yflip xflip not and{TR pop pop 270 rotate ppr 2 get ppr 0
  26. get neg sub neg 0 S TR}if}ifelse scaleby96{ppr aload pop 4 -1 roll add 2 div 3
  27. 1 roll add 2 div 2 copy TR .96 dup scale neg S neg S TR}if}N /cp{pop pop
  28. showpage pm restore}N end}if}if}N /normalscale{Resolution 72 div VResolution
  29. 72 div neg scale magscale{DVImag dup scale}if 0 setgray}N /psfts{S 65781.76
  30. div N}N /startTexFig{/psf$SavedState save N userdict maxlength dict begin
  31. /magscale false def normalscale currentpoint TR /psf$ury psfts /psf$urx psfts
  32. /psf$lly psfts /psf$llx psfts /psf$y psfts /psf$x psfts currentpoint /psf$cy X
  33. /psf$cx X /psf$sx psf$x psf$urx psf$llx sub div N /psf$sy psf$y psf$ury
  34. psf$lly sub div N psf$sx psf$sy scale psf$cx psf$sx div psf$llx sub psf$cy
  35. psf$sy div psf$ury sub TR /showpage{}N /erasepage{}N /copypage{}N /p 3 def
  36. @MacSetUp}N /doclip{psf$llx psf$lly psf$urx psf$ury currentpoint 6 2 roll
  37. newpath 4 copy 4 2 roll moveto 6 -1 roll S lineto S lineto S lineto closepath
  38. clip newpath moveto}N /endTexFig{end psf$SavedState restore}N /@beginspecial{
  39. SDict begin /SpecialSave save N gsave normalscale currentpoint TR
  40. @SpecialDefaults count /ocount X /dcount countdictstack N}N /@setspecial{CLIP
  41. 1 eq{newpath 0 0 moveto hs 0 rlineto 0 vs rlineto hs neg 0 rlineto closepath
  42. clip}if ho vo TR hsc vsc scale ang rotate rwiSeen{rwi urx llx sub div rhiSeen{
  43. rhi ury lly sub div}{dup}ifelse scale llx neg lly neg TR}{rhiSeen{rhi ury lly
  44. sub div dup scale llx neg lly neg TR}if}ifelse CLIP 2 eq{newpath llx lly
  45. moveto urx lly lineto urx ury lineto llx ury lineto closepath clip}if
  46. /showpage{}N /erasepage{}N /copypage{}N newpath}N /@endspecial{count ocount
  47. sub{pop}repeat countdictstack dcount sub{end}repeat grestore SpecialSave
  48. restore end}N /@defspecial{SDict begin}N /@fedspecial{end}B /li{lineto}B /rl{
  49. rlineto}B /rc{rcurveto}B /np{/SaveX currentpoint /SaveY X N 1 setlinecap
  50. newpath}N /st{stroke SaveX SaveY moveto}N /fil{fill SaveX SaveY moveto}N
  51. /ellipse{/endangle X /startangle X /yrad X /xrad X /savematrix matrix
  52. currentmatrix N TR xrad yrad scale 0 0 1 startangle endangle arc savematrix
  53. setmatrix}N end
  54.