summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/fonts/source/vntex/vnr/vnlar.mf
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/fonts/source/vntex/vnr/vnlar.mf')
-rw-r--r--Master/texmf-dist/fonts/source/vntex/vnr/vnlar.mf112
1 files changed, 112 insertions, 0 deletions
diff --git a/Master/texmf-dist/fonts/source/vntex/vnr/vnlar.mf b/Master/texmf-dist/fonts/source/vntex/vnr/vnlar.mf
new file mode 100644
index 00000000000..7f547ba4163
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/vntex/vnr/vnlar.mf
@@ -0,0 +1,112 @@
+% Copyright 2003-2005 Han The Thanh <hanthethanh@gmx.net>.
+% This file is part of vntex. License: LPPL, version 1.3 or newer,
+% according to http://www.latex-project.org/lppl.txt
+
+% Computer Modern Roman lower case "a" precomposed glyphs:
+% Inclusion:
+% a' a` a? a~ a.
+% a( a(' a(` a(? a(~ a(.
+% a^ a^' a^` a^? a^~ a^.
+
+begin_letter(a);
+ bh# := min(bar_height#, 1.14x_height# - bar_height#);
+ define_pixels(bh);
+ set_letter_dimens(a)(
+ 9u#, x_height#, 0,
+ 1/3[bh#, x_height#] * slant + .5stem# - serif_fit# - 2u#,
+ 0, serif_fit# if serifs: if hair# + .5stem# > 1.5u#: -.25u# fi\\fi
+ );
+ pickup fine.nib;
+ top y3r = h+vround 1.5oo;
+ if serifs: pos1(flare, 180);
+ pos2(hair, 180);
+ pos3(vair, 90);
+ lft x1r = hround max(u, 2.1u - .5flare);
+ x3 = .5w - .5u;
+ y1 = min(bh + .5flare + 2vair + 2, .9[bh, h] - .5flare);
+ bulb(3, 2, 1); % bulb
+ else: pos1(5/7[vair, flare], 95);
+ x1l = good.x 1.5u;
+ x1r := good.x x1r;
+ pos3(1/8[vair, thin_join], 90);
+ x3 = .5w - .2u;
+ top y1r = vround .82[bh, top y3r];
+ filldraw stroke term.e(3, 1, left, .9, 4);
+ fi % terminal
+ pos4(stem, 0);
+ rt x4r = hround(w - 2.5u + .5stem);
+ y4 = 1/3[bh, h];
+ pos5(stem, 0);
+ x5 = x4;
+ y5 = max(.55bh, 2vair);
+ filldraw stroke super_arc.e(3, 4)&z4e .. z5e; % arc and stem
+ pos6(.3[thin_join, vair], 90);
+ x6 = x4;
+ bot y6 = bh;
+ pos7(hround(curve - 2stem_corr), 180);
+ lft x7r = hround max(.5u, 1.5u - .5curve);
+ y7 = 1/3[top y8l, top y6r];
+ pos8(vair, 270);
+ x8l = .5w - .75u;
+ bot y8r=-oo;
+ pos9(thin_join, 360);
+ z9l = z5l;
+ (x, y8r) = whatever[z8l, z9l];
+ x8r := max(x, x8 - u);
+ {{interim superness := more_super;
+ filldraw stroke z9e{down} ... z8e{left} ... {up}z7e&super_arc.e(7, 6)}}; % bowl
+ if serifs: numeric shaved_stem;
+ shaved_stem = hround(stem - 3stem_corr);
+ if hair# + .5stem# > 1.5u#: pickup tiny.nib;
+ pos5'(shaved_stem, 0);
+ rt x5'r = fine.rt x5r;
+ y5' = y5;
+ pos10(shaved_stem, 0);
+ x10 = x5';
+ y10 = .2[.5tiny, bh];
+ pos11(shaved_stem, 0);
+ rt x11r = hround(w - .25u);
+ bot y11 = 0;
+ pos12(shaved_stem, 0);
+ x11 = x12;
+ top y12 = slab + eps;
+ filldraw z5'l --- z10l ... z11l{right} -- z11r
+ -- z12r{left} ... z10r + .75(z12 - z11) --- z5'r -- cycle; % foot
+ else: pickup crisp.nib;
+ pos5'(shaved_stem, 0);
+ rt x5'r = fine.rt x5r;
+ y5' = y5;
+ pos10(shaved_stem, 0);
+ x10 = x5';
+ y10 = 1/3bh;
+ pos11(.2[vair, stem], 90);
+ x11r = .5[x10r, x12r];
+ bot y11l=-vround .5oo;
+ pos12(hair, 180);
+ rt x12l = hround(w - .1u);
+ y12 = max(y10, y11 + vair);
+ pos13(hair, 180);
+ x13 = x12;
+ top y13 = max(vround .6bh, top y12);
+ (x', y11l) = whatever[z11r, z12r];
+ x11l := max(x', x10);
+ filldraw stroke z5'e --- z10e ... z11e{right} ... z12e --- z13e;
+ fi % hook
+ else: numeric shaved_stem;
+ shaved_stem = hround(stem - stem_corr);
+ pickup tiny.nib;
+ pos5'(shaved_stem, 0);
+ rt x5'r = fine.rt x5r;
+ y5' = y5;
+ pos10(shaved_stem, 0);
+ x10 = x5';
+ bot y10 = 0;
+ filldraw stroke z5'e -- z10e;
+ fi % base of stem
+ set_letter_join(a, x3 if serifs: + .25u fi, .5w#);
+ penlabels(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13);
+end_letter;
+
+input vnacomp;
+
+endinput;