home *** CD-ROM | disk | FTP | other *** search
/ Fresh Fish 8 / FreshFishVol8-CD2.bin / bbs / text / pastex-1.3-7of9.lha / PasTeX / MF / inputs / amsfonts / cyrti.mf < prev    next >
Text File  |  1991-07-03  |  47KB  |  1,056 lines

  1. %% @metafontfile{
  2. %%     filename="cyrti.mf",
  3. %%     version="2.1",
  4. %%     date="30-MAY-1991",
  5. %%     filetype="Metafont: driver",
  6. %%     copyright="Copyright (C) Humanities and Arts Computing Center,
  7. %%            University of Washington;
  8. %%            all rights reserved.  Copying of this file is
  9. %%            authorized only if either:
  10. %%            (1) you make absolutely no changes to your copy
  11. %%                including name; OR
  12. %%            (2) if you do make changes, you first rename it to some
  13. %%                other name.",
  14. %%     author="American Mathematical Society",
  15. %%     address="American Mathematical Society,
  16. %%            Technical Support Group,
  17. %%            P. O. Box 6248,
  18. %%            Providence, RI 02940,
  19. %%            USA",
  20. %%     telephone="401-455-4080 or (in the USA) 800-321-4AMS",
  21. %%     email="Internet: Tech-Support@Math.AMS.com",
  22. %%     codetable="ISO/ASCII",
  23. %%     checksumtype="line count",
  24. %%     checksum="1056",
  25. %%     keywords="amsfonts, tex, metafont , cyrillic ",
  26. %%     abstract="This is the driver file for use with 
  27. %%            the cyrillic italic fonts in AMSFonts 2.1."
  28. %%     }
  29. %
  30. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  31. %cyrti.mf
  32.  
  33. cmchar "Italic Serbian letter Soft n (looks like hb)";
  34. beginchar(oct"010",6u#,x_height#,0);
  35. italcorr .7x_height#*slant+.5curve#-u# if math_fitting:-.5u# fi;
  36. adjust_fit(5u#,0); pickup tiny.nib; w:=6u;
  37. pos1(stem,0); pos2(stem,0); x1=x2;
  38. lft x1l=hround(u-.5stem); top y1=h; y2=.6bar_height;
  39. filldraw stroke z1e--z2e;  % stem
  40. sloped_serif.l(1,2,a,1/3,jut,serif_drop);  % serif
  41. pickup fine.nib; pos2'(stem,-180); pos3(vair,-90);
  42. pos4(curve,0); pos5(vair,90); pos0(hair,180);
  43. z0=z2=z2'; x3=x5=.5[x2,x4]; rt x4r=hround(w-u+.5curve);
  44. bot y3r=-oo; top y5r=1.2bar_height+oo; y4=y2;
  45. filldraw stroke pulled_arc.e(2',3) & pulled_arc.e(3,4)
  46.  & pulled_arc.e(4,5) & super_arc.e(5,0);  % bowl
  47. x80=-5u; x82-.5stem=hround(-2u-.5stem); hook_in(80,81,82); 
  48. z83=z82; x84=x83; y84-.5stem=-oo;
  49. pos83(stem,0); pos84(stem,0); filldraw circ_stroke z84e--z83e;
  50. x85=x83; y85=y86=bar_height; x86=x0; pos85(hair,90); pos86(hair,90);
  51. filldraw stroke z85e--z86e;
  52. %y11=y1; x11=x1-4.5u; x12=x11; pos11(stem,0); x14=-.5u;
  53. %hook_out(12,13,14);
  54. %sloped_serif.l(11,12,b,1/3,jut,serif_drop);  % serif
  55. %filldraw stroke z11e--z12e;
  56. %x89=x11; y89=.75[y2,y3]; x90=x0; y90=y89; pos89(hair,90); pos90(hair,90);
  57. %filldraw stroke z89e--z90e;
  58. endchar;
  59.  
  60. cmchar "Italic Serbian letter soft l";
  61. beginchar(oct"011",12u#,x_height#,0);
  62. adjust_fit(.5u#,.5u#); pickup fine.nib; w:=9u;
  63. y1+.375stem=h; x1=.5[x3,x1']; x2=x3=3u; y3=.35h; y2=.75h;
  64. bot y4r=-oo; y1'=.8h; x1'l=w-2u;
  65. x4=.5[x6,x3]; y6-.5flare=.1h; pos6(flare,-180);
  66. pos5(hair,-180); lft x6r=-.25u; z5r=z6r;
  67. pos4(vair,-90); pos2(hair,0); pos3(hair,0); pos1(.75stem,-90); 
  68. x7=x1'; pos1'(stem,180); pos7(stem,0); 
  69. z11=z1'; pos11(stem,0); y7=.6bar_height; 
  70. bulb(4,5,6); 
  71. filldraw stroke pulled_arc.e(4,3) &  super_arc.e(3,1) & super_arc.e(1,1');
  72. filldraw stroke z11e..z7e; w:=12u;
  73. x23=x25=.5[x7,x24]; rt x24r=hround(w-u+.5curve);
  74. bot y23r=-oo; top y25r=1.2bar_height+oo; y24=y7; z7'=z7; pos7'(stem,-180);
  75. z20=z7; pos20(hair,180); pos23(vair,-90); pos24(curve,0); pos25(vair,90);
  76. filldraw stroke pulled_arc.e(7',23) & pulled_arc.e(23,24)
  77.  & pulled_arc.e(24,25) & super_arc.e(25,20);  % bowl
  78. endchar;
  79.  
  80. cmchar "Italic Serbian letter hard dj";
  81. beginchar(oct"012",9.5u#,x_height#,desc_depth#);
  82. italcorr 1/3x_height#*slant+.5hair#+.5u#;
  83. adjust_fit(0,0); pickup fine.nib; interim superness:=more_super;
  84. x0=0; x2=x3+.25u; pos3(stem,-180); lft x3r=hround(2.5u-.5stem);
  85. hook_in(0,1,2)(skewed);  % opening hook
  86. pos2'(stem,-180); z2'=z2;
  87. pos4(vair,-90); pos5(hair,0); x4=.5[x3,x5];
  88. pos6(stem,0); rt x6r=hround(w-2.5u+.5stem);
  89. x5=x6=x7; x9=w; hook_out(7,8,9);  % closing hook
  90. y3=.7[y4,y5]; bot y4r=-oo; y5=.57h; y6+.5stem=h;
  91. filldraw stroke z2'e{-u,-x_height}
  92.  ...super_arc.e(3,4)...{up}z5e; % left stem and arc
  93. filldraw circ_stroke z6e--z7e;  % right stem
  94. %
  95. %x31=x7; y31=-.25d; x32=x3; y32=-.8d; x33=.25[x32,x31]; y33=-d;
  96. %pos31(vair,180); pos32(slab,270); pos33(hair,360);
  97. %filldraw stroke z4e{2,-1}...{down}z31e{down}...{down}z32e...{right}z33e;
  98. x31=x7; y31=-.25d; x32=x3; y32=-.8d; x33=x32-1.5u; y33=y32+u;
  99. pos31(vair,-180); pos32(.7stem,-270); pos33(hair,-360);
  100. filldraw stroke z4e{2,-1}...z31e...{left}z32e...z33e;
  101. %
  102. math_fit(-2/3x_height#*slant+.5hair#+.5u#,ic#);
  103. penlabels(0,1,2,3,4,5,6,7,8,9); endchar;
  104.  
  105. cmchar "Italic Russian letter reverse e (looks like backwards c)";
  106. beginchar(oct"013",8u#,x_height#,0);
  107. italcorr if math_fitting:1/3x_height#*slant else:x_height#*slant-u# fi;
  108. adjust_fit(0,0); pickup fine.nib;
  109. pos0(flare,0); pos1(hair,0); pos2(vair,90);
  110. pos3(curve,180); pos4(vair,270); pos5(hair,320);
  111. x2=x4=.5(w+u); rt x1r=max(rt x2,hround(w-.25u))+eps;
  112. lft x3r=hround(1.5u-.5curve); x5r=good.x(w-eps); x6=x5;
  113. y1=.5[bar_height,h]; top y2r=h+oo; bulb(2,1,0);  % bulb
  114. bot y4r=-oo; y3=.5[y2,y4]; top y5l=vround .5bar_height; y6=bar_height;
  115. path p; p=z4{right}..z5..z6;
  116. filldraw stroke pulled_arc.e(2,3)
  117.  & pulled_arc.e(3,4)...{direction 1 of p}z5e;  % arc
  118. x77=x4; y77=.5h; x78=2x77-x3; y78=2y77-y3;
  119. flip(77); 
  120. y79=y78; x79=x78-(x1-x3);
  121. pos78(hair,90); pos79(hair,90); 
  122. filldraw stroke z78e--z79e; 
  123. endchar;
  124.  
  125. cmchar "Italic Ukrainian letter i";
  126. beginchar(oct"014",5u#,min(asc_height#,10/7x_height#+.5flare#),0);
  127. italcorr max(1/3x_height#*slant+.5hair#+.5u#,h#*slant+.5flare#-2u#);
  128. adjust_fit(if monospace:u#,u# else: 0,0 fi); pickup fine.nib;
  129. x0=0; x5=w; x2=.5w+.25u; x3=.5w-.25u;
  130. hook_in(0,1,2)(skewed); hook_out(3,4,5)(skewed);  % hooks
  131. filldraw stroke z2e--z3e;  % stem
  132. pos8(flare,0); pos9(flare,90);
  133. x8=.5w if not monospace:-.4(h-x_height)*slant fi; top y9r=h+1;
  134. if bot y9l-top y1<slab: y9l:=min(y9r-eps,y1+fine+slab); fi
  135. x8=x9; y8=.5[y9l,y9r]; dot(8,9);  % dot
  136. math_fit(-2/3x_height#*slant+.5hair#+.5u#,ic#);
  137. penlabels(0,1,2,3,4,5,8,9); endchar;
  138.  
  139. cmchar "Italic Ukrainian letter ye (looks like c with mid-line)";
  140. beginchar(oct"015",8u#,x_height#,0);
  141. italcorr if math_fitting:1/3x_height#*slant else:x_height#*slant-u# fi;
  142. adjust_fit(0,0); pickup fine.nib;
  143. pos0(flare,0); pos1(hair,0); pos2(vair,90);
  144. pos3(curve,180); pos4(vair,270); pos5(hair,320);
  145. x2=x4=.5(w+u); rt x1r=max(rt x2,hround(w-.25u))+eps;
  146. lft x3r=hround(1.5u-.5curve); x5r=good.x(w-eps); x6=x5;
  147. y1=.5[bar_height,h]; top y2r=h+oo; bulb(2,1,0);  % bulb
  148. bot y4r=-oo; y3=.5[y2,y4]; top y5l=vround .5bar_height; y6=bar_height;
  149. path p; p=z4{right}..z5..z6;
  150. filldraw stroke pulled_arc.e(2,3)
  151.  & pulled_arc.e(3,4)...{direction 1 of p}z5e;  % arc
  152. x78=x3; y78=y3; y79=y78; x79=x1;
  153. pos78(hair,90); pos79(hair,90); 
  154. filldraw stroke z78e--z79e; 
  155. endchar;
  156.  
  157. cmchar "Italic Serbian letter dj (looks like barred h with tail)";
  158. beginchar(oct"016",8u#,asc_height#,desc_depth#);
  159. italcorr 1/3x_height#*slant+.5hair#+.5u#;
  160. adjust_fit(1.5u#,0); pickup tiny.nib;
  161. pos1(stem,0); pos2(stem,0); x1=x2;
  162. lft x1l=hround(1.5u-.5stem); top y1=h; y2-.5stem=-oo;
  163. filldraw circ_stroke z2e--z1e;  % left stem
  164. sloped_serif.l(1,2,a,1/3,jut,serif_drop);  % serif
  165. pickup fine.nib; x4+.5stem=hround(w-.75u+.5stem);
  166. x5=x4; %x5=x4-.25u; 
  167. ital_arch(2,3,4);  % arch
  168. x7=.45[x2,x4]; bot y7r=-d; pos7(hair,-90);
  169. filldraw stroke pulled_arc.e(4,7);
  170. x98=-u; x99=x4; y98=y99=.5x_height+.5h; pos98(bar,90); pos99(bar,90);
  171. filldraw stroke z98e--z99e;
  172. %x7=w; hook_out(5,6,7)(skewed);  % closing hook
  173. %filldraw stroke z4e{down}..{-u,-x_height}z5e;  % right stem
  174. math_fit(0,ic#); penlabels(1,2,3,4,5,6,7); endchar;
  175.  
  176. cmchar "Italic Serbian letter soft t (looks like barred h)";
  177. beginchar(oct"017",9u#,asc_height#,0);
  178. italcorr 1/3x_height#*slant+.5hair#+.5u#;
  179. adjust_fit(1.5u#,0); pickup tiny.nib;
  180. pos1(stem,0); pos2(stem,0); x1=x2;
  181. lft x1l=hround(1.5u-.5stem); top y1=h; y2-.5stem=-oo;
  182. filldraw circ_stroke z2e--z1e;  % left stem
  183. sloped_serif.l(1,2,a,1/3,jut,serif_drop);  % serif
  184. pickup fine.nib; x4+.5stem=hround(w-2.5u+.5stem);
  185. x5=x4-.25u; ital_arch(2,3,4);  % arch
  186. x7=w; hook_out(5,6,7)(skewed);  % closing hook
  187. filldraw stroke z4e{down}..{-u,-x_height}z5e;  % right stem
  188. x98=-u; x99=x4; y98=y99=.5x_height+.5h; pos98(bar,90); pos99(bar,90);
  189. filldraw stroke z98e--z99e;
  190. math_fit(0,ic#); penlabels(1,2,3,4,5,6,7); endchar;
  191.  
  192. cmchar "Italic Russian letter yu (