% File: mcyitall.mf % Based on: cyitall.mf % Modified by: Oliver Corff % Date: October 1997, Ulaanbaatar % % Computer Modern Cyrillic Italic lower case: cmchar "Cyrillic italic letter a"; beginchar(cyra,9u#,x_height#,0); italcorr 1/3x_height#*slant+.5hair#+.5u#; adjust_fit(0,0); pickup fine.nib; pos0(hair,0); pos1(vair,90); pos2(curve,180); pos3(vair,270); pos4(stem,0); x4=x0; y4+.5stem=vround .98h; x1=x3=.5[x0,x2]; lft x2r=hround(1.5u-.5curve); rt x4r=hround(w-2.5u+.5stem); top y1r=h+oo; bot y3r=-oo; y0=y2=.5[y1,y3]; filldraw stroke super_arc.e(0,1) & pulled_arc.e(1,2) & pulled_arc.e(2,3) & super_arc.e(3,0); % bowl x5=x4; x7=w; hook_out(5,6,7); % closing hook filldraw circ_stroke z4e--z5e; % stem math_fit(-.3x_height#*slant+.5curve#-u#,ic#); penlabels(0,1,2,3,4,5,6,7); endchar; cmchar "Cyrillic italic letter be"; beginchar(cyrb,9u#,asc_height#,0); italcorr .7x_height#*slant+.5curve#-u# if math_fitting:-.5u# fi; adjust_fit(0,0); pickup fine.nib; pos1(vair,90); pos2(curve,180); pos3(vair,270); pos4(curve,360); x1=x3=.5w; lft x2r=hround(1.5u-.5curve); x4=w-x2; top y1r=x_height+oo; y2=y4=.5[y1,y3]; bot y3r=-oo; filldraw stroke pulled_arc.e(1,2) & pulled_arc.e(2,3) & pulled_arc.e(3,4) & pulled_arc.e(4,1); % bowl pos2'(hair,180); z2'r=z2r; pos5(vstem,90); pos5'(vstem,-90); z5'=z5; pos6(hair,0); rt x6r=hround(w-u); top y6=h; top y5r=vround .9h; x5=x1; filldraw stroke pulled_arc.e(6,5'); filldraw stroke pulled_arc.e(5,2'); math_fit(-.3x_height#*slant+.5curve#-u#,ic#); penlabels(1,2,3,4); endchar; cmchar "Cyrillic italic letter ve"; beginchar(cyrv,9u#,x_height#,0); italcorr max(1/3x_height#*slant,x_height#*slant+.5(.2[hair#,stem#])-u#); adjust_fit(0,0); pickup fine.nib; numeric heavy_hair; heavy_hair=hround .2[hair,stem]; pos0(vair,-90); pos1(heavy_hair,0); pos2(vair,90); pos3(curve,180); pos4(vair,270); pos5(curve,0); pos6(vair,180); x0=rt x3l; rt x1r=hround(w-2.5u+.5heavy_hair); x2=x4=.5w; lft x3r=hround(1.5u-.5curve); x5r=good.x(w-u-eps); x6=x2; y0=y3=y6-.1u=bar_height; y1=.5[y0,y2]; top y2r=h+oo; bot y4r=-oo; y5=vround .5bar_height; filldraw stroke z0e{right}...z1e{up} ...pulled_arc.e(2,3) & pulled_arc.e(3,4) & {{surerness:=hein_super; pulled_arc.e(4,5) & pulled_arc.e(5,6)}}; math_fit(-.3x_height#*slant+.5curve#-u#,ic#); penlabels(0,1,2,3,4,5,6); endchar; cmchar "Cyrillic italic letter ghe"; beginchar(cyrg,8u#,x_height#,0); italcorr if math_fitting:1/3x_height#*slant else:x_height#*slant-u# fi; adjust_fit(0,0); pickup fine.nib; pos2(hair,140); pos3(vair,90); pos4(curve,0); pos5(vair,-90); pos5'(vair,90); pos6(curve,180); pos7(vair,270); pos8(hair,320); x7=w-x3=.5(w+u); x5=.52w; y5=.52h; z5'=z5; lft x6r=w-rt x4r-.5u=hround(1.5u-.5curve); x8r=w-x2=good.x(w-eps); x9=x8; x1=x2; top y3=h+oo; y4=.5[y5,y3]; bot y7r=-oo; y6=.5[y5,y7]; top y8l=h-bot y2l=vround .5bar_height; y9=h-y1=bar_height; path p[]; p1=z3{left}..z2..z1; p2=z7{right}..z8..z9; filldraw stroke pulled_arc.e(5,4) & pulled_arc.e(4,3)...{direction 1 of p1}z2e; filldraw stroke pulled_arc.e(5',6) & pulled_arc.e(6,7)...{direction 1 of p2}z8e; % arc math_fit(-.3x_height#*slant+.5curve#-u#,ic#); penlabels(0,1,2,3,4,5,6); endchar; cmchar "Cyrillic italic letter de"; beginchar(cyrd,9u#,asc_height#,0); italcorr .7x_height#*slant+.5curve#-u# if math_fitting:-.5u# fi; adjust_fit(0,0); pickup fine.nib; pos1(vair,150); pos2(vair,90); pos3(curve,0); pos4(vair,270); pos5(curve,180); pos6(vair,90); x1=x5l; x2=.5w-u; y1=h-.25u; top y2r=h+o; y3=.5[y2,y4]; x6=x4=.5w; lft x5r=w-rt x3r=hround(1.5u-.5curve); top y6r=x_height+oo; y5=.5[y6,y4]; bot y4r=-oo; path p; p=pulled_super_arc.l(3,4)(superpull); numeric t; t=xpart(p intersectiontimes((x4,y5)--(x3r,y5))); pos7(thin_join,0); z7l=point t of p; filldraw stroke z1e...pulled_super_arc.e(2,3)(superpull) & {{interim superness:=more_super; pulled_super_arc.e(3,4)(superpull)}} & {{less_tense; pulled_super_arc.e(4,5)(superpull)}} & pulled_super_arc.e(5,6)(superpull) & z6e{right}...{direction t of p}z7e; % arc and bowl math_fit(-.3x_height#*slant+.5curve#-u#,ic#); penlabels(1,2,3,4,5,6,7); endchar; cmchar "Cyrillic italic letter ie"; beginchar(cyre,8u#,x_height#,0); italcorr max(1/3x_height#*slant,x_height#*slant+.5(.2[hair#,stem#])-u#); adjust_fit(0,0); pickup fine.nib; numeric heavy_hair; heavy_hair=hround .2[hair,stem]; pos0(vair,-90); pos1(heavy_hair,0); pos2(vair,90); pos3(curve,180); pos4(vair,270); pos5(hair,320); x0=rt x3l; rt x1r=hround(w-1.5u+.5heavy_hair); x2=x4=.5(w+u); lft x3r=hround(1.5u-.5curve); x5r=good.x(w-eps); x6=x5; y0=y3=y6=bar_height; y1=.5[y0,y2]; top y2r=h+oo; bot y4r=-oo; top y5l=vround .5bar_height; path p; p=z4{right}..z5..z6; filldraw stroke z0e{right}...z1e{up}...pulled_arc.e(2,3) & pulled_arc.e(3,4)...{direction 1 of p}z5e; % arc math_fit(-.3x_height#*slant+.5curve#-u#,ic#); penlabels(0,1,2,3,4,5,6); endchar; cmchar "Cyrillic italic letter ye"; numeric dot_diam#,dot_diam; beginchar(cyryo,8u#,1.4x_height#,0); dot_diam=max(tiny.breadth,hround(max(dot_size,cap_curve)-2stem_corr)); italcorr max(1/3x_height#*slant,x_height#*slant+.5(.2[hair#,stem#])-u#); adjust_fit(0,0); pickup fine.nib; numeric heavy_hair,letter_h; letter_h=x_height; heavy_hair=hround .2[hair,stem]; pos0(vair,-90); pos1(heavy_hair,0); pos2(vair,90); pos3(curve,180); pos4(vair,270); pos5(hair,320); x0=rt x3l; rt x1r=hround(w-1.5u+.5heavy_hair); x2=x4=.5(w+u); lft x3r=hround(1.5u-.5curve); x5r=good.x(w-eps); x6=x5; y0=y3=y6=bar_height; y1=.5[y0,y2]; top y2r=letter_h+oo; bot y4r=-oo; top y5l=vround .5bar_height; path p; p=z4{right}..z5..z6; filldraw stroke z0e{right}...z1e{up}...pulled_arc.e(2,3) & pulled_arc.e(3,4)...{direction 1 of p}z5e; % arc math_fit(-.3x_height#*slant+.5curve#-u#,ic#); pos7(dot_diam,0); pos8(dot_diam,90); x7=x8=2.5u; top y8r=h+1; if bot y8l