home *** CD-ROM | disk | FTP | other *** search
/ Garbo / Garbo.cdr / mac / ps / kidnaper.ps < prev    next >
Text File  |  1990-05-25  |  5KB  |  198 lines

  1. %!PS
  2. %Kidnapper 
  3. %A silly font by Dan Judd
  4. %
  5. %Kidnapper is so named because it looks like the notes kiddnappers
  6. %write in movies, also because it will hold your printer hostage 
  7. %for a while. It is similar to SanFrancisco, but differs in a letter varies
  8. %each time it is used. It does this by choosing a random font and a
  9. %shinkage from 0-24% from the maximum point size. The maximum
  10. %pointsize is the pointsize given the font.
  11. %
  12. %If you want to use a different set of fonts search down from
  13. %here for the kprint routine above it are the font selections available.
  14. %Use kprintNeXT or kprintALW as examples for setting up your own
  15. %font lists. By default Kidnapper uses the Apple Laser fonts.
  16. %
  17. %Prepend the font definition to a Postscript file and use Kidnapper
  18. %as you would any other font. Don't forget to trim off the example
  19. %page at the end of this file.
  20. %
  21. %Begin Kidnapper font Definition
  22. %
  23. /Kidnapfont 11 dict def 
  24. Kidnapfont begin
  25. /FontType 3 def
  26. /FontMatrix [1 0 0 1 0 0] def
  27. /FontBBox [0 0 1 1] def
  28. /Encoding 256 array def
  29. 0 1 255 {Encoding exch () put} for
  30. Encoding 32 ( ) put
  31. Encoding 33 (!) put
  32. Encoding 34 (") put
  33. Encoding 35 (#) put
  34. Encoding 36 ($) put
  35. Encoding 37 (%) put
  36. Encoding 38 (&) put
  37. Encoding 39 (') put
  38. Encoding 40 (\() put
  39. Encoding 41 (\)) put
  40. Encoding 42 (*) put
  41. Encoding 43 (+) put
  42. Encoding 44 (,) put
  43. Encoding 45 (-) put
  44. Encoding 46 (.) put
  45. Encoding 47 (/) put
  46. Encoding 48 (0) put
  47. Encoding 49 (1) put
  48. Encoding 50 (2) put
  49. Encoding 51 (3) put
  50. Encoding 52 (4) put
  51. Encoding 53 (5) put
  52. Encoding 54 (6) put
  53. Encoding 55 (7) put
  54. Encoding 56 (8) put
  55. Encoding 57 (9) put
  56. Encoding 58 (:) put
  57. Encoding 59 (;) put
  58. Encoding 60 (<) put
  59. Encoding 61 (=) put
  60. Encoding 62 (>) put
  61. Encoding 63 (?) put
  62. Encoding 64 (@) put
  63. %Capitol Letters
  64. Encoding 65 (A) put
  65. Encoding 66 (B) put
  66. Encoding 67 (C) put
  67. Encoding 68 (D) put
  68. Encoding 69 (E) put
  69. Encoding 70 (F) put
  70. Encoding 71 (G) put
  71. Encoding 72 (H) put
  72. Encoding 73 (I) put
  73. Encoding 74 (J) put
  74. Encoding 75 (K) put
  75. Encoding 76 (L) put
  76. Encoding 77 (M) put
  77. Encoding 78 (N) put
  78. Encoding 79 (O) put
  79. Encoding 80 (P) put
  80. Encoding 81 (Q) put
  81. Encoding 82 (R) put
  82. Encoding 83 (S) put
  83. Encoding 84 (T) put
  84. Encoding 85 (U) put
  85. Encoding 86 (V) put
  86. Encoding 87 (W) put
  87. Encoding 88 (X) put
  88. Encoding 89 (Y) put
  89. Encoding 90 (Z) put
  90. %
  91. Encoding 91 ([) put
  92. Encoding 92 (\\) put
  93. Encoding 93 (]) put
  94. Encoding 94 (^) put
  95. Encoding 95 (_) put
  96. Encoding 96 (`) put
  97. %
  98. %small letters
  99. %
  100. Encoding 97 (a) put
  101. Encoding 98  (b) put 
  102. Encoding 99 (c) put 
  103. Encoding 100 (d) put 
  104. Encoding 101(e) put 
  105. Encoding 102(f) put 
  106. Encoding 103 (g) put 
  107. Encoding 104 (h) put 
  108. Encoding 105 (i) put 
  109. Encoding 106 (j) put 
  110. Encoding 107 (k) put 
  111. Encoding 108 (l) put 
  112. Encoding 109 (m) put 
  113. Encoding 110 (n) put 
  114. Encoding 111 (o) put 
  115. Encoding 112 (p) put 
  116. Encoding 113 (q) put 
  117. Encoding 114 (r) put 
  118. Encoding 115 (s) put 
  119. Encoding 116 (t) put 
  120. Encoding 117 (u) put 
  121. Encoding 118 (v) put 
  122. Encoding 119 (w) put 
  123. Encoding 120 (x) put 
  124. Encoding 121 (y) put 
  125. Encoding 122 (z) put 
  126. %
  127. %more symbols
  128. %
  129. Encoding 123 ({) put 
  130. Encoding 124 (|) put 
  131. Encoding 125 (}) put 
  132. Encoding 126 (~) put 
  133. %
  134. %end of Encoding
  135. /CharProcs 10 dict def
  136. CharProcs begin
  137. /.notdef {} def
  138. end
  139. /kprintNeXT { 
  140. [ /Courier /Courier-Bold /Courier-Oblique /Courier-BoldOblique
  141.     /Helvetica /Helvetica-Oblique /Helvetica-Bold /Helvetica-BoldOblique
  142.     /Ohlfs /Times-Roman /Times-Italic /Times-BoldItalic /Times-Bold  ] 
  143.      rand 13 mod get findfont  setfont
  144.     1 rand 24 mod 100 div sub
  145.     dup scale
  146.     0 0 moveto  show
  147.     } bind def
  148. /kprintALW { 
  149. [/AvantGarde-Book /AvantGarde-BookOblique /AvantGarde-Demi
  150.     /AvantGarde-DemiOblique /Bookman-Demi /Bookman-DemiItalic 
  151.     /Bookman-Light  /Bookman-LightItalic /Courier /Courier-Bold 
  152.     /Courier-BoldOblique /Courier-Oblique /Helvetica /Helvetica-Bold 
  153.     /Helvetica-BoldOblique /Helvetica-Narrow /Helvetica-Narrow-Bold 
  154.     /Helvetica-Narrow-BoldOblique /Helvetica-Narrow-Oblique 
  155.     /Helvetica-Oblique /NewCenturySchlbk-Bold 
  156.     /NewCenturySchlbk-BoldItalic /NewCenturySchlbk-Italic
  157.     /NewCenturySchlbk-Roman /Palatino-Bold /Palatino-BoldItalic 
  158.     /Palatino-Italic /Palatino-Roman /Times-Bold 
  159.     /Times-BoldItalic /Times-Italic /Times-Roman 
  160.     /ZapfChancery-MediumItalic ] 
  161.      rand 33 mod get findfont setfont
  162.     1 rand 24 mod 100 div sub
  163.     dup scale
  164.     0 0 moveto  show
  165.     } bind def
  166. %
  167. %change the kprint function called depending of available fonts
  168. %on a Next use kprintNeXT, on an Apple LaserWrter use kprintALW
  169. %
  170. /kprint {kprintALW} bind def
  171. /BuildChar {
  172. 1 0     setcharwidth
  173. /KSAVE save def
  174.     exch begin
  175.     Encoding exch get
  176.     dup
  177.     kprint
  178.     end
  179.     stringwidth setcharwidth
  180. KSAVE restore
  181.     }def
  182. end
  183. /Kidnapper Kidnapfont definefont pop
  184. %%
  185. %%End of Font Definition
  186. %%
  187. %%
  188.  
  189. %An Example of use
  190. /Kidnapper findfont 30 scalefont setfont
  191. 100 50 moveto (ABCDEFGHIJKLMNOPQRSTUVWXYZ) show
  192. 100 100 moveto (abcdefghijklmnopqrstuvwxyz) show
  193. 100 150 moveto (abcdefghijklmnopqrstuvwxyz) show
  194. 100 200 moveto (1234567890-=!@#$%^&*\(\)\\) show
  195. showpage
  196.  
  197.  
  198.