From e0c6872cf40896c7be36b11dcc744620f10adf1d Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Mon, 2 Sep 2019 13:46:59 +0900 Subject: Initial commit --- fonts/vicentino/kraml/vcupper.mf | 389 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 389 insertions(+) create mode 100644 fonts/vicentino/kraml/vcupper.mf (limited to 'fonts/vicentino/kraml/vcupper.mf') diff --git a/fonts/vicentino/kraml/vcupper.mf b/fonts/vicentino/kraml/vcupper.mf new file mode 100644 index 0000000000..e2b1ad79bb --- /dev/null +++ b/fonts/vicentino/kraml/vcupper.mf @@ -0,0 +1,389 @@ +% upper case: +slant := upperslant; +currenttransform := identity slanted slant; + +beginchar("A", 2.75sw#, ch#, 0); "the letter A"; +pickup lower_pen; +lft.x1=w-rt.x5=0; x2=1.25tw; w-x4=tw; +x3= if modern: .56[x2,x4] +else: x4-(y3-y4)*upperslant +fi; +top.y1=bot.y2=bot.y4=0; top.y3=h; y5=3/4th; +path p; +p=z1{right}..z2..tension3..z3---z4...{dir35}z5; +draw if modern: subpath(0.5,3.37) of fi p; +z7=(subpath(2,3) of p) horintersection 1/3h; +y6=y7; rt.x6=x2+.25s; +draw if modern: subpath(0.18,1) of fi z6..z7; +end_char; + +beginchar("B", 2.25sw#, ch#, 0); "the letter B"; +pickup lower_pen; +x1=x2+tw=1.5tw; x3=w-2.35tw; x4=.53[x2,x3]; +x1'=x1''=tw; y1'=h-4.5th; y1''=4.5th; +top.y1=h; y2=-th; top.y3=h; y4=.56h; bot.y5=0; +z5=(z1''{down}...z2{dir215}) horintersection y5; +path curve; +curve=z1{dir215}...z1'{down}..z1''{down}..z5..z2{dir215} + ..z3{right}..{left}z4 & z4{right}..tension.75..{dir155}z5; + +draw subpath(0.1,3) of curve; +draw if modern: subpath(4.9,7) else: subpath(4.87,7) fi of curve; +end_char; + +beginchar("C", 2.75sw#, ch#, 0); "the letter C"; +pickup lower_pen; +lft.x1=0; x4=tw; x2-3s=x3-2s=x5=w/2; x6=w-.5tw; +y1=y2=.7h; y3=h; y5=0; y6=1.5th; y4=.5h; +path curve; +curve=z1{dir35}..tension.9..z2{dir35}..tension.85..z3{left}..z4..z5{right}..z6; +draw if modern: subpath(1.25,5) else: subpath(1,5) fi of curve; +end_char; + +beginchar("D", 2.5sw#, ch#,0); "the letter D"; +pickup lower_pen; +x1=x2+tw=x1'+.5tw; x3=x1+1.1tw; rt.x4=w-.25s; +x1'=x1''=1.1tw; y1'=h-4.25th; y1''=4.25th; +top.y1=h; y2=-th; top.y3=h; y4=.53h; bot.y5=0; +z5=(z1''{down}...z2{dir215}) horintersection y5; +lft.z3'=(.1s, h-th); +path stem, curve; +stem=z1{dir215}...z1'{down}..z1''{down}..z5; +curve=z3'{dir36}..z1..z3...z4{down}..tension.85..{dir164}z5; +draw stem; +draw if modern: subpath(.25,4) of fi curve; +end_char; + +beginchar("E", 2.5sw#, ch#, 0); "the letter E"; +pickup lower_pen; +lft.x1=0; x4=tw; x2-3s=x3-2s=x5=w/2; x6=w-.5tw; +y1=y2=.7h; y3=h; y5=0; y6=1.5th; y4=.5h; +path curve; +curve=z1{dir35}..tension.9..z2{dir35}..tension.85..z3{left}..z4..z5{right}..z6; +draw if modern: subpath(1.25,5) else: subpath(1.15,5) fi of curve; +y7=y8; x7=.5tw; y7=.52h; +x8=w-1.25tw; +draw z7--z8; +end_char; + +beginchar("F", 2.5sw#, ch#, 0); "the letter F"; +pickup lower_pen; +x1=x2=.475w; y2=0; +lft.x3=0; y3=-2/3dh; top.y1=h; +path p; +p=z1..z2{down}...{dir150}z3; +lft.x4=.2tw; x5=.26w; x6=.8w; rt.x7=w-.1s; +y4=h-4.5th; top.y5+.15s=top.y6=h; y7=h; +path curve; +curve=z4{dir125}..z5..tension1.25..z1---z6...z7; +draw if modern: subpath(0,1.7) of fi p; +draw if modern: subpath(.6,3.65) of fi curve; +y7'=y8; +x7'=w/3; y7'=.55[y3,y1]; +x8=w-.77tw; +draw if modern: subpath(.09,.9) of fi (z7'--z8); +end_char; + +beginchar("G", 2.75sw#, ch#, 0); "the letter G"; +pickup lower_pen; +lft.x1=0; x4=3/4tw; x2-3s=x3-2s=x5=w/2; x6=w-.7tw; +x8=x6; x7-s=w/2; +y7=y8-.18th=2/3xh; +y1=y2=.7h; y3=h; y5=0; y6=1.5th; y4=.48h; +path curve, second; +curve=z1{dir35}..tension.9..z2{dir35}..tension.85..z3{left}..z4..z5{right}..z6; +second= z7{dir14}...z8 softjoin z8{dir260}..{down}z6; +draw if modern: subpath(1.3,5) else: subpath(1.15,5) fi of curve; +draw second; +end_char; + +beginchar("H", 2.65sw#, ch#, 0); "the letter H"; +pickup lower_pen; +x1=x2=x3+.75s=1.5tw; y2=3th; +bot.y3=0; top.y1=h; +y1'=h-1.25th; z1-z1'=whatever*dir25; +path p,q; +p=z1'..tension11..z1{down}..z2{down}...{dir200}z3; +draw if modern: subpath(.75,2.95) of fi p; +rt.x4=w-1/3s; x5+1/2s=x6=w-1.2tw; rt.x7=w-.5s; +top.y4=h; y5=.52h; bot.y6=0; y7=th; +q=z4{dir169}...z5{down}...{right}z6...{dir35}z7; +draw if modern: subpath(.12,2.2) of fi q; +y8=y5; x8=.8tw; draw if modern: subpath(.05,1) of fi (z8--z5); +if not.modern: +cap_bot_serif(x2); +fi +end_char; + +beginchar("I", 1.5sw#, ch#, 0); "the letter I"; +pickup lower_pen; +x1=x2=x3+.75s=w/2 +.25s; y2=3th; +bot.y3=0; top.y1=h; +path p; +p=z1..z2{down}...{dir200}z3; +draw if modern: subpath(0,1.95) of fi p; +if not.modern: +cap_top_serif(x2,1.18tw); +cap_bot_serif(x2); +fi +end_char; + +beginchar("J", 1.5sw#, ch#, 0); "the letter J"; +pickup lower_pen; +x1=x2=w/2 +.25s; y2=0; rt.x3=-s; +y3=-2/3dh; top.y1=h; +path p; +p=z1..z2{down}...{dir150}z3; +draw if modern: subpath(0,1.95) of fi p; +if not.modern: +cap_top_serif(x2,1.18tw); +fi +end_char; + +beginchar("K", 2.5sw#, ch#, 0); "the letter K"; +pickup lower_pen; +x1=x2=x3+.75s=1.5tw; y2=3th; +bot.y3=0; top.y1=h; +y1'=h-1.25th; z1-z1'=whatever*dir25; +path p; +p=z1'..tension11..z1{down}..z2{down}...{dir200}z3; +draw if modern: subpath(0.7,2.95) of fi p; +pickup lower_pen; +x4=w-tw; lft.x5=rt.x2; x6=w+1.5tw; +y4=h; y5=.53h; y6=-1.33th; +path q; +q=z4{dir-80}..{dir225}z5 & z5{dir-49}..tension if modern: 1.4 else: 1.2 fi + ..{dir35}z6; +draw if modern: subpath(0.04,1.66) of fi q; +if not.modern: +cap_bot_serif(x2); +fi +end_char; + +beginchar("L", 2.25sw#, ch#, 0); "the letter L"; +pickup lower_pen; +x3'-.5s=x4'=1.1tw; x2-s=x3=w/2+1s; lft.x5=0.5s; x6=w-.5tw; x6'=w-2tw; +y2=.7h; y3=h; y5=bot.y5'=bot.y6'=0; +y6=1.5th; y4'=2th; y3'=h-2.5th; +path p, q; +p=z2{dir35}..z3{left}..tension.95..z3'.. + tension if modern: 1.9 else: 1.5 fi ..z4'..z5{dir205}; +z5'=p horintersection y5'; +q = z5'{dir if modern: 10 else: 15 fi}..z6'{right}..{dir80}z6; +draw if modern: subpath(1.33,3.8) else: subpath(0,4) fi of p; +draw if modern: subpath(0,1.8) of fi q; +labels(3',4'); +end_char; + +beginchar("M", 3.5sw#, ch#, 0); "the letter M"; +pickup lower_pen; +lft.x1=.1s; x3=w/2+1/4s; x2-.5s=w-x4=1.8tw; rt.x6=w-.15s; x5=w-tw; +bot.y1=0; bot.y3= +bot.y5=0; y6=th; top.y2=y4=h; +x1'=1.15tw; y1'=th; +z2'=(1.3tw,h); +path p,q; +p = z1{dir-55}..z1'..tension1.4..{dir78}z2; +q = z2'{dir40}.. z2{dir-62}..tension if modern: 1.9 else: 1.7 fi ..z3{down} + & z3{dir89}..tension1.15..z4{dir70} + & z4{dir280}..tension if modern: 6 else: 5 fi ..z5{right}..z6; +draw if modern: subpath(.36,2) of fi p; +draw if modern: subpath(.8,4.3) of fi q; +end_char; + +beginchar("N", 2.75sw#, ch#, 0); "the letter N"; +pickup lower_pen; +lft.x1=.2s; x4=w; x2=1.5tw; x3=w-1.2tw; +bot.y1=0; bot.y3=.66s; top.y2=y4=h+.1s; +x1'=1.25tw; y1'=.5th; z2'=(.75tw,h); +bot.rt.z3'=(w,0); z4'=(w-1.15tw, h-1.2th); +path p,m,mt,q; +p = z1{dir-56}..z1'...{up}z2 ; +q = z3{dir96}..tension2..z4'...{dir-22}z4; +m = z2'{dir40} .. z2{dir-55}..tension if modern: 1.15 else: 1.05 fi ..z3 + ..{dir30}z3'; +draw if modern: subpath(.67,2) of fi p; +draw if modern: subpath(.83,2.5) of fi m; +draw if modern: subpath(0,1.4) of fi q; +end_char; + +beginchar("O", 2.75sw#, ch#, 0); "the letter O"; +pickup lower_pen; +numeric dev; dev=3/4s; +rt.x1=w-s; lft.x3=s; +x2-dev=x4+dev=w/2; +y1-dev=y3+dev=.52h; +top.y2=h; bot.y4=0; +draw superellipse(z1,z2,z3,z4,.74); +end_char; + +beginchar("P", 2.25sw#, ch#, 0); "the letter P"; +pickup lower_pen; +x1=x2=x3+.75s=1.5tw; y2=3th; +bot.y3=0; top.y1=h; +path p; +p=z1..z2{down}...{dir200}z3; +lft.x4=.1s; x5=.55w; x6=w-.6tw; lft.x7=rt.x1+.1s; +y4=h-th; top.y5=h; y6=.74h; y7=.45h; +path curve; +curve=z4{dir36}..z1..z5..{down}z6..{dir158}z7; +draw p; +draw if modern: subpath(.55,4) of fi curve; +if not.modern: +cap_bot_serif(x2); +fi +end_char; + +beginchar("Q", 2.75sw#, ch#, 0); "the letter Q"; +pickup lower_pen; +numeric dev; dev=3/4s; +rt.x1=w-s; lft.x3=s; +x2-dev=x4+dev=w/2; +y1-dev=y3+dev=.52h; +top.y2=h; bot.y4=0; +path p,q; +p=superellipse(z1,z2,z3,z4,.74); +z5 = (1.2tw,-th); z4'=(x4,0); +z6 = (w+1.5tw,-1.33th); q=z5{dir30}..z4'{right}..{dir35}z6; +draw p; draw if modern: subpath(.35,1.7) of fi q; +end_char; + +beginchar("R", 2.5sw#, ch#, 0); "the letter R"; +pickup lower_pen; +x1=x2=x3+.75s=1.5tw; y2=3th; +bot.y3=0; top.y1=h; +path p; +p=z1..z2{down}...{dir200}z3; +lft.x4=0; x5=.55w; x6=w-1.33tw; lft.x7=rt.x1+.1s; +y4=h-th; top.y5=h; y6=.77h; y7=.52h; +x9=w+ if twisted: .3 else: 1.5 fi tw; +y9=if twisted: 1.95th else: -1.33th fi; +x7'= if twisted:.5 else:.36 fi[x7,x9]; +y7'= if twisted: .77 else:.36 fi[y7,y9]; +path curve; +curve=z4..z1..z5..{down}z6..z7 & z7{dir-10}..if modern: tension.8.. fi + z7'..if twisted: tension.77..{dir85} else:{dir36} fi z9; +draw p; +draw if modern: if twisted: subpath(.55,5.7) else: subpath(.55,5.4) fi of fi +curve; +if not.modern: cap_bot_serif(x2); fi +end_char; + +beginchar("S", 2.35sw#, ch#, 0); "the letter S"; +pickup lower_pen; +x1=x2=w/2; if modern: top. else: fi y1=h; bot.y2=0; +x3=1.25tw; rt.x4=w-.5s; y3=.78h; y4=.3h; +x5=w-1.2tw; lft.x6=0.75s; y5=y3+1.15th; y6=y4-1.75th; +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.5sw#, ch#, 0); "the letter T"; +pickup lower_pen; +x1=x2=x3+.75s=.56w; y2=3th; +bot.y3=0; top.y1=h; +path p; +p=z1..z2{down}...{dir200}z3; +lft.x4=.2tw; x5=.26w; x6=.8w; rt.x7=w-.1s; +y4=h-4.5th; top.y5+.15s=top.y6=h; y7=h; +path curve; +curve=z4{dir125}..z5..tension1.25..z1---z6...z7; +draw p; +draw if modern: subpath(.62,3.53) of fi curve; +if not.modern: +cap_bot_serif(x2); +fi +end_char; + +beginchar("U", 2.6sw#, ch#, 0); "the letter U"; +pickup lower_pen; +x3=2.1tw; x4=x5=w-1.1tw; x1=if modern: 1.5 else:2 fi tw; rt.x6=w; +lft.x1'=s; y1'=.4h; +top.y4=h; bot.y3=bot.y5=0; +top.y1=h; y6=1.25th; +x4'=x4-.25s; y4'=xh-s; +y2'=h-.85th; z4-z2'=whatever*dir22; +path lstem, rstem; +lstem=z1..{down}z1'..z3{right}..tension1.2..{dir80}z4'; +rstem=z2'..tension11..z4{down}..z4'..tension5.5..z5{right}.. + tension1.2..{dir36}z6; +draw lstem; +draw if modern: subpath(.67,3.3) of fi rstem; +if not.modern: cap_top_serif(x1-.2tw,.2tw); fi +labels(4'); +end_char; + +beginchar("V", 2.6sw#, ch#, 0); "the letter V"; +pickup lower_pen; +x4-x5=.85tw; +x1=if modern:1.25 else: 2 fi tw; rt.x4=w-.85tw; x3=1/3[x1,x4]; +top.y4=h; top.y1=h; y5=h-1.5th; bot.y3=0; +path stem; +stem =z1{dir200}..tension3.. + z3{right}..tension2.5..z4{left}..tension1.5..z5; +draw if modern: subpath(0,2.1) of fi stem; +if not.modern: cap_top_serif(x1-.2tw,.2tw); fi +end_char; + +beginchar("W", 3.25sw#, ch#, 0); "the letter W"; +pickup lower_pen; +x7-x8=.9tw; +x1=if modern:1.25 else: 2 fi tw; rt.x7=w-.85tw; x3=1/3[x1,x4]; +x7-x4=x6-x3=x4-x1; +top.y7=top.y1=h; y8=h-1.5th; bot.y3=bot.y6=0; y4=xh+s; +path lstem, rstem; +lstem=z1{dir200}..tension3.. + z3{right}..tension2.25..z4{dir125}; +rstem=z4{dir-10}..tension6..z6{right}..tension2.5..z7{left}..tension1.5..z8; +draw if modern: subpath(0,2.9) of fi lstem; +draw if modern: subpath(0.1,2.15) of fi rstem; +if not.modern: cap_top_serif(x1-.2tw,.2tw); fi +end_char; + +beginchar("X", 2.65sw#, ch#, 0); "the letter X"; +pickup lower_pen; +x1=1.3tw; lft.x5=.5s; x6=1tw; lft.x1'=.275tw; +x7=w-1.25tw; rt.x8=w-s; rt.x4=w-1/3s; x3=w-1.25tw; +top.y7=h; top.y1=h; y8=h-1.25th; y1'=h-th; +y5=y4=1.25th; 0=bot.y6=bot.y3; +path nwso, swno; +nwso=z1'..z1{right}..tension if modern:8 else: 6 fi + ..{right}z3...{dir35}z4; +swno=z5..tension2..z6{right}..tension2.5..{right}z7...{dir-65}z8; +draw if modern: subpath(.7,2.3) of fi nwso; +draw if modern: subpath(.8,2.2) of fi swno; +end_char; + +beginchar("Y", 2.5sw#, ch#, 0); "the letter Y"; +pickup lower_pen; +x2=w/2; lft.x1=w-rt.x3=.25s; +bot.y2=0; top.y1=top.y3=h; +z8=(x2,.4xh); +path lp,rp; +lp=z1{dir35}..tension1.625..{dir267}z8---z2; +rp=z8{up}..tension1.45..{dir-20}z3; +draw if modern: subpath(.08,2) of fi lp; +draw if modern: subpath(0,.9) of fi rp; +if not.modern: cap_bot_serif(x2); fi +end_char; + +beginchar("Z", 2.35sw#, ch#, 0); "the letter Z"; +pickup lower_pen; +lft.x1=lft.x4=0.25tw; rt.x3+1/3tw=w; +x2=1.25tw; +top.y2=top.y3=h; y1=h-1.5th; bot.y4=0; +z6=(w+1.5tw, -1.33th); +path stem; +stem=z1{dir38}...z2.. + if modern: tension 1.2 else: tension.85 fi .. + {dir40}z3 & z3..tension6.. {dir265}z4 & + z4{dir35}..{dir35}z6; +draw if modern: subpath(.25,3.77) of fi stem; +y7=y8=.55h; x7+.75tw=x8-.925tw=w/2; +draw z7--z8; +end_char; + -- cgit v1.2.3