1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- %!
- % Check for command line parameters:
- % Name, FirstSize, Ratio, NumSizes, UseOutline.
- /alphabetsave save def % prevent left over effects
- /FontName where { pop } { /FontName (Palatino-Italic) def } ifelse
- /FirstSize where { pop } { /FirstSize 15 def } ifelse
- /Ratio where { pop } { /Ratio 1.6 def } ifelse
- /NumSizes where { pop } { /NumSizes 3 def } ifelse
- /UseOutline where { pop } { /UseOutline false def } ifelse
- /Strings FirstSize 20 gt
- { [
- (ABCDEFGHIJ) (KLMNOPQR) (STUVWXYZ)
- (abcdefghijklm) (nopqrstuvwxyz)
- (0123456789<=>) (:;?@ !"#$%&')
- (\(\)*+,-./[\\]^_) (`{|}~)
- ] }
- { [
- (ABCDEFGHIJKLMNOPQRSTUVWXYZ)
- (abcdefghijklmnopqrstuvwxyz)
- (0123456789<=>:;?@ !"#$%&')
- (\(\)*+,-./ [\\]^_ `{|}~)
- ] }
- ifelse def
- /sshow
- { gsave UseOutline
- { { gsave ( ) dup 0 4 -1 roll put
- false charpath pathbbox 0 setlinewidth stroke grestore
- pop 8 add currentpoint exch pop moveto pop
- } forall
- }
- { 2 0 3 -1 roll ashow }
- ifelse grestore
- } def
- FontName findfont FirstSize scalefont setfont
- clippath pathbbox /top exch def pop pop pop newpath
- 10 10 moveto
- NumSizes
- { gsave nulldevice (Q) false charpath pathbbox grestore
- exch pop exch sub exch pop 1.25 mul /height exch def
- Strings
- { currentpoint exch pop top height 3 mul sub gt
- { showpage 10 10 height sub moveto
- }
- if
- dup sshow
- UseOutline not
- { 0 height rmoveto gsave 0.01 rotate sshow grestore }
- if
- 0 height rmoveto
- } forall
- Ratio dup scale
- } repeat
- showpage
- clear cleardictstack
- alphabetsave restore
|