summaryrefslogtreecommitdiff
path: root/fonts/vicentino/kraml/vclig.mf
diff options
context:
space:
mode:
Diffstat (limited to 'fonts/vicentino/kraml/vclig.mf')
-rw-r--r--fonts/vicentino/kraml/vclig.mf139
1 files changed, 139 insertions, 0 deletions
diff --git a/fonts/vicentino/kraml/vclig.mf b/fonts/vicentino/kraml/vclig.mf
new file mode 100644
index 0000000000..1a33e7c0c7
--- /dev/null
+++ b/fonts/vicentino/kraml/vclig.mf
@@ -0,0 +1,139 @@
+%%% vclig.mf ligatures for vicentino fonts
+slant := lowerslant;
+currenttransform := identity slanted slant;
+
+beginchar(char12, 5tw#, ah#, dh#); "the fi ligature";
+pickup lower_pen;
+x2-s=x3+.85s=1.63tw; x1=4.15tw; rt.x4=.25s;
+top.y2+.85s=h; bot.y3=-dh+s; bot.y4=-dh;
+top.y1=.5[xh,ah];
+path stem;
+stem = z1{dir45}..tension1.2..z2..tension 2.25..
+ z3{dir240}..if modern: else: {dir145}fi z4;
+draw if modern: subpath(0,2.6) of fi stem;
+% i
+lft.x5=1/3s; y5=xh-1.33th;
+x6=x7=3.93tw; rt.x8=w; top.y6=xh; bot.y7=0; y8=th;
+path ipart;
+ipart = z5...z6{right}..tension7..z7{right}..tension2..
+ {dir40}z8;
+draw if modern: subpath(0.15,2.2) of fi ipart;
+end_char;
+
+beginchar(char11, 5.5tw#, ah#, dh#); "the ff ligature";
+pickup lower_pen;
+x2-.8s=x3+.8s=1.6tw+.1s; x1=3.2tw+0.5s; rt.x4=-.25s;
+top.y2+.75s=top.y1+s=h; bot.y3=-dh+s; bot.y4=-dh;
+x11=x1+2.3tw; x12=x2+2.3tw; x13=x3+2.3tw; x14=x4+2.3tw;
+y11=y1; y12=y2+.2s; y13=y3; y14=y4;
+path lstem, rstem;
+rstem = z11{dir106}..tension1.1..z12..tension2.25..
+ z13{dir240}..if not.modern: {dir145}fi z14;
+z1'=rstem horintersection h-2th;
+lstem = z1'{dir110}..tension1.25..z2..tension 2.25..
+ z3{dir240}..if modern: else: {dir145}fi z4;
+draw if modern: subpath(0,2.75) of fi rstem;
+draw if modern: subpath(0,2.6) of fi lstem;
+lft.x5=1/3s; x6=w+.1s; y5=y6=xh-th;
+draw z5--z6;
+labels(1');
+end_char;
+
+beginchar(char15, 2sw#+2.5tw#, ah#, 0); "the ch ligature";
+pickup lower_pen;
+x2=x3=sw+1.65tw; 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=1.5sw+1.5tw; 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;
+% c:
+numeric dev, axis; dev=.5s; axis=.5sw+.5tw+.33s;
+rt x11=2axis-.5s; lft x13=.5s;
+x12-dev=x14+dev=axis;
+y11-dev=y13+dev=.52xh;
+top.y12=xh; bot.y14=0;
+rt.x15=sw+.66tw; y15=3/4xh;
+path p,q ; p= superellipse(z11,z12,z13,z14,0.73);
+q= z15..{left}z12 & subpath(2,6) of p & z14{right}..{up}z6;
+draw q;
+end_char;
+
+beginchar(char26, 2sw#+.5tw#, xh#, 0); "the ligature ae";
+pickup lower_pen;
+x1=.475w; x2=1tw; x3=.9w; x4=w-1.15tw; rt.x5=w-.25s;
+top.y1=h; bot.y2=bot.y4=0; y5=th; y3=h-1.25th;
+path p;
+p = z1{dir210}..tension2..{right}z2..tension2.2..{up}z3 & z3..tension2..
+ {dir220}z1..tension2..{right}z4..{dir40}z5;
+draw p;
+end_char;
+
+beginchar(char27, 2sw#+tw#+s#, xh#, 0); "the ligature oe";
+pickup lower_pen;
+numeric dev; dev=.5s;
+rt x1=w-sw-.5s; lft x3=0+.5s;
+x2-dev=x4+dev=w/2-sw/2;
+y1-dev=y3+dev=.52h;
+top.y2=h; bot y4=0;
+draw superellipse(z1,z2,z3,z4,0.73);
+% e
+numeric edev, axis; edev=.5s; axis=w-.5sw-.5tw+.5s;
+rt x11=w+.5s; x13=x1;
+x12-edev=x14+edev=axis;
+y11-edev=y13+edev=.52h;
+top.y12=h; bot y14=0;
+rt.x15+.25s=rt.x16=w-.25s; y15=3/4h; y16=th;
+path p,q ; p= superellipse(z11,z12,z13,z14,0.73);
+z17 = (subpath(2,6) of p) horintersection .425h;
+q= z17{dir18}..tension1.25..
+ z15..{left}z12 & subpath(2,6) of p & z14{right}..{dir36}z16;
+draw q;
+end_char;
+
+beginchar(char29, 4.5sw#, ch#, 0); "the ligature AE";
+pickup lower_pen;
+% E
+lft.x1=2sw; x4=2sw+tw; x2-3s=x3-2s=x5=w-1.25sw; 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;
+%A
+lft.x11=1.1s; x12=1.5tw;
+top.y11=bot.y12=0; y13'=h; x13'= 2.5sw;
+z13= (subpath(2,3) of curve) horintersection h-th;
+y8=.43h; x8=w-1.25tw;
+path p;
+p=z8{left}..tension if modern: .89 else: .92 fi..z11{dir-55}..z12{dir65}
+ ..tension1.4..{right}z13'..z13;
+if modern: draw subpath(0.05,.6) of p; draw subpath(1.8,4) of p; else:
+draw p; fi
+end_char;
+
+beginchar(char30, 5sw#-2tw#, ch#, 0); "the ligature OE";
+pickup lower_pen;
+numeric dev; dev=3/4s;
+rt.x1=2.5sw-s; lft.x3=s;
+x2-dev=x4+dev=1.25sw;
+y1-dev=y3+dev=.52h;
+top.y2=h; bot.y4=0;
+draw superellipse(z1,z2,z3,z4,.74);
+% E
+lft.x11=2sw; x14=x1; x12-1.75tw=x13-s=x15-s=w-1.25sw; x16=w-.5tw;
+y11=y12=.7h; top.y13=h; bot.y15=0; y16=1.5th; y14=y1;
+path curve;
+curve=z11{dir35}..tension.9..z12{dir35}..tension.85..z13{left}..
+ z14{down}..z15{right}..z16;
+draw if modern: subpath(1.25,5) else: subpath(1.15,5) fi of curve;
+y17=y18; z17=curve horintersection .55h;
+x18=w-1.25tw;
+draw z17--z18;
+end_char;
+