diff options
Diffstat (limited to 'Master/texmf-dist/fonts/source/lh/nont2/lgunici.mf')
-rw-r--r-- | Master/texmf-dist/fonts/source/lh/nont2/lgunici.mf | 100 |
1 files changed, 96 insertions, 4 deletions
diff --git a/Master/texmf-dist/fonts/source/lh/nont2/lgunici.mf b/Master/texmf-dist/fonts/source/lh/nont2/lgunici.mf index 21fc1ffe47d..0fdbaca8d63 100644 --- a/Master/texmf-dist/fonts/source/lh/nont2/lgunici.mf +++ b/Master/texmf-dist/fonts/source/lh/nont2/lgunici.mf @@ -4,13 +4,13 @@ %% Cyrillic font container with T2 encoding beta-support % % This file is future part of lxfonts package -% Version 3.4 // Patchlevel=0 +% Version 3.5 // Patchlevel=1 % (c) O.Lapko % -% This package belongs to the public domain under conditions similar to +% This package is freeware product under conditions similar to % those of D. E. Knuth specified for the Computer Modern family of fonts. % In particular, only the authors are entitled to modify this file -% and to save it under the same name. +% (and all this package as well) and to save it under the same name. % % Content: % @@ -20,6 +20,8 @@ % List of letternames and their codes in Unicode % +% e_grv "50 E with grave +% i_grv "5d I with grave % gje "53 Ghe with acute % kje "5c Ka with acute % zh_brv "c2 Zhe with breve @@ -33,6 +35,8 @@ % i_uml "e5 I with umlaut % o_uml "e7 O with umlaut % otld_uml "e9 O tilded with umlaut +% ukre_uml -- Ukrainian E with umlaut +% erev_uml "ed Erev with umlaut % u_bar "ef U with macron (bar) % u_uml "f1 U with umlaut % u_dac "f3 U with double acute @@ -40,7 +44,48 @@ % ery_uml "f9 Ery with umlaut % -LHver_check(3,4); % like |version_check| in ec +LHver_check(3,5); % like |version_check| in ec + +lhchar "Italic Cyrillic letter e_grv - e grave"; +cyrchar_twice(e_grv,8u#,x_height#,0); +italcorr max(1/3x_height#*slant,x_height#*slant+.5(.2[hair#,stem#])-u#); %e +adjust_fit(if monospace:0 else:-.35u#fi,0); +% ital_e; +pickup fine.nib; %numeric heavy_hair; heavy_hair=hround .2[hair,stem];%defined in lxpseudo +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 +% the accent +put_gravis; repeat_once; +penlabels(0,1,2,3,4,5,6); endchar; + +lhchar "Italic Cyrillic letter i_grv - i grave"; +cyrchar_twice(i_grv,10u#,x_height#,0); +italcorr 1/3x_height#*slant+.5hair#+.5u#; +adjust_fit(0,0); +% ital_i; +pickup fine.nib; interim superness:=more_super; +x2=x3+.25u; pos3(stem,-180); lft x3r=hround(2.5u-.5stem); +% left skewstem; +if monospace: pos0(vair,90); x0=good.x .5[0,x2]; top y0l=h; y2=2/3h; + pos2(stem,0); filldraw stroke z2e{u,x_height}...{left}z0e; % terminal +else: x0=0; hook_in(0,1,2)(skewed); fi % opening hook +pos2'(stem,-180); z2'=z2; +pos4(vair,-90); pos5(hair,0); x4=.5[x3,x5]; +pos6(stem,0); rt x6r=hround(w-2.5u+.5stem); +x5=x6=x7; x9=w; hook_out(7,8,9); % closing hook +y3=.7[y4,y5]; bot y4r=-oo; y5=.57h; y6+.5stem=h; +filldraw stroke z2'e{-u,-x_height} + ...super_arc.e(3,4)...{up}z5e; % left stem and arc +filldraw circ_stroke z6e--z7e; % right stem +% the accent +put_gravis; repeat_once; +penlabels(0,1,2,3,4,5,6,7,8,9); endchar; lhchar "Italic Cyrillic letter kje (k acute)"; cyrchar_twice(kje,9u#,x_height#,0); %+acc_height# @@ -361,6 +406,53 @@ fi h:=full_h; lowercase_umlaut(0,0, 8,9,10,11); penlabels(1,2,3,4,5,6,7, 8,9,10,11); endchar; +lhchar "Italic Cyrillic letter ukre_uml - Ukrainian e (c with mid-line)"; +cyrchar(ukre_uml,8u#,lc_trema_height#,0); +italcorr if math_fitting:1/3x_height#*slant else:x_height#*slant-.5u# fi; %c+.5u +adjust_fit(if monospace:0 else:-.35u#fi,0); %c + full_h:=h; h:=x_height; +% ital_ukre; +pickup fine.nib; pos0(flare,0); pos1(hair,0); pos2(vair,90); +pos3(curve,180); pos4(vair,270); pos5(hair,320); +x2=x4=.5(w+u); rt x1r=max(rt x2,hround(w-.5u))+eps; +lft x3r=hround(1.5u-.5curve); x5r=good.x(w-eps); x6=x5; +y1=.5[bar_height,h]; top y2r=h+oo; bulb(2,1,0); % bulb +bot y4r=-oo; y3=.5[y2,y4]; top y5l=vround .5bar_height; y6=bar_height; +path p; p=z4{right}..z5..z6; +filldraw stroke pulled_arc.e(2,3) + & pulled_arc.e(3,4)...{direction 1 of p}z5e; % arc +pos7(vair,90); pos8(vair,90); +y7=bar_height; rt x7=hround max(rt x2+1+eps,lft x0l-eps); x8=x3; y7=y8; +filldraw stroke z7e--z8e; +%%%%% +% the accent +h:=full_h; lowercase_umlaut(0,0, 9,10,11,12); +penlabels(1,2,3,4,5,6,7,8); endchar; + +lhchar "Italic Cyrillic letter erev_uml - reverse e umlaut"; +cyrchar(erev_uml,8u#,lc_trema_height#,0); +italcorr .7x_height#*slant+.5curve#-u# if math_fitting:-.5u# fi; %o +adjust_fit(0,if monospace:0 else:-.35u# fi); %o +h:=x_height; +% ital_erev; +pickup fine.nib; +pos0(flare,180); pos1(hair,-180); pos2(vair,-90); +pos3(curve,0); pos4(vair,90); pos5(hair,140); +x2+.5u=x4=.5(w-u); lft x1r=min(lft x2,hround(.25u))-eps; +rt x3r=w-hround(1.5u-.5curve); lft x5r=good.x (lft x1r-eps); x6=x5; +y1-.5flare=.1h; bot y2r=-oo; bulb(2,1,0); % bulb +top y4r=h+oo; y3=.5[y2,y4]; top y5r=vround .5[bar_height,h]; +y6=bar_height; path p; p=z4{left}....z5..z6; +filldraw stroke pulled_arc.e(2,3) + & pulled_arc.e(3,4)...{direction 1 of p}z5e; % arc +x7=x3; y7=bar_height; y8=y7; lft x8=hround min(lft x2-1-eps,rt x0l+eps); +pos7(vair,90); pos8(vair,90); +filldraw stroke z7e--z8e; +%%% +% the accent +h:=full_h; lowercase_umlaut(0,0, 9,10,11,12); +penlabels(0,1,2,3,4,5,6,7,8, 9,10,11,12); endchar; + lhchar "Italic Cyrillic letter u_bar - u bar (macron)"; cyrchar(u_bar,if monospace:8.5u# else:9u#fi,lc_trema_height#,desc_depth#); italcorr x_height#*slant+.5stem#-u#; |