diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
commit | e0c6872cf40896c7be36b11dcc744620f10adf1d (patch) | |
tree | 60335e10d2f4354b0674ec22d7b53f0f8abee672 /fonts/vicentino/kraml/vclower.mf |
Initial commit
Diffstat (limited to 'fonts/vicentino/kraml/vclower.mf')
-rw-r--r-- | fonts/vicentino/kraml/vclower.mf | 367 |
1 files changed, 367 insertions, 0 deletions
diff --git a/fonts/vicentino/kraml/vclower.mf b/fonts/vicentino/kraml/vclower.mf new file mode 100644 index 0000000000..4816a985b2 --- /dev/null +++ b/fonts/vicentino/kraml/vclower.mf @@ -0,0 +1,367 @@ +% VCLOWER - lower characters for vicentino font +% w. kraml, 1991 + +% lower case: +slant := lowerslant; +currenttransform := identity slanted slant; + +beginchar("a", 2tw#+sw#, xh#, 0); "the letter a"; +pickup lower_pen; +x1=x2=x7=w-tw; top.y1=top.y5=h; +rt x3=w; y3=th; bot y6=bot y2=0; y7=3/4h; +x5=1.75tw; x6=1.5tw; +path rightstem; rightstem = z1..tension6.7 ..z2..tension2..{dir40}z3; +z4 = rightstem horintersection .7h; +draw if modern: subpath(0,1.2) of fi rightstem; +draw z4..tension3..z5..tension2.5..z6{right}..tension1.75..{up}z4; +end_char; + +beginchar("b", 2tw#+sw#, ah#, 0); "the letter b"; +pickup lower_pen; +x2=x3=tw+.25s; x2-x1=halfser; top.y2=h; bot.y3=1.667th; +z2-z1=whatever*dir40; +path stem, loop; stem = z2{curl0}..{dir275}z3; +z4 = stem horintersection y1; +draw stem; +if modern: else: ltopserif(z1,z2,z4); fi +x5=x8=w/2; top.y5=xh; bot.y8=0; +z6 = stem horintersection xh/2; +y7=y6; rt.x7=w-2/3s; +loop = z6{up}..z5..tension.9..z7..z8..{dir95}z3; +draw loop; +end_char; + +beginchar("c", sw#+tw#, xh#, 0); "the letter c"; +pickup lower_pen; +numeric dev, axis; dev=.5s; axis=.5sw+.5tw+.5s; +rt x1=2axis-.5s; lft x3=.5s; +x2-dev=x4+dev=axis; +y1-dev=y3+dev=.52h; +top.y2=h; bot y4=0; +rt.x5+.25s=rt.x6=w-.25s; y5=3/4h; y6=th; +path p,q ; p= superellipse(z1,z2,z3,z4,0.73); +q= z5..{left}z2 & subpath(2,6) of p & z4{right}..{dir36}z6; +draw q; +end_char; + +beginchar("d", 2tw#+sw#, ah#, 0); "the letter d"; +pickup lower_pen; +x1-.5s=x2=x7=w-tw; top.y1=h; top.y5=xh; +rt x3=w; y3=th; bot y6=bot y2=0; +x5=1.75tw; x6=1.55tw; +path rightstem; rightstem = z1..tension6.7 ..z2..tension2..{dir40}z3; +z4 = rightstem horintersection .8xh; +draw if modern: subpath(0,1.2) of fi rightstem; +x1-x8=halfser; z1-z8=whatever*dir40; +z9 = rightstem horintersection y8; +if modern: else: ltopserif(z8,z1,z9); fi +draw z4..tension2..z5..tension2..z6{right}..tension1.75..{up}z4; +end_char; + +beginchar("e", sw#+tw#, xh#, 0); "the letter e"; +pickup lower_pen; +numeric dev, axis; dev=.5s; axis=.5sw+.5tw+.5s; +rt x1=2axis-.5s; lft x3=.5s; +x2-dev=x4+dev=axis; +y1-dev=y3+dev=.52h; +top.y2=h; bot y4=0; +rt.x5+.25s=rt.x6=w-.25s; y5=3/4h; y6=th; +path p,q ; p= superellipse(z1,z2,z3,z4,0.73); +z7 = (subpath(2,6) of p) horintersection .425h; +q= z7{dir18}..tension1.25.. + z5..{left}z2 & subpath(2,6) of p & z4{right}..{dir36}z6; +draw q; +end_char; + +beginchar("f", 3.2tw#, ah#, dh#); "the letter f"; +pickup lower_pen; +x2-.8s=x3+.8s=w/2+.1s; x1=w+0.5s; rt.x4=-.25s; +top.y2+.75s=top.y1+s=h; bot.y3=-dh+s; bot.y4=-dh; +y5=y6=xh-th; lft.x5=1/3s; x6=w+.1s; +path stem; +stem = z1{dir105}..tension1.2..z2..tension 2.25.. + z3{dir240}..if modern: else: {dir145}fi z4; +draw if modern: subpath(0,2.6) of fi stem; +draw z5--z6; +end_char; + +beginchar("g", 2tw#+sw#, xh#, dh#); "the letter g"; +pickup lower_pen; +x1=x2=w-.8tw; top.y1=top.y5=top.y1'=h; +rt.x1'=w-.25s; +bot y6=bot y2=0; +x5=1.75tw; x6=1.5tw; lft.x9=if modern:s else: -.2s fi; +x8= if modern: w-.78tw else: w-1.5s fi; +bot.y8-s = bot.y9 = if modern: -dh+1.5s else: -dh+s fi; +path rightstem, rightstemtrial; +rightstemtrial = z1'{dir205}..tension2.1..z2..tension1.8..z8.. + if modern: tension1.1 else: tension1.56 fi + ..z9..{dir36}z6; +z4 = rightstemtrial horintersection 3/4h; +top.z6'= (subpath(2,4) of rightstemtrial) horintersection -.2s; +z6''=z6'-(.33s,0); +rightstem=z1'{dir205}..tension2.1..z2..tension1.8..z8.. + if modern: tension1.1 else: tension1.56 fi + ..z9..{dir36}z6''; +draw subpath(0, if modern:3.275 else: 4 fi) of rightstem; +draw z4..tension3..z5..tension2.5..z6{right}..tension1.75..{dir80}z4; +end_char; + +beginchar("h", 2tw#+sw#, ah#, 0); "the letter h"; +pickup lower_pen; +x2=x3=tw+.25s; x2-x1=halfser; top.y2=h; bot.y3=0; +z2-z1=whatever*dir40; +path stem, loop; stem = z2{curl0}..{dir275}z3; +z4 = stem horintersection y1; +draw stem; +if not.modern: ltopserif(z1,z2,z4); fi +x5=w/2; top.y5=xh; bot.y8=0; x8=x5+.6tw; +z6 = stem horintersection xh/2; +y7=y6; rt.x7=w-2/3s; +x9=x5+.8s; y9=.66th; +loop = z6{up}..z5..tension.9..z7{down}..z8..z9; +draw if modern: subpath(0,3.2) of fi loop; +end_char; + +beginchar("i", 2tw#+.5s#, xh#, 0); "i"; +pickup lower_pen; +x5=x2=x3=w/2; lft.x1=.1s; rt.x4=w-.1s; y1=h-th; top.y2=h; bot y3=0; y4=th; +y5=.5[xh,ah]; +path stem; +stem = z1{dir40}..tension2..z2..tension5..z3..tension2.. + {dir40}z4; +draw if modern: subpath(0.8,2.2) of fi stem; +dot z5; +end_char; + +beginchar("j", 2tw#+.5s#, xh#, dh#); "the letter j"; +pickup lower_pen; +x5=x2=w/2; lft x1=0; x4=w/2-.1s; y1=h-th; top.y2=h; bot.y6=-dh+.33th; +y5=.5[xh,ah]; bot.y4=-dh+1.1th; x6=0.1s; +path stem; +stem = z1{dir40}..tension2..z2..tension4.5.. + z4..tension.825..{dir133.5}z6; +draw if modern: subpath(0.8, 2.72) of fi stem; +dot z5; +end_char; + +beginchar("k", 2tw#+sw#, ah#, 0); "the letter k"; +pickup lower_pen; +x2=x3=tw; x2-x1=halfser; top.y2=h; bot.y3=0; +z2-z1=whatever*dir40; +path stem, loop; stem = z2{curl0}..{dir275}z3; +z4 = stem horintersection y1; +draw stem; +if modern: else: ltopserif(z1,z2,z4); fi +x5=w/2 + .5s; top.y5=xh; +x5'=w-tw; y5'= if modern: .8xh else: .7xh fi; +z6 = stem horintersection 0.45xh; +loop = z6{up}..z5..z5' + if modern:{dir220} else:{dir245} fi + ..tension.825..{dir275}z3; +draw if modern: subpath(1.5,3) of fi loop; +z7 = loop horintersection 7/16xh; +bot.y8=0; top.y9=th; rt.x9=w; lft.x8=w-tw; +draw z7..tension1.75..z8..z9; +end_char; + +beginchar("l", 2tw#+.5s#, ah#, 0); "the letter l"; +pickup lower_pen; +x2=x3=w/2; x2-x1=halfser; rt x4=w-.1s; top y2=h; bot y3=0; y4=th; +z2-z1=whatever*dir40; +path stem; +stem = z2{curl0}..tension7..z3..tension2..{dir40}z4; +draw if modern: subpath(0,1.2) of fi stem; +% top serif +z5 = stem horintersection y1; +if modern: else: ltopserif(z1,z2,z5); fi +end_char; + +beginchar("m", 2tw#+2sw#, xh#, 0); "the letter m"; +pickup lower_pen; +x2=x3=tw; x4=x5=tw+sw; x6=x7=w-tw; lft.x1=0.1s; rt.x8=w-.1s; +top.y2=top.y4=top.y6=h; bot.y3=bot.y5=bot.y7=0; +y1=h-th; y8=th; +path lstem, mstem, rstem; +lstem=z1{dir40}..tension2..z2..tension7..{curl0}z3; +mstem=z3{dir86}..tension1.9..z4{dir-30}..tension6..{curl0}z5; +rstem=z5{dir86}..tension1.9..z6{dir-30}..tension6..z7..tension2..{dir40}z8; +draw if modern: subpath(0.8,2) of fi lstem; +draw mstem; +draw if modern: subpath(0,2.2) of fi rstem; +end_char; + +beginchar("n", 2tw#+sw#, xh#, 0); "the letter n"; +pickup lower_pen; +x2=x3=tw; x4=x5=w-tw; lft.x1=0.1s; rt.x6=w-.1s; +top.y2=top.y4=h; bot.y3=bot.y5=0; +y1=h-th; y6=th; +path lstem, rstem; +lstem = z1{dir40}..tension2..z2..tension7..{curl0}z3; +draw if modern: subpath(.8,2) of fi lstem; +rstem = z3{dir86}..tension1.9..z4{dir-30}..tension6..z5..tension2..{dir40}z6; +draw if modern: subpath(0,2.2) of fi rstem; +end_char; + +beginchar("o", sw#+tw#+s#, xh#, 0); "the letter o"; +pickup lower_pen; +numeric dev; dev=.5s; +rt x1=w-.5s; lft x3=0+.5s; +x2-dev=x4+dev=w/2; +y1-dev=y3+dev=.52h; +top.y2=h; bot y4=0; +draw superellipse(z1,z2,z3,z4,0.73); +end_char; + +beginchar("p", 2tw#+sw#, xh#, dh#); "the letter p"; +pickup lower_pen; +x1=x2=tw; y1=h+s; bot.y2=-dh; +lft.x3=0; y3=h-th; top.y4=h; x4=x5=.52w; bot.y5=0; +rt.x4'=w-.5s; y4'=.525h; +path stem, bowl; +stem = z1{curl.0}..tension7..{dir-15}z2; +z6 = stem horintersection 1.4th; +draw if modern: subpath(0,.95) of fi stem; +bowl=z3{dir35}...z4{right}..z4'{down}..z5{left}..{dir100}z6; +draw if modern: subpath(0.15,4) of fi bowl; +labels(2', 4'); +end_char; + +beginchar("q", 2tw#+sw#, xh#, dh#); "the letter q"; +pickup lower_pen; +x1=x2=w-tw; top.y1+.25th=top.y5=h; +bot y6=0; bot.y2=-dh; +x5=1.5tw; x6=1.25tw; +path rightstem; rightstem = z1{curl.0}..tension7..{dir-15}z2; +draw if modern: subpath(0,.95) of fi rightstem; +draw z1..tension2.1..z5..tension2.2..z6{right}..tension1.7..{up}z1; +end_char; + +beginchar("r", tw#+sw#+.5s#, xh#, 0); "r"; +pickup lower_pen; +x2=x3=tw; bot y3=0; top.y2=top.y5=h; +lft x1=0.1s; y1=h-th; y4=h-1.25th; rt.x4=w-.15s; x5=w-.7tw; +path lstem, rstem; +lstem=z1{dir40}..tension2..z2..tension7..{curl0}z3; +rstem=z3{dir86}..tension2..z5{dir-30}..tension1.1..z4; +draw if modern: subpath(0.8,2) of fi lstem; +draw rstem; +end_char; + +beginchar("s", tw#+sw#, xh#, 0); "the letter s"; +pickup lower_pen; +x1=x2=w/2; top.y1=h; bot.y2=0; +x3=.75tw; rt.x4=w-.5s; y3=.76h; y4=.3h; +x5=w-.7tw; lft.x6=.6s; y5=y3+.55th; y6=y4-3/4th; +path trial,p; +trial = z3{down}..tension1.1..{down}z4; +z7 = trial intersectionpoint (z6{up}..{up}z5); +p = z7..tension1.3..z5..z1{left}..z3{down}..tension1.1.. +z4{down}..z2{left}..z6..tension2.5..cycle; +draw subpath if modern:(.77,6.11) else: (.75,6.23) fi of p; +end_char; + +beginchar("t", 2.5tw#, xh#, 0); "the letter t"; +pickup lower_pen; +x1=x2=w/2; rt.x3=w-.1s; y1=h+s; bot.y2=0; y3=th; +y4=y5=xh-th; lft.x4=0.25s; x5=x3; +path stem; +stem=z1{curl0}..tension7..z2..tension2..{dir40}z3; +draw if modern: subpath(0,1.6) of fi stem; +draw z4--z5; +end_char; + +beginchar("u", 2tw#+sw#, xh#, 0); "the letter u"; +pickup lower_pen; +x2=x3-.5s=tw; x4=x5=w-tw; lft.x1=0.1s; rt.x6=w-.1s; +top.y2=top.y4=h; bot.y3=bot.y5=0; +y1=h-th; y6=th; +path lstem, rstem; +lstem=z1{dir40}..tension1.5..z2..tension5..z3{dir-30}..tension1.9..{dir86}z4; +rstem=z4{curl0}..tension7..z5..tension2..{dir40}z6; +draw if modern: subpath(.8,3) of fi lstem; +draw if modern: subpath(0,1.2) of fi rstem; +end_char; + +beginchar("v", 2tw#+sw#, xh#, 0); "the letter v"; +pickup lower_pen; +x2=tw; x4-x5=2/3tw; +lft.x1=0; rt.x4=w-2/3tw; x3=.45[x1,x4]; +top.y2=top.y4=h; y1=y5=h-th; bot.y3=0; +path stem; +stem = z1..tension2..z2{right}..tension6.7.. + z3{right}..tension2..z4{left}..tension1.5..z5; +draw if modern: subpath(.8,3.2) of fi stem; +end_char; + +beginchar("w", 3tw#+2sw#-2s#, xh#, 0); "the letter w"; +pickup lower_pen; +x2=tw; x7-x8=2/3tw; +lft.x1=0; rt.x7=w-2/3tw; x3=.45[x1,x4]; +x7-x4=x6-x3=x4-x2; +top.y2=top.y4=top.y7=h; y1=y8=h-th; bot.y3=bot.y6=0; +path lstem, rstem; +lstem=z1..tension2..z2{right}..tension6.7.. + z3{right}..tension2.2..z4{dir130}; +rstem=z4{right}..tension6.7..z6{right}..tension2..z7{left}..tension1.5..z8; +draw if modern: subpath(.8,3) of fi lstem; +draw if modern: subpath(0,2.2) of fi rstem; +end_char; + +beginchar("x", 2tw#+sw#+.5s#, xh#, 0); "the letter x"; +pickup lower_pen; +lft.x1-.3s=lft.x5=0; x2=x6+.75s=tw+.1s; +x7-.5s=w-tw; rt.x8=w-.5s; rt.x4=w-.1s; x3=w-tw; +top.y2=top.y7=h; y1=y8=h-th; +y5=th; y4=th; 0=bot.y6=bot.y3; +path nwso, swno; +nwso=z1{dir42}..tension1.75..z2..tension3..{right}z3..tension2..z4; +swno=z5..tension1.7..z6..tension3.3..z7..tension1.7..z8; +draw if modern: subpath(.8,2.2) of fi nwso; +draw if modern: subpath(.8,2.2) of fi swno; +end_char; + +beginchar("y", 2tw#+sw#, xh#, dh#); "the letter y"; +pickup lower_pen; +lft.x1=0; rt.x4=w-.4tw; x2=.8tw; +lft.x6=0; x5=x6+.75s; +top.y2=h; top.y4=h+.17s; y1=h-th; bot.y5=-dh; +y6=-dh+th; +path rstem, lstem; +rstem = z4{dir-35}..tension3.55..z5{dir155}..tension1.2..z6; +z3=rstem horintersection -.55s; +lstem = z1{dir42.5}..tension1.75..z2..tension3.4..z3; +draw if modern: subpath(0,1.2) of fi rstem; +draw if modern: subpath(.8,2) of fi lstem; +end_char; + +beginchar("z", 2tw#+sw#-.5s#, xh#, 0); "the letter z"; +pickup lower_pen; +lft.x1=lft.x4=0.175tw; rt.x3+.275tw=x6+.5tw=w; +x2=1.1tw; x5=w-.5tw; +top.y2=top.y3=h; y1=h-1.225th; bot.y4=bot.y5-1/3s=0; +y6=2th; +path stem; +stem=z1{dir38}...z2.. + if modern: tension 1.2 else: tension.9 fi .. + {dir40}z3 & z3..tension6.. {dir265}z4 & + z4{dir40}..tension1.2..z5{dir46}..z6; +draw if modern: subpath(.25,4.5) of fi stem; +end_char; + +beginchar(char 25, 2.1tw# +sw#, ah#, dh#); "the german ss ligature"; +pickup lower_pen; +x2-.8s=x3+.8s=1.05tw; x1=w-.85s; rt.x4=-.2s; +top.y2=h-th; top.y1=h-1.6th; bot.y3=-dh+s; bot.y4=-dh; +path lpart, rpart; +lpart=z1{dir105}..tension1.2..z2..tension2.25.. + z3{dir240}..if not.modern: {dir145}fi z4; +lft.x7=.8sw; rt.x6=w-0.75s; +lft.x5=sw; x6'=.5[x6,x7]; bot.y6'=0; +y5=xh-th; y6=y7=1.4th; +rpart=z1{dir285}..z5%{down} +..tension1.25..z6..z6'..{dir120}z7; +draw if modern: subpath(0,2.6) of fi lpart; +draw if modern: subpath(0,3.75) of fi rpart; +end_char; + |