home *** CD-ROM | disk | FTP | other *** search
/ Fresh Fonts 1 / freshfonts1.bin / bbs / programs / amiga / metafont.lha / MF / INPUTS / DC / dxileast.mf < prev    next >
Text File  |  1994-04-12  |  29KB  |  732 lines

  1. % This is DXILEAST.MF in text format, as of March 24, 1992
  2. %
  3. % DC fonts Version 1.1 (prerelease of EC fonts)
  4. %
  5. %          [ heavily borrowed from the Computer Modern Roman family of
  6. %            fonts by D. E. Knuth ]
  7. %
  8. % Content:
  9. %
  10. %   accented lowercase italic letters ("eastern part")
  11. %
  12. %   oct"236", oct"240" .. oct"274"
  13. %
  14.  
  15.  
  16. dcchar "Italic letter bar d";
  17. beginchar(oct"236",9u#,asc_height#,0);
  18. italcorr max(1/3x_height#*slant+.5hair#+.5u#,
  19.   h#*slant+.5stem#-2u#) if math_fitting:-.5u# fi;
  20. adjust_fit(0,0); pickup fine.nib;
  21. pos0(hair,0); pos1(vair,90); pos2(curve,180); pos3(vair,270);
  22. x0=x4; x1=x3=.5[x0,x2]; lft x2r=hround(1.5u-.5curve);
  23. x4+.5stem=hround(w-2.5u+.5stem);
  24. top y1r=x_height+oo; bot y3r=-oo; y0=y2=.5[y1,y3];
  25. filldraw stroke super_arc.e(0,1) & pulled_arc.e(1,2)
  26.  & pulled_arc.e(2,3) & super_arc.e(3,0);  % bowl
  27. x5=x0; x7=w; hook_out(5,6,7);  % closing hook
  28. pickup tiny.nib; pos5'(stem,0); pos4(stem,0);
  29. z5'=z5; top y4=h; filldraw stroke z4e--z5'e;  % stem
  30. sloped_serif.l(4,5',a,1/3,jut,serif_drop);  % serif
  31. math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
  32. % the bar
  33.   pos8(bar,90); pos9(bar,90);
  34.   x8=x1; % .5[x1,x4];
  35.   x9=x6;
  36.   y8=y9=.5[y.a2-.5slab,y1+.5vair];
  37.   filldraw stroke z8e--z9e;
  38. penlabels(0,1,2,3,4,5,6,7,8); endchar;
  39.  
  40.  
  41.  
  42. dcchar "Italic letter breve a";
  43. beginchar(oct"240",9u#,x_height#+acc_height#,0);
  44. italcorr 1/3x_height#*slant+.5hair#+.5u#;
  45. adjust_fit(0,0); pickup fine.nib;
  46. pos0(hair,0); pos1(vair,90); pos2(curve,180); pos3(vair,270);
  47. pos4(stem,0); x4=x0; y4+.5stem=vround .98x_height;
  48. x1=x3=.5[x0,x2]; lft x2r=hround(1.5u-.5curve);
  49. rt x4r=hround(w-2.5u+.5stem);
  50. top y1r=x_height+oo; bot y3r=-oo; y0=y2=.5[y1,y3];
  51. filldraw stroke super_arc.e(0,1) & pulled_arc.e(1,2)
  52.  & pulled_arc.e(2,3) & super_arc.e(3,0);  % bowl
  53. x5=x4; x7=w; hook_out(5,6,7);  % closing hook
  54. filldraw circ_stroke z4e--z5e;  % stem
  55. math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
  56. % the accent
  57. lowercase_breve(.5w,0,8,9,10);
  58. penlabels(0,1,2,3,4,5,6,7,8,9,10); endchar;
  59.  
  60. dcchar "Italic letter ogonek a";
  61. beginchar(oct"241",9u#,x_height#,desc_depth#);
  62. italcorr 1/3x_height#*slant+.5hair#+.5u#;
  63. adjust_fit(0,0); pickup fine.nib;
  64. pos0(hair,0); pos1(vair,90); pos2(curve,180); pos3(vair,270);
  65. pos4(stem,0); x4=x0; y4+.5stem=vround .98x_height;
  66. x1=x3=.5[x0,x2]; lft x2r=hround(1.5u-.5curve);
  67. rt x4r=hround(w-2.5u+.5stem);
  68. top y1r=x_height+oo; bot y3r=-oo; y0=y2=.5[y1,y3];
  69. filldraw stroke super_arc.e(0,1) & pulled_arc.e(1,2)
  70.  & pulled_arc.e(2,3) & super_arc.e(3,0);  % bowl
  71. x5=x4; x7=w; hook_out(5,6,7);  % closing hook
  72. filldraw circ_stroke z4e--z5e;  % stem
  73. math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
  74. % the accent
  75. lowercase_ogonek(x6r,0,8,9,10);
  76. penlabels(0,1,2,3,4,5,6,7,8,9,10); endchar;
  77.  
  78. dcchar "Italic letter acute c";
  79. beginchar(oct"242",8u#,x_height#+acc_height#,0);
  80. italcorr if math_fitting:1/3x_height#*slant else:x_height#*slant-u# fi;
  81. adjust_fit(0,0); pickup fine.nib;
  82. pos0(flare,0); pos1(hair,0); pos2(vair,90);
  83. pos3(curve,180); pos4(vair,270); pos5(hair,320);
  84. x2=x4=.5(w+u); rt x1r=max(rt x2,hround(w-u))+eps;
  85. lft x3r=hround(1.5u-.5curve); x5r=good.x(w-eps); x6=x5;
  86. y1=.5[bar_height,x_height]; top y2r=x_height+oo; bulb(2,1,0);  % bulb
  87. bot y4r=-oo; y3=.5[y2,y4]; top y5l=vround .5bar_height; y6=bar_height;
  88. path p; p=z4{right}..z5..z6;
  89. filldraw stroke pulled_arc.e(2,3)
  90.  & pulled_arc.e(3,4)...{direction 1 of p}z5e;  % arc
  91. math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
  92. % the accent
  93. lowercase_acute(0,0,7,8);
  94. penlabels(0,1,2,3,4,5,6,7,8); endchar;
  95.  
  96. dcchar "Italic letter hachek (check) c";
  97. beginchar(oct"243",8u#,x_height#+acc_height#,0);
  98. italcorr if math_fitting:1/3x_height#*slant else:x_height#*slant-u# fi;
  99. adjust_fit(0,0); pickup fine.nib;
  100. pos0(flare,0); pos1(hair,0); pos2(vair,90);
  101. pos3(curve,180); pos4(vair,270); pos5(hair,320);
  102. x2=x4=.5(w+u); rt x1r=max(rt x2,hround(w-u))+eps;
  103. lft x3r=hround(1.5u-.5curve); x5r=good.x(w-eps); x6=x5;
  104. y1=.5[bar_height,x_height]; top y2r=x_height+oo; bulb(2,1,0);  % bulb
  105. bot y4r=-oo; y3=.5[y2,y4]; top y5l=vround .5bar_height; y6=bar_height;
  106. path p; p=z4{right}..z5..z6;
  107. filldraw stroke pulled_arc.e(2,3)
  108.  & pulled_arc.e(3,4)...{direction 1 of p}z5e;  % arc
  109. math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
  110. % the accent
  111. lowercase_hachek(x2,0,7,8,9,10,11);
  112. penlabels(0,1,2,3,4,5,6,7,8,9,10,11); endchar;
  113.  
  114.  
  115. dcchar "Italic letter d";
  116. beginchar(oct"244",9u#,asc_height#,0);
  117. italcorr max(1/3x_height#*slant+.5hair#+.5u#,
  118.   h#*slant+.5stem#-2u#) if math_fitting:-.5u# fi;
  119. adjust_fit(0,0); pickup fine.nib;
  120. pos0(hair,0); pos1(vair,90); pos2(curve,180); pos3(vair,270);
  121. x0=x4; x1=x3=.5[x0,x2]; lft x2r=hround(1.5u-.5curve);
  122. x4+.5stem=hround(w-2.5u+.5stem);
  123. top y1r=x_height+oo; bot y3r=-oo; y0=y2=.5[y1,y3];
  124. filldraw stroke super_arc.e(0,1) & pulled_arc.e(1,2)
  125.  & pulled_arc.e(2,3) & super_arc.e(3,0);  % bowl
  126. x5=x0; x7=w; hook_out(5,6,7);  % closing hook
  127. pickup tiny.nib; pos5'(stem,0); pos4(stem,0);
  128. z5'=z5; top y4=h; filldraw stroke z4e--z5'e;  % stem
  129. sloped_serif.l(4,5',a,1/3,jut,serif_drop);  % serif
  130. math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
  131. % the accent
  132. komma_one := 8;
  133.  x[komma_one]=hround(w+0.5dot_size-0.25u);
  134. y[komma_one]+.5dot_size=h;
  135. comma([komma_one],ee,dot_size,.25u,0.8comma_depth);  % comma with increased jut
  136. penlabels(0,1,2,3,4,5,6,7,8); endchar;
  137.  
  138. dcchar "Italic letter hachek (check) e";
  139. beginchar(oct"245",8u#,x_height#+acc_height#,0);
  140. italcorr max(1/3x_height#*slant,x_height#*slant+.5(.2[hair#,stem#])-u#);
  141. adjust_fit(0,0); pickup fine.nib;
  142. numeric heavy_hair; heavy_hair=hround .2[hair,stem];
  143. pos0(vair,-90); pos1(heavy_hair,0); pos2(vair,90);
  144. pos3(curve,180); pos4(vair,270); pos5(hair,320);
  145. x0=rt x3l; rt x1r=hround(w-1.5u+.5heavy_hair); x2=x4=.5(w+u);
  146. lft x3r=hround(1.5u-.5curve); x5r=good.x(w-eps); x6=x5;
  147. y0=y3=y6=bar_height; y1=.5[y0,y2]; top y2r=x_height+oo; bot y4r=-oo;
  148. top y5l=vround .5bar_height; path p; p=z4{right}..z5..z6;
  149. filldraw stroke z0e{right}...z1e{up}...pulled_arc.e(2,3)
  150.  & pulled_arc.e(3,4)...{direction 1 of p}z5e;  % arc
  151. %the accent
  152. lowercase_hachek(5/6[x3,x2],0,7,8,9,10,11);
  153. math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
  154. penlabels(0,1,2,3,4,5,6,7,8,9,10,11); endchar;
  155.  
  156. dcchar "Italic letter ogonek e";
  157. beginchar(oct"246",8u#,x_height#,desc_depth#);
  158. italcorr max(1/3x_height#*slant,x_height#*slant+.5(.2[hair#,stem#])-u#);
  159. adjust_fit(0,0); pickup fine.nib;
  160. save pp;
  161. path pp;
  162. numeric heavy_hair; heavy_hair=hround .2[hair,stem];
  163. pos0(vair,-90); pos1(heavy_hair,0); pos2(vair,90);
  164. pos3(curve,180); pos4(vair,270); pos5(hair,320);
  165. x0=rt x3l; rt x1r=hround(w-1.5u+.5heavy_hair); x2=x4=.5(w+u);
  166. lft x3r=hround(1.5u-.5curve); x5r=good.x(w-eps); x6=x5;
  167. y0=y3=y6=bar_height; y1=.5[y0,y2]; top y2r=h+oo; bot y4r=-oo;
  168. top y5l=vround .5bar_height; path p; p=z4{right}..z5..z6;
  169. filldraw stroke z0e{right}...z1e{up}...pulled_arc.e(2,3)
  170.  & pulled_arc.e(3,4)...{direction 1 of p}z5e;  % arc
  171. pp=z0r{right}...z1r{up}...pulled_arc.r(2,3)
  172.  & pulled_arc.r(3,4)...{direction 1 of p}z5r;  % arc
  173. %pp=z0{right}...z1{up}...z2l...z3l...z4l...{direction 1 of p}z5l;  % arc
  174. %z10=point 4.6 of pp;
  175. z10=point 6.6 of pp;
  176. %the accent
  177. %lowercase_ogonek(.25[x4,x5],0,7,8,9);
  178. lowercase_ogonek(x10,y10-.2hair,7,8,9);
  179. math_fit(-.3x_height#*slant+.5curve#-u#,ic#);
  180. penlabels(0,1,2,3,4,5,6,7,8,9); endchar;
  181.  
  182.  
  183.  
  184.  
  185. dcchar "Italic letter g";
  186. beginchar(oct"247",8u#,x_height#+acc_height#,desc_depth#);
  187. italcorr x_height#*slant+.5stem#-u#;
  188. adjust_fit(0,0); pickup fine.nib;
  189. pos0(hair,0); pos1(vair,90); pos2(curve,180); pos3(vair,270);
  190. x0=x4; x1=x3=.5[x0,x2]; lft x2r=hround(1.5u-.5curve);
  191. x4+.5stem=hround(w-1.5u+.5stem);
  192. top y1r=x_height+oo; bot y3r=0; y0=y2=.5[y1,y3];
  193. filldraw stroke super_arc.e(0,1) & pulled_arc.e(1,2)
  194.  & pulled_arc.e(2,3) & super_arc.e(3,0);  % bowl
  195. pos4(stem,0); y4+.5stem=vround .98x_height;
  196. pos5(stem,0); x5=x4; y5=-1/3d;
  197. pos6(vair,-90); pos7(hair,-180); pos8(flare,-180);
  198. bot y6r=-d-oo; y8-.5flare=vround -.9d;
  199. lft x8r=hround(2u-.5flare); x6=x1; bulb(6,7,8);  % bulb
  200. filldraw circ_stroke z4e---z5e...{left}z6e;  % stem and arc
  201. %the accent
  202. lowercase_breve(.5w,0,9,10,11);
  203. math_fit(-min(.3x_height#*slant+.5curve#-u#,1.5u#-desc_depth#*slant),
  204.  ic#-1/3x_height#*slant);
  205. penlabels(0,1,2,3,4,5,6,7,8,9,10,11); endchar;
  206.  
  207.  
  208. dcchar "Italic letter acute l";
  209. beginchar(oct"250",4u#,asc_height#+acc_height#,0); l_width#:=4u#;
  210.