diff options
Diffstat (limited to 'Master/texmf-dist/fonts/source/vntex/vnr/vnlar.mf')
-rw-r--r-- | Master/texmf-dist/fonts/source/vntex/vnr/vnlar.mf | 112 |
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; |