|
|
1.1 ! root 1: % ! 2: % Version 3.3.2 prologue for BGI files - STARE or PRISM. ! 3: % ! 4: ! 5: /#copies 1 store ! 6: /aspectratio 1 def ! 7: /fixlinewidth true def ! 8: /fixscreen false def ! 9: /font /Courier def ! 10: /formsperpage 1 def ! 11: /landscape false def ! 12: /linewidth 0 def ! 13: /magnification 1 def ! 14: /margin 0 def ! 15: /orientation 0 def ! 16: /prism false def ! 17: /resolution 128 def ! 18: /rotation 1 def ! 19: /scaletodevice false def ! 20: /screenheight 1280 def ! 21: /screenwidth 1024 def ! 22: /xoffset 0 def ! 23: /yoffset 0 def ! 24: ! 25: /devres 72 0 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt def ! 26: ! 27: /useclippath true def ! 28: /pagebbox [0 0 612 792] def ! 29: ! 30: /inch {72 mul} bind def ! 31: /min {2 copy gt {exch} if pop} bind def ! 32: ! 33: /kshow {kshow} bind def % so later references don't bind ! 34: /show {show} bind def ! 35: ! 36: /setup { ! 37: counttomark 2 idiv {def} repeat pop ! 38: ! 39: landscape {/orientation 90 orientation add def} if ! 40: prism {/fixscreen true def /scaletodevice true def} if ! 41: prism linewidth 0 eq and {/linewidth .3 def} if ! 42: fixscreen {devres 4 div orientation currentscreen 3 1 roll pop pop setscreen} if ! 43: ! 44: pagedimensions ! 45: /scaling ! 46: scaletodevice ! 47: {devres resolution div truncate 72 mul devres div dup} ! 48: {height margin sub screenheight div width margin sub screenwidth div} ! 49: ifelse ! 50: min def ! 51: xcenter ycenter translate ! 52: orientation rotation mul rotate ! 53: xoffset inch yoffset inch translate ! 54: magnification dup aspectratio mul scale ! 55: scaling scaling scale ! 56: screenwidth 2 div neg screenheight 2 div neg translate ! 57: ! 58: tietodevicespace ! 59: linewidth scaling div setlinewidth ! 60: 1 setlinecap ! 61: newpath ! 62: } def ! 63: ! 64: /pagedimensions { ! 65: useclippath { ! 66: /pagebbox [clippath pathbbox newpath] def ! 67: } if ! 68: pagebbox aload pop ! 69: 4 -1 roll exch 4 1 roll 4 copy ! 70: landscape {4 2 roll} if ! 71: sub /width exch def ! 72: sub /height exch def ! 73: add 2 div /xcenter exch def ! 74: add 2 div /ycenter exch def ! 75: userdict /gotpagebbox true put ! 76: } def ! 77: ! 78: /pagesetup {/page exch def} bind def ! 79: ! 80: /tietodevicespace { ! 81: fixlinewidth linewidth 0 gt and linewidth 1 lt and { ! 82: /moveto { ! 83: 2 copy /Y exch def /X exch def ! 84: transform round exch round exch itransform ! 85: moveto ! 86: } bind def ! 87: /lineto { ! 88: 2 copy /Y exch def /X exch def ! 89: transform round exch round exch itransform ! 90: lineto ! 91: } bind def ! 92: /rlineto {Y add exch X add exch lineto} bind def ! 93: /v V 0 get bind def ! 94: } if ! 95: } def ! 96: ! 97: /V [{moveto counttomark 2 idiv {rlineto} repeat stroke}] def ! 98: /v V 0 get bind def ! 99: /p {linewidth 2 div 0 360 arc fill} bind def ! 100: /pp {/ch exch def counttomark 2 idiv {moveto xc yc rmoveto ch show} repeat} bind def ! 101: ! 102: /l {{scaling div} forall counttomark array astore 0 setdash} bind def ! 103: /c {setrgbcolor} bind def ! 104: ! 105: /T {newpath moveto rlineto rlineto rlineto closepath eofill} bind def ! 106: ! 107: /R { ! 108: newpath moveto 1 index 0 rlineto 0 exch rlineto neg 0 rlineto closepath ! 109: 0 eq {stroke} {eofill} ifelse ! 110: } bind def ! 111: ! 112: /f { ! 113: dup dup ! 114: /charwidth exch 6 mul def ! 115: /xc exch -2.5 mul def ! 116: /yc exch -3.5 mul def ! 117: font findfont charwidth .6 div scalefont setfont ! 118: } bind def ! 119: ! 120: /t { ! 121: /str exch def ! 122: gsave ! 123: translate rotate ! 124: xc yc moveto ! 125: currentpoint ! 126: { ! 127: pop pop ! 128: exch charwidth add exch ! 129: moveto currentpoint ! 130: } str kshow ! 131: pop pop ! 132: grestore ! 133: } bind def ! 134: ! 135: /done {/lastpage where {pop lastpage} if} def
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.