summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/fonts/source/lh/base/lgt2slvu.mf
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/fonts/source/lh/base/lgt2slvu.mf')
-rw-r--r--Master/texmf-dist/fonts/source/lh/base/lgt2slvu.mf38
1 files changed, 20 insertions, 18 deletions
diff --git a/Master/texmf-dist/fonts/source/lh/base/lgt2slvu.mf b/Master/texmf-dist/fonts/source/lh/base/lgt2slvu.mf
index 167cc669c6c..f418564a0ff 100644
--- a/Master/texmf-dist/fonts/source/lh/base/lgt2slvu.mf
+++ b/Master/texmf-dist/fonts/source/lh/base/lgt2slvu.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=1
+% 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:
%
@@ -50,7 +50,7 @@
% NARROW_E used EPS
%
-LHver_check(3,4); % like |version_check| in ec
+LHver_check(3,5); % like |version_check| in ec
lhchar "Uppercase Cyrillic letter ligature AZ - OLD A";
cyrchar(AZ,12u#,cap_height#,0);
@@ -146,8 +146,9 @@ else: fill z0--diag_end(0,4l,1,1,4r,3r)--diag_end(4r,3r,1,1,2l,1l)
--diag_end(2l,1l,1,1,1r,0)--cycle; fi % left and right diagonals
penpos5(whatever,angle(z2-z1)); z5=whatever[z1r,z2r];
penpos6(whatever,angle(z3-z4)); z6=whatever[z3l,z4l]; y6=y5;
-if hefty: y5r else: y5 fi =.5y0;
-y5r-y5l=y6r-y6l=cap_band; penstroke z5e--z6e; % bar line
+if hefty: y5r else: y5 fi =.5y0; y5r-y5l=y6r-y6l=cap_band;
+forsuffixes $=l,r: if x5$>x6$: x5$:=x6$-eps; fi endfor;
+penstroke z5e--z6e; % bar line
pickup tiny.nib;
x7=.5[x5,x6]; top y7=y5; x8=x7; bot y8=0;
pos7(max(currentbreadth+eps,.5[cap_band,cap_stem]),0);
@@ -186,10 +187,11 @@ if y0<h-cap_notch_cut: y0:=h-cap_notch_cut;
...{up}z0+.5left--cycle; % left and right diagonals
else: fill z0--diag_end(0,4l,1,1,4r,3r)--diag_end(4r,3r,1,1,2l,1l)
--diag_end(2l,1l,1,1,1r,0)--cycle; fi % left and right diagonals
-penpos5(whatever,angle(z2-z1)); z5=whatever[z1r,z2r];
-penpos6(whatever,angle(z3-z4)); z6=whatever[z3l,z4l]; y6=y5;
-if hefty: y5r else: y5 fi =.5y0;
-y5r-y5l=y6r-y6l=cap_band; penstroke z5e--z6e; % bar line
+penpos5(whatever,angle(z2-z1)); z5=whatever[z1r,z2r]-(eps,0);
+penpos6(whatever,angle(z3-z4)); z6=whatever[z3l,z4l]+(eps,0); y6=y5;
+if hefty: y5r else: y5 fi =.5y0; y5r-y5l=y6r-y6l=cap_band;
+forsuffixes $=l,r: if x5$>x6$: x5$:=x6$-eps; fi endfor;
+penstroke z5e--z6e; % bar line
pickup tiny.nib;
x7=.5[x5,x6]; top y7=y5; x8=x7; bot y8=0;
pos7(max(currentbreadth+eps,.5[cap_band,cap_stem]),0);
@@ -369,7 +371,7 @@ if serifs: pos0(flare+(cap_stem-stem),180); pos1(cap_hair,180);
pos16(.25[vair,curve],angle(z16-z14)+90);
z15l=z14l+whatever*(z14-z15); z15r=z14r+whatever*(z14-z15);
filldraw stroke z15e--z14e{z16r-z14}..{.5right}z16e; % hachek
-else: y1=.8h; pos1(min(cap_hair,1.2flare)-.2tiny,170);
+else: y1=.8h; pos1(max(currentbreadth+eps,min(cap_hair,1.2flare)-.2tiny),170);
filldraw stroke z1e{x2-x1,10(y2-y1)}...{right}z2e; % upper bowl
pos10(middle_weight,45);
filldraw stroke z10e{left}...z9e{z8e-z9e}; % tail
@@ -467,8 +469,8 @@ if serifs:
y1=h-vround max(.1fig_height+.5flare,.15fig_height-.5flare)+o;
x5=(.5w+eps);
rt x1r=hround min(.5w-max(
- if monospace:.67u,.55stem else:u,.7stem fi)+eps,lft x5l-1);
- x2=x4+if monospace:-fi.25u=hround (.67[lft x3r,rt x1r]);
+ if monospace:.67u,.55stem else:u,.7stem fi),lft x5l-1)+eps;
+ x2=x4+if monospace:-fi.25u=hround min(.67[lft x3r,rt x1r],rt x1r-.5)-eps;
{{less_tense; bulb(2,1,0)}}; % bulb
y5=max(good.y(.5bar_height-.9),y4l+vair');
(x,y4l)=whatever[z4r,z5l]; x4l:=min(x,x4l+.5u);
@@ -563,8 +565,8 @@ if serifs:
y1=h-vround max(.1fig_height+.5flare,.15fig_height-.5flare)+o;
x5=(.5w+eps);
rt x1r=hround min(.5w-max(
- if monospace:.67u,.55stem else:u,.7stem fi)+eps,lft x5l-1);
- x2=x4+if monospace:-fi.25u=hround (.67[lft x3r,rt x1r]);
+ if monospace:.67u,.55stem else:u,.7stem fi),lft x5l-1)+eps;
+ x2=x4+if monospace:-fi.25u=hround min(.67[lft x3r,rt x1r],rt x1r-.5)-eps;
{{less_tense; bulb(2,1,0)}}; % bulb
y5=max(good.y(.5bar_height-.9),y4l+vair');
(x,y4l)=whatever[z4r,z5l]; x4l:=min(x,x4l+.5u);
@@ -614,7 +616,7 @@ _one:=8; _two:=9; _three:=10; _four:=11; _five:=12;
%
if serifs: pickup crisp.nib;
else: pickup pencircle scaled min(.5fine,.15vair); fi
-numeric stem[]; stem1=if hefty: fudged.hair-2stem_corr else: .7[vair,stem] fi;
+numeric stem[]; stem1=max(currentbreadth+eps,if hefty: fudged.hair-2stem_corr else: .7[vair,stem] fi);
stem2=if serifs: vair else: max(currentbreadth+eps,.6[thin_join,vair]) fi;
stem3=if serifs: hair else: max(currentbreadth+eps,.6[thin_join,vair]) fi;
pos[_one](stem1,0); pos[_two](stem1,0);
@@ -661,8 +663,8 @@ if serifs:
top y2r=h+o; bot y4r=-o; lft x3r=hround u; y3=.5[y2,y4];
y1=h-vround max(.1fig_height+.5flare,.15fig_height-.5flare)+o; x5=(.5w+eps);
rt x1r=hround min(.5w-max(
- if monospace:.67u,.55stem else:u,.7stem fi)+eps,lft x5l-1);
- x2=x4+if monospace:-fi.25u=hround (.67[lft x3r,rt x1r]);
+ if monospace:.67u,.55stem else:u,.7stem fi),lft x5l-1)+eps;
+ x2=x4+if monospace:-fi.25u=hround min(.67[lft x3r,rt x1r],rt x1r-.5)-eps;
{{less_tense; bulb(2,1,0)}}; % bulb
y5=max(good.y(.5bar_height-.9),y4l+vair');
(x,y4l)=whatever[z4r,z5l]; x4l:=min(x,x4l+.5u);