%! /SULfont 10 dict def /BuildCharDict 10 dict def /logodict 50 dict def SULfont begin /FontType 3 def /FontMatrix [1 0 0 1 0 0] def /FontBBox [-0.5 -0.5 0.5 0.5] def /Encoding 256 array def 0 1 255 {Encoding exch /.notdef put} for Encoding (S) 0 get /sulogo put /CharacterDefs 3 dict def CharacterDefs /.notdef {} put /BuildChar { BuildCharDict begin /char exch def /fontdict exch def /charname fontdict /Encoding get char get def /charproc fontdict /CharacterDefs get charname get def 1 0 -0.5 -0.5 0.5 0.5 setcachedevice gsave charproc grestore end } def logodict begin /dark 0.975 def /middark 0.975 def /white 1 def /medium 0.975 def /outsidecircletext { $circtextdict begin /radius exch def /centerangle exch def /ptsize exch def /str exch def /xradius radius ptsize 4 div add def gsave centerangle str findhalfangle add rotate str { /charcode exch def ( ) dup 0 charcode put outsideshowcharandrotate } forall grestore end } def /insidecircletext { $circtextdict begin /radius exch def /centerangle exch def /ptsize exch def /str exch def /xradius radius ptsize 3 div sub def gsave centerangle str findhalfangle sub rotate str { /charcode exch def ( ) dup 0 charcode put insideshowcharandrotate } forall grestore end } def /$circtextdict 16 dict def $circtextdict begin /findhalfangle { stringwidth pop 2 div 2 xradius mul pi mul div 360 mul } def /outsideshowcharandrotate { /char exch def /halfangle char findhalfangle def gsave halfangle neg rotate radius 0 translate -90 rotate char stringwidth pop 2 div neg 0 moveto char show grestore halfangle 2 mul neg rotate } def /insideshowcharandrotate { /char exch def /halfangle char findhalfangle def gsave halfangle rotate radius 0 translate 90 rotate char stringwidth pop 2 div neg 0 moveto char show grestore halfangle 2 mul rotate } def /pi 3.1415923 def end % draw the circles for the logo /circles { 5 setlinewidth newpath 0 0 265 0 360 arc stroke 4 setlinewidth newpath 0 0 241 0 360 arc stroke 1.5 setlinewidth newpath 0 0 182 0 360 arc stroke 4 setlinewidth newpath 0 0 174 0 360 arc stroke } def % draw the diamonds in the outer circles /diamonds { /nd exch def % number of diamonds /da 360 nd div def % diamond angle gsave nd {newpath 0 242 moveto 8 10 rlineto -8 10 rlineto -8 -10 rlineto closepath fill da rotate} repeat grestore } def % lay down the text /logotext { gsave /Helvetica-Bold findfont 39 scalefont setfont (LELAND STANFORD JUNIOR UNIVERSITY) 39 90 196 outsidecircletext (ORGANIZED 1891) 39 270 224 insidecircletext grestore } def % draw the foothills in the background /foothills { gsave 1 setlinecap 1 setlinejoin 1 setlinewidth newpath -166 -30 moveto -140 -12 lineto -120 -12 lineto -25 -50 lineto 50 -65 lineto 125 -60 lineto 160 -70 lineto stroke newpath -165 -47 moveto -137 -39 lineto -92 -41 lineto 35 -85 lineto stroke newpath -85 -18 moveto -60 -12 lineto 85 -53 lineto stroke newpath 10 -10 moveto 69 -35 lineto 98 -50 lineto stroke newpath 25 -37 moveto 100 -21 lineto 166 -34 lineto stroke newpath 75 -60 moveto 125 -40 lineto 150 -45 lineto 160 -55 lineto stroke newpath 70 -36 moveto 90 -30 lineto 110 -40 lineto stroke grestore } def /talltree { % 170 gsave % the dirt underneath newpath 37 -130 moveto 12 -100 lineto -12 -100 lineto -37 -130 lineto 0 0 172 235 300 arc closepath fill % the trunk 18 setlinewidth 1 setlinecap newpath 0 -100 moveto 0 150 lineto stroke newpath -5 140 moveto 0 160 lineto 5 150 lineto stroke % the branches newpath -10 150 moveto -35 135 lineto -40 122 lineto -16 130 lineto -11 129 lineto closepath fill newpath 10 149 moveto 37 125 lineto 40 115 lineto 10 125 lineto closepath fill 13 setlinewidth newpath 0 105 moveto 50 77 lineto stroke newpath 3 84 moveto 40 50 lineto 60 45 lineto stroke newpath 5 44 moveto 40 20 lineto 57 16 lineto stroke newpath 5 3 moveto 50 -25 lineto 53 -40 lineto stroke newpath 0 -20 moveto 35 -40 lineto 43 -60 lineto stroke newpath -4 120 moveto -30 110 lineto stroke newpath -4 105 moveto -33 86 lineto stroke newpath -1 80 moveto -38 57 lineto -43 48 lineto stroke newpath -3 55 moveto -28 37 lineto -35 30 lineto stroke newpath 0 25 moveto -53 4 lineto -62 -20 lineto stroke newpath 0 -15 moveto -38 -23 lineto -43 -39 lineto stroke grestore } def % make a 5-pointed star /star5 {/ssize exch def gsave ssize ssize scale 0.5 0.5 scale newpath 1 0 moveto 4 {144 rotate 1 0 lineto} repeat closepath fill grestore } def % make a "sheep" (actually a tree) /sheep { gsave currentpoint translate 0.5 setlinewidth /ss exch def newpath 5 {0 ss ss 15 165 arc stroke 72 rotate} repeat newpath ss -0.3 mul ss -1.5 mul moveto 0 ss neg rlineto stroke newpath ss 0.3 mul ss -1.5 mul moveto 0 ss neg rlineto stroke grestore} def /makesheep { /shx -120 def 7 {shx -80 moveto 8 sheep /shx shx 35 add def} repeat /shx -103 def 7 {shx -105 moveto 8 sheep /shx shx 35 add def} repeat } def end CharacterDefs /sulogo { logodict begin gsave 1 550 div dup scale currentpoint translate circles logotext gsave 60 rotate 0 -210 translate 0 0 moveto 30 rotate 40 star5 grestore gsave -60 rotate 0 -210 translate 0 0 moveto 7.5 rotate 40 star5 grestore 72 diamonds foothills makesheep talltree grestore } put end /LogoFont SULfont definefont pop 30000 setcachelimit /in. {72 mul} def % (string) x y ctr /ctr {/ctry exch def /ctrx exch def /whatstring exch def whatstring stringwidth pop 2 div ctrx exch sub ctry moveto whatstring show} def % (string) x y lj /lj {moveto show} def /ctrline {2 in. yposn ctr /yposn yposn dy sub def} def % ------------------------------------------------------------------------ 40 11 in. 0.3 in. sub translate 0 setlinewidth gsave 2 { gsave 5 {0 -2 in. translate /LogoFont findfont 50 scalefont setfont 0.5 in. 1.45 in. moveto (S) show % newpath 0 0 moveto 3.5 in. 0 rlineto 0 2 in. rlineto % -3.5 in. 0 rlineto closepath stroke /Times-Bold findfont 11 scalefont setfont /dy 14 def /yposn 1.4 in. def (Jock D. Mackinlay) ctrline /Times-Italic findfont 10 scalefont setfont /dy 12 def (Research Assistant) ctrline /yposn yposn 5 sub def % skip some blank space /Times-Bold findfont 9 scalefont setfont /dy 11 def (COMPUTER SCIENCE DEPARTMENT) ctrline /Times-Bold findfont 10 scalefont setfont /dy 12 def (STANFORD UNIVERSITY) ctrline /Times-Bold findfont 8 scalefont setfont /dy 12 def (STANFORD, CALIFORNIA 94305) ctrline /Times-Bold findfont 10 scalefont setfont /dy 12 def ((415) 497-1809) ctrline /Times-Roman findfont 10 scalefont setfont (Arpanet: JOCK@SU-SUSHI.EDU) ctrline } repeat grestore 3.5 in. 0 translate } repeat grestore % make cut marks gsave 6 {newpath -2 0 moveto -100 0 rlineto 7 in. 2 add 0 moveto 100 0 rlineto stroke 0 -2 in. translate} repeat grestore gsave 3 {newpath 0 2 moveto 0 100 rlineto 0 -10 in. 2 sub moveto 0 -100 rlineto stroke 3.5 in. 0 translate} repeat % these next two lines turn on manual feed; comment them out to % return to automatic feed statusdict begin /manualfeed true def /manualfeedtimeout 500 def end 4 {copypage} repeat showpage #Jf??