home *** CD-ROM | disk | FTP | other *** search
/ The Datafile PD-CD 5 / DATAFILE_PDCD5.iso / utilities / r / riscript / !RiScript / Fonts / Chess < prev    next >
Text File  |  1993-10-30  |  31KB  |  687 lines

  1. %!PS-Adobe-1.0
  2. %% This is my font for chess and similar pieces.  It is supplied "as is".
  3. %% It works for me, I have no idea whether it will work for you;  you gets
  4. %% what you pays for.  Before using it, you should read the Copyright
  5. %% notice below and the "README" file which should accompany this file.
  6. %%    -- ANW, March 1991.
  7.  
  8. /Cfont 9 dict dup begin
  9.  
  10. /FontMatrix [ 0.001 0 0 0.001 0 0 ] readonly def
  11. /FontType 3 def
  12. /FontBBox [ 0 0 0 0 ] readonly def
  13. /Encoding 256 array def
  14. /FontInfo 3 dict dup begin
  15.   /Notice (
  16.  
  17.         Copyright (c) 1991 A. N. Walker.  All rights reserved.
  18.  
  19.         This notice must be preserved in all versions of this file, and
  20.         any alterations which you make must be clearly marked as such.
  21.         For further information, see the "README" file which should
  22.         accompany this, or contact me at Dept of Mathematics, Nottingham
  23.         Univ., UK, anw@maths.nott.ac.uk.
  24.  
  25.      ) readonly def
  26.   /FullName (ChessFont) readonly def
  27.   /version (2.0) readonly def
  28. end def
  29. /UniqueID 472474 def
  30.  
  31. Encoding
  32. 0 1 255 { 2 copy /.notdef put pop } for
  33. dup 8#040 /Wsquare put          % ' '
  34. dup 8#042 /flap put             % '"'
  35. dup 8#043 /board put            % '#'
  36. dup 8#047 /flip put             % ''''
  37. dup 8#052 /Bsquare put          % '*'
  38. dup 8#055 /edge put             % '-'
  39. dup 8#056 /blobfig put          % '.'
  40. dup 8#057 /corner put           % '/'
  41. dup 8#060 /m0 put               % '0'
  42. dup 8#061 /Wsquare put          % '1'
  43. dup 8#062 /m2 put               % '2'
  44. dup 8#063 /m3 put               % '3'
  45. dup 8#064 /m4 put               % '4'
  46. dup 8#065 /m5 put               % '5'
  47. dup 8#066 /m6 put               % '6'
  48. dup 8#067 /m7 put               % '7'
  49. dup 8#070 /m8 put               % '8'
  50. dup 8#071 /m9 put               % '9'
  51. dup 8#073 /nextline put         % ';'
  52. dup 8#074 /m-1 put              % '<'
  53. dup 8#076 /Wsquare put          % '>'
  54. dup 8#100 /wblock put           % '@'
  55. dup 8#102 /WB put               % 'B'
  56. dup 8#103 /WC put               % 'C'
  57. dup 8#104 /WD put               % 'D'
  58. dup 8#105 /WE put               % 'E'
  59. dup 8#106 /WF put               % 'F'
  60. dup 8#107 /WG put               % 'G'
  61. dup 8#111 /blob put             % 'I'
  62. dup 8#113 /WK put               % 'K'
  63. dup 8#114 /WL put               % 'L'
  64. dup 8#115 /WM put               % 'M'
  65. dup 8#116 /WN put               % 'N'
  66. dup 8#117 /BO put               % 'O'
  67. dup 8#120 /WP put               % 'P'
  68. dup 8#121 /WQ put               % 'Q'
  69. dup 8#122 /WR put               % 'R'
  70. dup 8#123 /WS put               % 'S'
  71. dup 8#124 /WT put               % 'T'
  72. dup 8#125 /WU put               % 'U'
  73. dup 8#126 /WV put               % 'V'
  74. dup 8#130 /WX put               % 'X'
  75. dup 8#132 /WZ put               % 'Z'
  76. dup 8#133 /posstart put         % '['
  77. dup 8#135 /posfinish put        % ']'
  78. dup 8#137 /underbar put         % '_'
  79. dup 8#142 /BB put               % 'b'
  80. dup 8#143 /BC put               % 'c'
  81. dup 8#144 /BD put               % 'd'
  82. dup 8#145 /BE put               % 'e'
  83. dup 8#146 /BF put               % 'f'
  84. dup 8#147 /BG put               % 'g'
  85. dup 8#151 /blob put             % 'i'
  86. dup 8#153 /BK put               % 'k'
  87. dup 8#154 /BL put               % 'l'
  88. dup 8#155 /BM put               % 'm'
  89. dup 8#156 /BN put               % 'n'
  90. dup 8#157 /BO put               % 'o'
  91. dup 8#160 /BP put               % 'p'
  92. dup 8#161 /BQ put               % 'q'
  93. dup 8#162 /BR put               % 'r'
  94. dup 8#163 /BS put               % 's'
  95. dup 8#164 /BT put               % 't'
  96. dup 8#165 /BU put               % 'u'
  97. dup 8#166 /BV put               % 'v'
  98. dup 8#170 /BX put               % 'x'
  99. dup 8#172 /BZ put               % 'z'
  100. dup 8#174 /sidebar put          % '|'
  101. dup 8#240 /Wsquare put          % ' '+
  102. dup 8#241 /without put          % '!'+
  103. dup 8#242 /flap put             % '"'+
  104. dup 8#243 /board put            % '#'+
  105. dup 8#245 /infinityequals put   % '%'+
  106. dup 8#247 /flip put             % ''''+
  107. dup 8#252 /circledot put        % '*'+
  108. dup 8#253 /plus put             % '+'+
  109. dup 8#255 /minus put            % '-'+
  110. dup 8#272 /doubled put          % ':'+
  111. dup 8#273 /nextline put         % ';'+
  112. dup 8#274 /equalsplus put       % '<'+
  113. dup 8#275 /equal put            % '='+
  114. dup 8#276 /plusequals put       % '>'+
  115. dup 8#277 /infinity put         % '?'+
  116. dup 8#300 /circarrow put        % '@'+
  117. dup 8#302 /Bfig put             % 'B'+
  118. dup 8#303 /Cfig put             % 'C'+
  119. dup 8#304 /Dfig put             % 'D'+
  120. dup 8#305 /Efig put             % 'E'+
  121. dup 8#306 /Ffig put             % 'F'+
  122. dup 8#307 /Gfig put             % 'G'+
  123. dup 8#311 /blobfig put          % 'I'+
  124. dup 8#313 /Kfig put             % 'K'+
  125. dup 8#314 /Lfig put             % 'L'+
  126. dup 8#315 /Mfig put             % 'M'+
  127. dup 8#316 /Nfig put             % 'N'+
  128. dup 8#317 /Ofig put             % 'O'+
  129. dup 8#320 /Pfig put             % 'P'+
  130. dup 8#321 /Qfig put             % 'Q'+
  131. dup 8#322 /Rfig put             % 'R'+
  132. dup 8#323 /Sfig put             % 'S'+
  133. dup 8#324 /Tfig put             % 'T'+
  134. dup 8#325 /Ufig put             % 'U'+
  135. dup 8#326 /Vfig put             % 'V'+
  136. dup 8#330 /Xfig put             % 'X'+
  137. dup 8#332 /Zfig put             % 'Z'+
  138. dup 8#333 /minusorplus put      % '['+
  139. dup 8#335 /plusorminus put      % ']'+
  140. dup 8#336 /uparrow put          % '^'+
  141. dup 8#341 /rightarrow put       % 'a'+
  142. dup 8#342 /semicircle put       % 'b'+
  143. dup 8#343 /centre put           % 'c'+
  144. dup 8#344 /diags put            % 'd'+
  145. dup 8#345 /etc put              % 'e'+
  146. dup 8#346 /Phalo put            % 'f'+
  147. dup 8#347 /samebs put           % 'g'+
  148. dup 8#350 /edgefig put          % 'h'+
  149. dup 8#351 /triangle put         % 'i'+
  150. dup 8#352 /Bsquarefig put       % 'j'+
  151. dup 8#353 /kside put            % 'k'+
  152. dup 8#354 /line put             % 'l'+
  153. dup 8#355 /hash put             % 'm'+
  154. dup 8#356 /cornerfig put        % 'n'+
  155. dup 8#357 /square put           % 'o'+
  156. dup 8#360 /ending put           % 'p'+
  157. dup 8#361 /qside put            % 'q'+
  158. dup 8#362 /Pfill put            % 'r'+
  159. dup 8#363 /separated put        % 's'+
  160. dup 8#364 /tempo put            % 't'+
  161. dup 8#365 /united put           % 'u'+
  162. dup 8#366 /oppbs put            % 'v'+
  163. dup 8#367 /with put             % 'w'+
  164. dup 8#370 /weakpt put           % 'x'+
  165. dup 8#371 /bpair put            % 'y'+
  166. dup 8#372 /circlebolddot put    % 'z'+
  167.     8#374 /botharrow put        % '|'+
  168.  
  169. /CharProcs 200 dict dup begin
  170.  
  171. % Miscellaneous:
  172.         /.notdef { } bind def
  173.         /Arcto  { arcto 4 { pop } repeat } bind def
  174.         /Ddn3c  { dup dup neg 3 copy } bind def
  175.         /Round  { dtransform round exch round exch idtransform } bind def
  176.         /Rlineto { Round rlineto } bind def
  177.         /Rmoveto { Round rmoveto } bind def
  178.         /diamond { moveto dup neg 0 rmoveto dup dup neg rlineto
  179.                 dup dup rlineto dup neg exch rlineto closepath } bind def
  180.         /dohalo { gsave 100 setlinewidth setW stroke grestore } bind def
  181.         /dofill { gsave fill grestore } bind def
  182.         /motion { 1000 mul exch 1000 mul exch setcharwidth } bind def
  183.         /setW   { 1 setgray } bind def
  184.         /setB   { 0 setgray } bind def
  185.         /drawingB { 0 currentgray eq } bind def
  186.         /setfig { 1000 0 0 -200 1000 800 setcachedevice 500 300 translate
  187.                 } bind def
  188.         /setpce { 1000 0 setcharwidth 500 dup translate 0.95 dup scale
  189.                 } bind def
  190.         /MiscStr (a) def
  191.         /tofig  { 0 get 8#200 add MiscStr exch 0 exch put MiscStr } bind def
  192.         /Tofig  { 1 0.95 div dup scale tofig } bind def
  193.         /intext true def
  194.         /flip   { 0 0 setcharwidth /intext intext not def } bind def
  195.         /flap   { 0 0 setcharwidth /intext true def } bind def
  196.         /Setfont { /ChessFont findfont 1000 scalefont setfont } bind def
  197.         /Show   { rotate -500 dup moveto Setfont show } bind def
  198.         /Showfig { rotate -500 -300 moveto Setfont show } bind def
  199.         /LocStr (a) def
  200.         /SetChar {
  201.                 dup 8#047 eq { pop flip stop } if
  202.                 dup 8#200 lt { intext {
  203.                         8#200 add LocStr exch 0 exch put
  204.                         Setfont LocStr dup stringwidth setcharwidth
  205.                         0 0 moveto show stop } if } if } bind def
  206.         /DoChar { Encoding exch get cvx exec } bind def
  207.  
  208. % Kings
  209.         /W