diff options
Diffstat (limited to 'Master/texmf-dist/fonts/source/public/aramaic-serto/sertofont.mf')
-rw-r--r-- | Master/texmf-dist/fonts/source/public/aramaic-serto/sertofont.mf | 1700 |
1 files changed, 1700 insertions, 0 deletions
diff --git a/Master/texmf-dist/fonts/source/public/aramaic-serto/sertofont.mf b/Master/texmf-dist/fonts/source/public/aramaic-serto/sertofont.mf new file mode 100644 index 00000000000..e468b4b3f49 --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/aramaic-serto/sertofont.mf @@ -0,0 +1,1700 @@ +% Syriac Serto FONT `sertofont.mf' +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Designed and (c) by Johannes Heinecke +% <johannes(dot)heinecke(at)wanadoo(dot)fr> +% Please send any improvements, corrections, suggestions, enhancements etc. +% to the Author! +% +% Version 0.7 as of 29th September 2007 +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% + +input sertomacros; + +%% Endarabeske für beth etc +%def arabesque (suffix $)(expr length) = +% z$aa = (x$, y$-.5basestroke); +% z$ac = (x$, y$+.5basestroke); +% z$ab = (x$-length*hu, y$aa); +% z$ad = (x$-(length-.2)*hu, y$ac); +% z$ae = (x$ab-hu, y$ad+vu); +% fill z$aa--z$ab{left}..{up}z$ae{dir -45}..{right}z$ad--z$ac--cycle; +% labels($aa, $ab, $ac, $ad, $ae); +%enddef; +% +%% baseline, if needed +%def baseline (suffix $)(expr length) = +% z$bz = z$; % to allow several baselines from one point +% z$ba = (x$, y$-.5basestroke); +% z$bc = (x$, y$+.5basestroke); +% z$bb = (x$-length*hu, y$ba); +% z$bd = (x$-length*hu, y$bc); +% fill z$ba--z$bb--z$bd--z$bc--cycle; +% labels($ba, $bb, $bc, $bd); +%enddef; +% +%% dalath/resh dot +%def sertodot (suffix $) (expr size) = +% z$ca = (x$-.3hu, y$+.4vu); penpos$ca(size*basestroke, 45); +% z$cb = (x$+.3hu, y$-.4vu); penpos$cb(size*basestroke, 45); +% penstroke z$ca.e..z$cb.e; +% labels($ca, $cb) +%enddef; +% + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%% Character Definitions: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% Order: alphabetically, isolated-final-medial-initial + +% olaf - isolated +sertochar "olaf - isolated '"; +beginchar(65, 2hu#, 8vu#, 0); + z1 = (.5hu, 0); penpos1(basestroke, 0); + z2 = (.4hu, 2vu); penpos2(.9basestroke, 0); + z3 = (hu, 5vu); penpos3(.5basestroke, 10); + %z4 = (.4hu, 7.5vu); penpos4(basestroke, 45); + z4 = (.4hu, 7.5vu); penpos4(1.2basestroke, 45); + penstroke z1e..z2e..z3e..z4e; + penlabels(range 1 thru 4); +endchar; + +% olaf - final +sertochar "olaf - final '"; +beginchar(66, 2hu#, 8vu#, 0); + %z1 = (2hu, .5vu); penpos1(basestroke, 90); + %z2 = (1.1hu, 1.1vu); penpos2(.9basestroke, 40); + %z3 = (.5hu, 4vu); penpos3(.7basestroke, 0); + %z4 = (.5hu, 8vu); penpos4(.7basestroke, 0); + %z5r = z2l; + %z5l = (0, y2l); + %z6 = (-.3hu, -vu); penpos6(.4basestroke, -45); + %penstroke z1e{left}..z2e..z3e..z4e; + %penstroke z4e..z3e..z5e..z6e; + + z1 = (2hu, .5vu); penpos1(basestroke, 90); + z2 = (x1-1.5hu, 2.5vu); penpos2(basestroke, 0); + z3 = (x2, 4.5vu); penpos3(basestroke, 0); + z4l = z3l + (0, 3.2vu); + z4r = z3r + (0, 3.8vu); + z14l = z13l + (0, 3.8vu); + z14r = z13r + (0, 3.2vu); + + + z6 = (-.8hu, -1.5vu); penpos6(.2basestroke, -45); + + penstroke z4e..z3e..z2e{down}..{right}z1e; + penstroke z2e{down}..z6e; + %penstroke z4e..z3e..z5e..z6e; + penlabels(range 1 thru 6); +endchar; + + +def bethcommon = + z1 = (6hu, .5vu); penpos1(basestroke, -90); + %z2 = (x1+.5hu, 4vu/3); penpos2(basestroke, 30); + z2 = (x1+.5basestroke, 4basestroke/3); penpos2(basestroke, 30); + z4 = (3hu, 3.4vu); penpos4(basestroke, 90); + z5 = (.7hu, 2.5vu); penpos5(.45basestroke, 135); + penstroke z1e{right}..z2e..z4e..z5e; + penlabels(range 1 thru 5); +enddef; + +% beth - isolated +sertochar "beth - isolated b"; +beginchar(67, 8hu#, 4vu#, 0); + bethcommon; + arabesque(1, 5); +endchar; + +% beth - final +sertochar "beth - final b"; +beginchar(68, 8hu#, 4vu#, 0); + bethcommon; + baseline(1, -2); + arabesque(1, 5); +endchar; + +% beth - medial +sertochar "beth - medial b"; +beginchar(69, 8hu#, 4vu#, 0); + bethcommon; + z6 = z1; + baseline(1, 6); + baseline(6, -2); + penlabels(6); +endchar; + +% beth - initial +sertochar "beth - initial b"; +beginchar(70, 8hu#, 4vu#, 0); + bethcommon; + baseline(1, 6); +endchar; + + + +def gammalcommon = + z1 = (2.5hu, 1.25vu); penpos1(basestroke, -135); + z3 = (7.25hu, -2.25vu); penpos3(.6basestroke, -120); + %z4r = z3r; + z5r = z3r; + %z4l = (x4r+1.5hu, y4r); + z5l = (x5r, y5r-.7hu); + z6 = (3.5hu, -1.45vu); penpos6(.8basestroke, 45); + %z7 = (hu, .5vu); + z7l = (hu, -.3hu); + penpos7(.9basestroke, 50); + + penstroke z1e{dir -45}..z3e; + penstroke z3e{dir -32}..z5e; + penstroke z5e{left}..z6e..z7e; + + penlabels(range 1 thru 7); +enddef; + +def gammalarabesque = + z8 = (x7l, 2.5vu); + fill z7l{z7l-z6l}..z8 & z8{dir -100}..{z6r-z7r}z7r--cycle; + penlabels(8) +enddef; +%endinput; +% gamal - isolated +sertochar "gamal - isolated g"; +beginchar(71, 7hu#, 1vu#, 3vu#); + gammalcommon; + gammalarabesque; +endchar; + +% gamal - final +sertochar "gamal - final g"; +beginchar(72, 7hu#, 1vu#, 3vu#); + gammalcommon; + gammalarabesque; + + z9 = (4hu, .5vu); penpos9(basestroke, -90); + baseline(9, -3); + penstroke z9e{left}..z1e; + + penlabels(9); +endchar; + +% gamal - medial +sertochar "gamal - medial g"; +beginchar(73, 7hu#, 1vu#, 3vu#); + gammalcommon; + z8 = (0, .5vu); penpos8(basestroke, 90); + penstroke z7e{z7e-z6e}..{left}z8e; + z9 = (4hu, .5vu); penpos9(basestroke, -90); + baseline(9, -3); + penstroke z9e{left}..z1e; + + penlabels(9); + penlabels(8) +endchar; + + +% gamal - initial +sertochar "gamal - initial g"; +beginchar(74, 7hu#, 1vu#, 3vu#); + gammalcommon; + z8 = (0, .5vu); penpos8(basestroke, 90); + penstroke z7e{z7e-z6e}..{left}z8e; + penlabels(8) +endchar; + + +def dr_isolated_common = + %z1 = (.5hu, -1vu); + z2 = (2.5hu, 2vu); + z3 = (1hu, 4vu); + z4 = (0, 2.5vu); + z5 = (1hu, 1vu); + z1 = (.6hu, -.7vu); + %fill z4{down}..z5..{dir -135}z1 + % & z1{dir 45}..z2{up}..z3{left}..cycle; + fill z4{down}..z5..{dir -115}z1{dir 45}..z2{up}..z3{left}..cycle; + penlabels(range 1 thru 5); + +enddef; + +% dalath - isolated +sertochar "dalath - isolated d"; +beginchar(75, 4hu#, 4vu#, 2vu#); + dr_isolated_common; + z6 = (1hu, y1-1.2vu); + sertodot(6, 1); + penlabels(6); +endchar; + + +def dr_final_common = + z1 = (3.5hu, .5vu); penpos1(basestroke, 90); + z2 = (hu, 1.5vu); penpos2(1.2basestroke, 45); + penstroke z1e{left}..z2e; + + z3 = (x2r, -vu); + %fill z2r{dir -80}..z3 & z3..{dir 130}z2l--cycle; + fill z2r{dir -80}..{right}z1r & z1r--z1l + & z1l{left}..z3 & z3..{dir 130}z2l--cycle; + + penlabels(range 1 thru 3); +enddef; + +% dalath - final +sertochar "dalath - final d"; +beginchar(76, 3.5hu#, 2vu#, 3vu#); + dr_final_common; + z4 = (x3, y3-1.2vu); + sertodot(4, 1); + penlabels(4); +endchar; + + + + + +def heecommon = + z1 = (5.5hu, 0); penpos1(.2basestroke, 0); + z2 = (6hu, 2.8vu); penpos2(.6basestroke, 0); + z3 = (5.5hu, 4.5vu); penpos3(basestroke, 90); + z4 = (2.5hu, .5vu); penpos4(basestroke, 90); + z5 = (.2hu, y2); penpos5(.5basestroke, 0); + z6 = (x4, y3); penpos6(basestroke, -90); + z7 = (5hu, 3vu); penpos7(.9basestroke, -135); + penstroke z1e..z2e..z3e & z3e{dir -105}..z4e..z5e..z6e..z7e; + penlabels(range 1 thru 7); +enddef; + + +% he isolated +sertochar "he - isolated h"; +beginchar(77, 7hu#, 5vu#, 0); + heecommon; +endchar; + +% he final +sertochar "he - final h"; +beginchar(78, 7.5hu#, 5vu#, 0); + heecommon; + z8 = (x1+.5hu, 2vu); penpos8(basestroke, 90); + z9 = (x1+2hu, .5vu); penpos9(basestroke, 90); + penstroke z8e..{right}z9e; + penlabels(8, 9); +endchar; + +def wawcommon (suffix $) = + pickup serto_pen; + bot z$a = (x$ + 2hu, y$); + lft z$b = (x$, y$ + 2vu); + top z$c = (x$a, y$ + 5vu); + rt z$d = (x$ + 4hu, y$ + 2vu); + draw z$a..z$b..z$c..z$d..cycle; + + penlabels($a, $b, $c, $d); +enddef; + + +% waw isolated +sertochar "waw - isolated w"; +beginchar(79, 5hu#, 5vu#, 0); + z1 = (0, 0); + wawcommon(1); +endchar; + +% waw final +sertochar "waw - final w"; +beginchar(80, 5hu#, 5vu#, 0); + z1 = (0, 0); + wawcommon(1); + z5 = (.6[x1a,x1d], vu); penpos5(basestroke, 50); + z6 = (5hu, .5vu); penpos6(basestroke, 90); + penstroke z6e{left}..z5e; + penlabels(5, 6); +endchar; + + + + +% o-waw isolated +sertochar "waw - isolated o"; +beginchar(159, 5hu#, 5vu#, 0); + z1 = (0, 0); + wawcommon(1); + z7 = (x1c, 7hu); + sertodot(7, 1); +endchar; + +% o-waw final +sertochar "waw - final o"; +beginchar(160, 5hu#, 5vu#, 0); + z1 = (0, 0); + wawcommon(1); + z5 = (.6[x1a,x1d], vu); penpos5(basestroke, 50); + z6 = (5hu, .5vu); penpos6(basestroke, 90); + z7 = (x1c, 7hu); + sertodot(7, 1); + + penstroke z6e{left}..z5e; + penlabels(5, 6, 7); +endchar; + + + +def zaincommon = + z1 = (2hu, .5vu); penpos1(basestroke, 90); + z2 = (1.1hu, 1.1vu); penpos2(.9basestroke, 40); + z3 = (.5hu, 4vu); penpos3(.7basestroke, 0); + z5r = z2l; + z5l = (0, y2l); + z6 = (-.3hu, -1.3vu); penpos6(.3basestroke, -45); + + penstroke z3e{down}..z5e..z6e; + penlabels(range 1 thru 6); +enddef; + +% zain - isolated +sertochar "zain - isolated z"; +beginchar(81, 2hu#, 4vu#, 1.5vu#); + zaincommon; +endchar; + +% zain - final +sertochar "zain - final z"; +beginchar(82, 2hu#, 4vu#, 1.5vu#); + zaincommon; + penstroke z1e..z2e..{up}z3e; +endchar; + +def hhethcommon (expr xoffs, init) = + if init = 1: + z1 = (xoffs + 3.8hu, 2.4vu); + z11 = (xoffs + 4.5hu, 2.2vu); + else: + z1 = (xoffs + 4.3hu, 2.6vu); + z11 = (xoffs + 4.7hu, y1); + fi; + + %z1 = (xoffs + 4.5hu, 2.6vu); penpos1(.2basestroke, 0); + %z3 = (x1-3hu, y1); penpos3(.2basestroke, -180); + %z2 = (.5[x3,x1], .5vu); penpos2(basestroke, -90); + %z4 = (1.5[x1,x3], y2); penpos4(basestroke, -270); + %penstroke z1e{down}..z2e..{up}z3e; + %penstroke z3e{down}..{left}z4e; + + z2 = (xoffs + 3hu, (vu-basestroke)/2); + z3 = (xoffs + 1.5hu, .5vu); + z4 = (xoffs, y2); + z5 = (x4, y2+basestroke); + z6 = (x3-.2basestroke, 2.6vu); + z7 = (x3+.2basestroke, y6); + z8 = (x2, y5); + if init = 0: + z12 = (xoffs+6hu, y5); + z13 = (x12, y2); + z14 = (xoffs+4.5hu, y3); + fill z11{down}..{right}z12--z13{left}..z14 & + z14..z2{left}..z3 & + z3..{left}z4--z5{right}..{up}z6--z7{down}..{right}z8..z1--cycle; + else: + fill z11..z2{left}..z3 & + z3..{left}z4--z5{right}..{up}z6--z7{down}..{right}z8..z1--cycle; + fi; + + penlabels(range 1 thru 14); +enddef; + +% .heth isolated +sertochar ".heth - isolated .h"; +beginchar(83, 6.8hu#, 3vu#, 0); + hhethcommon(1.2hu, 1); + z10 = (.5[z4,z5]); + arabesque(10, .2); +endchar; + +% .heth final +sertochar ".heth - final .h"; +beginchar(84, 7.2hu#, 3vu#, 0); + hhethcommon(1.2hu, 0); + z10 = (.5[z4,z5]); + arabesque(10, .2); +endchar; + +% .heth medial +sertochar ".heth - medial .h"; +beginchar(85, 6hu#, 3vu#, 0); + hhethcommon(0hu, 0); +endchar; + +% .heth initial +sertochar ".heth - initial .h"; +beginchar(86, 5.5hu#, 3vu#, 0); + hhethcommon(0hu, 1); +endchar; + + + +def tethcommon (expr xoffs) = + z1 = (xoffs+3.5hu, 8vu); penpos1(basestroke, 0); + z2 = (x1-1.5hu, 1.5vu); penpos2(.5basestroke, 0); +% z3 = (x1-3hu, -3vu); penpos3(basestroke, 0); +% z4 = (x1-hu, -4.5vu); penpos4(.7basestroke, 90); + z4 = (x1-hu, -3.5vu); penpos4(.7basestroke, 90); + z3 = (x1-3hu, y4+1.5vu); penpos3(basestroke, 0); + z5 = (x1+.5hu, 0); penpos5(basestroke, 225); + z6 = (x2, .5vu); penpos6(basestroke, 270); + z7 = (xoffs, .5vu); penpos7(basestroke, 270); + penstroke z1e{down}..z2e..z3e..z4e..z5e..{left}z6e..z7e; + + penlabels(range 1 thru 7); +enddef; + +% .teth isolated +sertochar ".teth - isolated .t"; +beginchar(87, 6.2hu#, 8vu#, 4vu#); + tethcommon(1.2hu); + arabesque(7, .2); +endchar; + +% .teth final +sertochar ".teth - final .t"; +beginchar(88, 8.2hu#, 8vu#, 4vu#); + tethcommon(1.2hu); + arabesque(7, .2); + z8 = (8.2hu, .5vu); penpos8(basestroke, 90); + penstroke z8e{left}..{up}z1e; +endchar; + +% .teth medial +sertochar ".teth - medial .t"; +beginchar(89, 7hu#, 8vu#, 4vu#); + tethcommon(0hu); + z8 = (7hu, .5vu); penpos8(basestroke, 90); + penstroke z8e{left}..{up}z1e; +endchar; + +% .teth initial +sertochar ".teth - initial .t"; +beginchar(90, 5hu#, 8vu#, 4vu#); + tethcommon(0hu); +endchar; + + + +def iodhcommon (expr xoffs) = + z1 = (xoffs, .5(vu-basestroke)); + z2 = (x1, .5(vu+basestroke)); + z21 = (x1-1hu, y2); + z3 = (x1+hu, 2.5basestroke); + z4 = (x1+2hu, y2); + z5 = (x1+2.2hu, .5vu); + z6 = (x1+1.5hu, y1); + + fill z1--z21{right}..z3--z4{z4-z3} % ..z5{down} + ..{left}z6--cycle; + + penlabels(range 1 thru 21); +enddef; + +% iod isolated +sertochar "iod - isolated y"; +beginchar(105, 6hu#, 2.5vu#, 0); + iodhcommon(3hu); + z7 = (.5[z1, z2]); + %baseline(7, 1) + arabesque(7, 2); +endchar; + +% iod final +sertochar "iod - final y"; +beginchar(106, 6hu#, 2.5vu#, 0); + iodhcommon(3hu); + z8 = (.5[z1, z2]); + arabesque(8, 2); + + z7 = (x1 + 1.5hu, .5[y1, y2]); + baseline(7, -1.5) +endchar; + +% iod medial +sertochar "iod - medial y"; +beginchar(107, 4hu#, 2.5vu#, 0); + iodhcommon(1hu); + z8 = (.5[z1, z2]); + baseline(8, 1) + z7 = (x1 + 1.5hu, .5[y1, y2]); + baseline(7, -1.5) +endchar; + +% iod initial +sertochar "iod - initial y"; +beginchar(108, 4hu#, 2.5vu#, 0); + iodhcommon(1hu); + z7 = (.5[z1, z2]); + baseline(7, 1) +endchar; + + + +% kaf - isolated +sertochar "kaf - isolated k (needs improvement)"; +beginchar(109, 6hu#, 2.5vu#, 3vu#); + z1 = (3hu, (vu-basestroke)/2); + z2 = (x1, .5vu+.5basestroke); + z21 = (x1-hu, y2); + z3 = (x1+hu, 2.5basestroke); + z4 = (x1+2hu, y2); + z5 = (x1+2.2hu, .5basestroke); + z6 = (x1+1.5hu, y1); + + fill z1--z21{right}..z3--z4{z4-z3} % ..z5{down} + ..{left}z6--cycle; + z7 = (x1, .5vu); + arabesque(7, 2); + + z8 = (3.5[z3, z2]); + z9 = (x8+.2hu, y8-.2vu); + fill z2--z8--z9--z4--cycle; + penlabels(range 1 thru 9); +endchar; + +% kaf - final +sertochar "kaf - final k (needs improvement)"; +beginchar(110, 6hu#, 2.5vu#, 3vu#); + z1 = (3hu, 0); + z2 = (x1, .5vu+.5basestroke); + z21 = (x1-hu, y2); + z3 = (x1+hu, 2.5basestroke); + z4 = (x1+2hu, y2); + z5 = (x1+2.2hu, .5basestroke); + z6 = (x1+1.5hu, 0); + + fill z1--z21{right}..z3--z4{z4-z3} % ..z5{down} + ..{left}z6--cycle; + + z7 = (x1, .5vu); + arabesque(7, 2); + baseline(7, -3); + + z8 = (3.5[z3, z2]); + z9 = (x8+.2hu, y8-.2vu); + fill z2--z8--z9--z4--cycle; + penlabels(range 1 thru 21); +endchar; + + +def kafcommon = + z1 = (1.5hu, 2vu); penpos1(basestroke, 0); + z3 = (5.5hu, y1+.5hu); penpos3(basestroke, -180); + z2 = (.5[x1,x3], 4vu); penpos2(.4basestroke, -90); + z4 = (x2+hu, .5vu); penpos4(basestroke, -270); + penstroke z1e{up}..z2e..z3e..{left}z4e; + penlabels(range 1 thru 5); +enddef; + +% kaf - medial +sertochar "kaf - medial k"; +beginchar(111, 7hu#, 4vu#, 0); + kafcommon; + z5 = (7hu, y4); + baseline(5, 7) +endchar; + +% kaf - initial +sertochar "kaf - initial k"; +beginchar(112, 7hu#, 4vu#, 0); + kafcommon; + baseline(4, 4.5) +endchar; + + + + +def lamadfinalcommon = + z1 = (.5hu, 7vu); penpos1(basestroke, 40); + z2 = (6.5hu, 1vu); penpos2(basestroke, 40); + z3 = (9hu, 1vu); penpos3(.2basestroke, 120); + + z4 = (x1+3hu, y1); penpos4(basestroke, 40); + z5 = (x2+3hu, y2); penpos5(basestroke, 40); + + penstroke z1e--z2e{z2-z1}..z3e; + penstroke z4e--z5e; + + penlabels(range 1 thru 5); +enddef; + + +sertochar "lamad - isolated"; +beginchar(113, 11.5hu#, 7vu#, 0); + lamadfinalcommon; + z6 = (whatever[z4, z5]); penpos6(basestroke, 40); + y6l = 0; + penstroke z5e--z6e; + penlabels(6); +endchar; + +sertochar "lamad - final"; +beginchar(114, 10.5hu#, 7vu#, 0); + lamadfinalcommon; + z6 = (x5+1hu, .5vu); penpos6(basestroke, 90); + penstroke z5e{z5-z4}..z6e; + penlabels(6); +endchar; + + +def lamadnonfinalcommon = + z1 = (.5hu, 7vu); penpos1(basestroke, 40); + z2 = (5hu, 1vu); penpos2(basestroke, 40); + penstroke z1e--z2e; + + penlabels(range 1 thru 2); +enddef; + +sertochar "lamad - medial"; +beginchar(115, 6.5hu#, 7vu#, 0); + lamadnonfinalcommon; + z3 = (6.5hu, .5vu); penpos3(basestroke, 90); + % penstroke z2e{z2-z1}..{right}z3e; + % z1e--z2e is already drawn in Cainnonfinalcommon + % we redraw it to avoit some white pixel on z2e. + penstroke z1e--z2e..{right}z3e; + +% z4 = (whatever[z1l, z2l]); penpos4(basestroke, 90); +% y4l = .5(vu-basestroke); +% z5 = (0, .5vu); penpos5(basestroke, 90); +% penstroke z4e--z5e; + + z10 = (x2-1.5hu, basestroke+.5vu); + z4 = (whatever[z1, z2]); penpos4(basestroke, 40); + z10 = (whatever[z4r, z4l]); + z5 = (x10, .5vu); penpos5(basestroke, -90); + z6 = (0, .5vu); penpos6(basestroke, -90); + penstroke z4e..{left}z5e..z6e; + + penlabels(3, 4, 5, 6, 10); +endchar; + +sertochar "lamad - initial"; +beginchar(116, 7hu#, 7vu#, 0); + lamadnonfinalcommon; + z3 = (whatever[z1, z2]); penpos3(basestroke, 40); + y3l = .5(vu-basestroke); + penstroke z2e--z3e; + +% z4 = (whatever[z1l, z3l]); penpos4(basestroke, 90); +% y4l = y3l; +% z5 = (0, .5vu); penpos5(basestroke, 90); +% penstroke z4e--z5e; + + z10 = (x2-1.5hu, basestroke+.5vu); + z4 = (whatever[z1, z3]); penpos4(basestroke, 40); + z10 = (whatever[z4r, z4l]); + z5 = (x10, .5vu); penpos5(basestroke, -90); + z6 = (0, .5vu); penpos6(basestroke, -90); + penstroke z4e..{left}z5e..z6e; + penlabels(3, 4, 5, 6, 10); +endchar; + +def mimcommon (expr final, exOne) = +% z1 = (.5hu, 4.5vu); penpos1(basestroke, 45); +% z2 = (5hu, .5vu); penpos2(basestroke, 90); +% z3 = (7hu, 2.25vu); penpos3(.5basestroke, 180); +% z4 = (x2, 4vu); penpos4(basestroke, 270); +% if final = 0: +% z5 = (3hu, y3); penpos5(.5basestroke, 360); +% else: +% z5 = (2.5hu, 2vu); penpos5(basestroke, 315); +% fi; +% z7 = (3hu, 1.5vu); penpos7(basestroke, 45); +% +% z6 = (1hu, -3vu); penpos6(.4basestroke, 315); + + z1 = (exOne, 4.5vu); penpos1(basestroke, 45); + z2 = (x1+4.5hu, .5vu); penpos2(basestroke, 90); + z3 = (x2+2hu, 2.25vu); penpos3(.5basestroke, 180); + z4 = (x2, 4vu); penpos4(basestroke, 270); + if final = 0: + z5 = (x1+2.5hu, y3); penpos5(.5basestroke, 360); + else: + z5 = (x1+2hu, 2vu); penpos5(basestroke, 315); + fi; + z7 = (x1+2.5hu, 1.5vu); penpos7(basestroke, 45); + + z6 = (x1+.5hu, -3vu); penpos6(.4basestroke, 315); + + + if final = 0: + penstroke z1e--z7e{z7-z1}..z2e{right}..z3e{up}..z4e{left}..z5e..{right}z2e; + else: + penstroke z1e--z7e{z7-z1}..z2e{right}..z3e{up}..z4e{left}..{z6-z5}z5e; + fi; + penlabels(range 1 thru 7); +enddef; + +sertochar "mim - isolated"; +beginchar(117, 8hu#, 4.5vu#, 3vu#); + mimcommon(1, 0.5hu); + penstroke z5e--z6e; +endchar; + +sertochar "mim - final"; +beginchar(118, 8hu#, 4vu#, 1vu#); + mimcommon(1, 0.5hu); + penstroke z5e--z6e; + baseline(2, -3); +endchar; + +sertochar "mim - medial"; +beginchar(119, 8hu#, 4vu#, 0); + mimcommon(0, 0.5hu); + z8 = (0, y2); + baseline(8, -8); +endchar; + +sertochar "mim - initial"; +beginchar(120, 8.5hu#, 4vu#, 0); + mimcommon(0, 1hu); + baseline(2, 5.5); +endchar; + + + +def nunnonfinalcommon = + z1 = (1.25hu, 4vu); penpos1(1.1basestroke, 20); + z2 = (1.5hu, 1.1vu); penpos2(basestroke, 0); + z3 = (0.9hu, .5vu); penpos3(basestroke, -90); + z4 = (0, .5vu); penpos4(basestroke, -90); + + penstroke z1e{down}..{down}z2e..{left}z3e--z4e; + penlabels(range 1 thru 4); +enddef; + +sertochar "nun - isolated"; +beginchar(121, 3.5hu#, 1vu#, 4vu#); + z1 = (.5hu, .5vu); penpos1(1.3basestroke, 42); + z2 = (x1+1.5hu, -2vu); penpos2(basestroke, 45); + z3 = (x1+5hu, -4.2vu); penpos3(.4basestroke, 80); + penstroke z1e..z2e..z3e; + penlabels(range 1 thru 3); +endchar; + +sertochar "nun - final"; +beginchar(122, 5hu#, 1vu#, 4vu#); + z1 = (.5hu, 0vu); penpos1(basestroke, 0); + z4 = (1.1hu, .5vu); penpos4(basestroke, -90); + z2 = (1.5hu, -2vu); penpos2(basestroke, 45); + z3 = (5hu, -4.2vu); penpos3(.25basestroke, 80); + penstroke z1e..z2e..z3e; + penstroke z4e{left}..z1e; + baseline(4, -3.9); + penlabels(range 1 thru 4); +endchar; + +sertochar "nun - medial"; +beginchar(129, 3hu#, 4vu#, 0); + nunnonfinalcommon; + baseline(4, -3); +endchar; + +sertochar "nun - initial"; +beginchar(130, 3hu#, 4vu#, 0); + nunnonfinalcommon; +endchar; + + + + +%def qofsemkathcommon (expr xoffs) = +% z1 = (xoffs+2hu, .5vu); penpos1(basestroke, -90); +% z2 = (x1+1.25hu, 2vu); penpos2(.5basestroke, 0); +% z3 = (x1, y1+3.5hu); penpos3(basestroke, 90); +% z4 = (xoffs+.25hu, y2); penpos4(basestroke, -180); +% +% penstroke z1e..z2e..z3e..z4e..{right}cycle; +% penlabels(range 1 thru 4); +%enddef; + +def penpoint (suffix $) (expr xval, yval, large, angle) = + z$ = (xval, yval); penpos$(large, angle); +enddef; + +def semkathcommon (expr xoffs) = + penpoint(1, xoffs, .5vu, basestroke, -90); + penpoint(11, xoffs+2hu, y1, basestroke, -90); + penpoint(2, xoffs+3hu, 1.2vu, .4basestroke, -45); + penpoint(3, xoffs+2.25hu, 4vu, basestroke, 90); + penpoint(4, xoffs-.25hu, .4vu, .4basestroke, 135); + + penstroke z1e..z11e{right}...z2e..{left}z3e..{dir 245}z4e; + + penpoint(5, xoffs-hu, y3, basestroke, -90); + penpoint(6, x5-1.4hu, 3vu, .4basestroke, -45); + penpoint(7, xoffs-1.4hu, y1, basestroke, 90); + penpoint(8, xoffs, y1, basestroke, 90); + + penstroke z4e{dir 65}..{left}z5e..z6e..{right}z7e...z8e; + + penlabels(range 1 thru 11); +enddef; + +%def semkathcommon (expr xoffs) = +% qofsemkathcommon(xoffs); +% z5 = (x1+2.5hu, y1); penpos5(basestroke, -90); +% z6 = (x5+1.5hu, y2); penpos6(basestroke, 0); +% z7 = (x5, y3); penpos7(basestroke, 90); +% z8 = (x2, y2+.5vu); penpos8(.5basestroke, 145); +% +% penstroke z1e--z5e{right}..z6e..z7e..z8e; +% penlabels(range 5 thru 8); +%enddef; + +sertochar "semkath - isolated"; +beginchar(131, 9hu#, 4.5vu#, 0); + semkathcommon(4.5hu); + arabesque(7, 2); +endchar; + +sertochar "semkath - final"; +beginchar(132, 9hu#, 4.5vu#, 0); + semkathcommon(4.5hu); + arabesque(7, 2); + baseline(11, -2.5); +endchar; + +sertochar "semkath - medial"; +beginchar(133, 8.5hu#, 4.5vu#, 0); + semkathcommon(4hu); + baseline(11, -2.5); + baseline(8, 4); +endchar; + +sertochar "semkath - initial"; +beginchar(134, 8.5hu#, 4.5vu#, 0); + semkathcommon(4hu); + baseline(8, 4); +endchar; + + +def Cainfinalcommon = + z1 = (.5hu, 4vu); penpos1(basestroke, 40); + z2 = (3hu, 1vu); penpos2(basestroke, 40); + z3 = (6hu, 1vu); penpos3(.2basestroke, 120); + + z4 = (x1+2.5hu, y1); penpos4(basestroke, 40); + z5 = (x2+2.5hu, y2); penpos5(basestroke, 40); + + penstroke z1e--z2e{z2-z1}..z3e; + penstroke z4e--z5e; + + penlabels(range 1 thru 5); +enddef; + + +sertochar "`e - isolated"; +beginchar(135, 7.5hu#, 4vu#, 0); + Cainfinalcommon; + z6 = (whatever[z4, z5]); penpos6(basestroke, 40); + y6l = 0; + penstroke z5e--z6e; + penlabels(6); +endchar; + +sertochar "`e - final"; +beginchar(136, 6.5hu#, 4vu#, 0); + Cainfinalcommon; + z6 = (x5+1hu, .5vu); penpos6(basestroke, 90); + penstroke z5e{z5-z4}..z6e; + penlabels(6); +endchar; + + +def Cainnonfinalcommon = + z1 = (.5hu, 4vu); penpos1(basestroke, 40); + z2 = (3hu, 1vu); penpos2(basestroke, 40); + penstroke z1e--z2e; + + penlabels(range 1 thru 2); +enddef; + +sertochar "`e - medial"; +beginchar(137, 4.5hu#, 4vu#, 0); + Cainnonfinalcommon; + + z3 = (4.5hu, .5vu); penpos3(basestroke, 90); + %penstroke z2e{z2-z1}..{right}z3e; + % z1e--z2e is already drawn in Cainnonfinalcommon + % we redraw it to avoit some white pixel on z2e. + penstroke z1e--z2e..{right}z3e; + + %z4 = (whatever[z1l, z2l]); penpos4(basestroke, 90); + %y4l = 0; + %z5 = (0, .5vu); penpos5(basestroke, 90); + %penstroke z4e--z5e; + z10 = (x2-1.5hu, basestroke+.5vu); + z4 = (whatever[z1, z2]); penpos4(basestroke, 40); + z10 = (whatever[z4r, z4l]); + z5 = (x10, .5vu); penpos5(basestroke, -90); + z6 = (0, .5vu); penpos6(basestroke, -90); + penstroke z4e..{left}z5e..z6e; + + penlabels(3, 4, 5, 6, 10); +endchar; + +sertochar "`e - initial"; +beginchar(138, 5hu#, 4vu#, 0); + Cainnonfinalcommon; + z3 = (whatever[z1, z2]); penpos3(basestroke, 40); + y3l = 0; + penstroke z2e--z3e; + +% z4 = (whatever[z1l, z3l]); penpos4(basestroke, 90); +% y4l = 0; +% z5 = (0, .5vu); penpos5(basestroke, 90); +% penstroke z4e--z5e; + + z10 = (x2-1.5hu, basestroke+.5vu); + z4 = (whatever[z1, z2]); penpos4(basestroke, 40); + z10 = (whatever[z4r, z4l]); + z5 = (x10, .5vu); penpos5(basestroke, -90); + z6 = (0, .5vu); penpos6(basestroke, -90); + penstroke z4e..{left}z5e..z6e; + + penlabels(3, 4, 5, 6, 10); +endchar; + + +%def pecommon (expr xoffs) = +% %z1 = (xoffs, .5hu); penpos1(basestroke, -90); +% z2 = (xoffs+2hu, .5hu); penpos2(basestroke, -90); +% z3 = (x2+2hu, 3hu); penpos3(basestroke, 0); +% z4 = (x2, 4.75hu); penpos4(.5basestroke, 90); +% z5 = (xoffs+.5hu, 3.5hu); penpos5(basestroke, 180); +% z6 = (x4, y3-.5hu); penpos6(basestroke, 270); +% z7r = z3; penpos7(.4basestroke, 315); +% +% penstroke z2e{right}..{up}z3e..z4e..z5e..{right}z6e..z7e; +% penlabels(range 2 thru 7); +%enddef; + +def pecommon (expr xoffs) = + pickup pe_pen; + + z1 = (xoffs, .5vu); + z2 = z1 + (2hu, 0); + z21 = z2 + (.5hu, 1.5vu); + z3 = z1 + (0, 3.5hu); + z4 = z1 + (-hu, 2.5vu); + z5 = (x2-.4hu, 3.2hu); + + draw z1---z2..z21..z3..z4..tension 1.3..z5; + + penlabels(range 1 thru 12); +enddef; + + +sertochar "pe - isolated"; +beginchar(139, 5.5hu#, 5hu#, 0); + pecommon(2hu); + arabesque(1, 1); +endchar; + +sertochar "pe - final"; +beginchar(140, 6hu#, 5hu#, 0); + pecommon(2hu); + arabesque(1, 1); + baseline(2, -2); +endchar; + +sertochar "pe - medial"; +beginchar(141, 6hu#, 5hu#, 0); + pecommon(2hu); + baseline(1, 2); + baseline(2, -2); +endchar; + + +sertochar "pe - initial"; +beginchar(142, 6hu#, 5hu#, 0); + pecommon(2hu); + baseline(1, 2); +endchar; + + +def sadecommon (expr xoffs, iso) = + z1 = (xoffs, -2vu); penpos1(1.4basestroke, -80); + z2 = (x1+3hu, -3.5vu); penpos2(.8basestroke, -90); + z3 = (x1+4.5hu, -2.25vu); penpos3(.5basestroke, -45); + z4 = (x3-.25hu, -.75vu); penpos4(basestroke, 45); + z5 = (x3-.5hu, .5vu); penpos5(.6basestroke, 0); + + if iso = 0: % isolated sade + z6 = (x4, 1.5vu); penpos6(.8basestroke, 32); + z7 = (x6-.5hu, y6+vu); penpos7(basestroke, 70); + penstroke z1e..{right}z2e..z3e..z4e..z5e..z6e..z7e; + else: % final sade + z6 = (x4-.3hu, 1vu); penpos6(.8basestroke, 32); + penstroke z1e..{right}z2e..z3e..z4e..z5e..{dir 122}z6e; + z7 = (xoffs+5.5hu, .5vu); penpos7(basestroke, 90); + penstroke z6e..{right}z7e; + fi; + + penlabels(range 1 thru 7); +enddef; + +sertochar ".sade - isolated"; +beginchar(143, 5.5hu#, 2vu#, 4vu#); + sadecommon(0, 0); +endchar; + +sertochar ".sade - final"; +beginchar(144, 5hu#, 2vu#, 4vu#); + sadecommon(0, 1); +endchar; + + + +%def qoffinalcommon (expr xoffs) = +% qofsemkathcommon(xoffs); +% z5 = (xoffs, .5vu); penpos5(basestroke, -90); +% arabesque(5, .75); +% z6 = (x4l, 1.5hu); penpos6(.4basestroke, -45); +% penstroke z5e{right}..z6e; +% +% penlabels(5, 6); +%enddef; + +%def qofnonfinalcommon (expr xoffs) = +% qofsemkathcommon(xoffs); +% z5 = (xoffs, .5vu); penpos5(basestroke, -90); +% baseline(5, 1.5); +% z6 = (x4l, 1.5hu); penpos6(.4basestroke, -45); +% penstroke z5e{right}..z6e; +% +% penlabels(5, 6); +%enddef; + +def qofright = % works only if called after wawcommon + z7 = (.6[x1a,x1d], .8vu); penpos7(basestroke, 50); + z6 = (x1a+3hu, .5vu); penpos6(basestroke, 90); + penstroke z6e{left}..z7e; + penlabels(6, 7); +enddef; + +def qoffinalcommon (expr xoffs) = + z1 = (xoffs+.25hu, 0); + wawcommon(1); + + z5 = (xoffs, .5vu); penpos5(basestroke, -90); + arabesque(5, .75); + z4 = .5[z1a, z1b]; penpos4(.4basestroke, -45); + penstroke z5e{right}..z4e; + + penlabels(1, 4, 5); +enddef; + +def qofnonfinalcommon (expr xoffs) = + z1 = (xoffs+.25hu, 0); + wawcommon(1); + + z5 = (xoffs, .5vu); penpos5(basestroke, -90); + baseline(5, .5); + z4 = .5[z1a, z1b]; penpos4(.4basestroke, -45); + %z6 = (x4l, 1.5hu); penpos6(.4basestroke, -45); + penstroke z5e{right}..z4e; + + penlabels(5, 6); +enddef; + +sertochar "qof - isolated"; +beginchar(145, 7hu#, 5vu#, 0); + qoffinalcommon(1.75hu); +endchar; + + +sertochar "qof - final"; +beginchar(146, 7hu#, 5vu#, 0); + qoffinalcommon(1.75hu); + qofright; +% z7 = (.6[x1a,x1d], .8vu); penpos7(basestroke, 50); +% z6 = (x1a+3hu, .5vu); penpos6(basestroke, 90); +% penstroke z6e{left}..z7e; +% +% penlabels(6, 7); +endchar; + +sertochar "qof - medial"; +beginchar(147, 5.75hu#, 5vu#, 0); + qofnonfinalcommon(.5hu); + qofright; +endchar; + +sertochar "qof - initial"; +beginchar(148, 6hu#, 5vu#, 0); + qofnonfinalcommon(.5hu); +endchar; + + +% resh - isolated +sertochar "resh - isolated"; +beginchar(149, 4hu#, 6vu#, 0); + dr_isolated_common; + z6 = (1hu, y3+1.2vu); + sertodot(6, 1); + penlabels(6); +endchar; + +% resh - final +sertochar "resh - final"; +beginchar(150, 3hu#, 4vu#, 1vu#); + dr_final_common; + z4 = (x3, y2r+1.2vu); + sertodot(4, 1); + penlabels(4); +endchar; + + +def shincommon (expr xoffs) = + z1 = (xoffs, .5vu); + z2 = (x1+1.5hu, 2vu); + z3 = (x1, 2vu+basestroke); + z4 = (x1-1.5hu, y2); + + fill z1{dir 45}..{up}z2..z3..z4{down}..{dir 315}cycle; + + z5 = (x1-hu, y1); penpos5(basestroke, -90); + z6r = z1 + (basestroke-hu, basestroke-hu); penpos6(hu, -45); + penstroke z5e{right}..z6e; + + z7l = z1 + (-(basestroke-hu), basestroke-hu); penpos7(hu, 45); + z8 = (x1+hu, y1); penpos8(basestroke, 90); + penstroke z8e{left}..z7e; + + penlabels(range 1 thru 8); +enddef; + + +def shinfinal (expr xoffs) = + shincommon(xoffs); + arabesque(5, .75); +enddef; + +def shinnonfinal (expr xoffs) = + shincommon(xoffs); + baseline(5, 1.5); +enddef; + + +def shininit (suffix $)(expr length) = + z$aa = (x$, y$-.5basestroke); + z$ac = (x$, y$+.5basestroke); + z$ab = (x$+length*hu, y$aa); + z$ad = (x$+(length-.2)*hu, y$ac); + z$ae = (x$ab+hu, y$ad+.5vu); + fill z$aa--z$ab{right}..{up}z$ae{dir 225}..{left}z$ad--z$ac--cycle; + penlabels($aa, $ab, $ac, $ad, $ae); +enddef; + +sertochar "shin - isolated"; +beginchar(151, 5.75hu#, 3vu#, 0); + shinfinal(2.75hu); + shininit(8, .25); +endchar; + +sertochar "shin - final"; +beginchar(152, 4.75hu#, 3vu#, 0); + shinfinal(2.75hu); + baseline(8, -1); +endchar; + +sertochar "shin - medial"; +beginchar(153, 4.5hu#, 3vu#, 0); + shinnonfinal(2.5hu); + baseline(8, -1); +endchar; + +sertochar "shin - initial"; +beginchar(154, 5.5hu#, 3vu#, 0); + shinnonfinal(2.5hu); + shininit(8, .25); +endchar; + + +def taucommon = + z1 = (0, 0); + z2 = (4.5hu, .5vu); penpos2(basestroke, 67); + z3 = (1hu, 1.1vu); + %z4 = (1hu, 8vu); penpos4(basestroke, 20); + z4 = (1hu, 8vu); penpos4(basestroke, 20); + z5l = z1; + z5r = z3; + + penstroke z4e{down}..z5e & z5e{dir 17}..z2e; + + penlabels(range 1 thru 5); +enddef; + +sertochar "tau - isolated"; +beginchar(155, 5.75hu#, 8vu#, 0); + taucommon; +endchar; + +sertochar "tau - final"; +beginchar(156, 6.5hu#, 8vu#, 0); + taucommon; + z6 = (x2+2hu, y2); penpos6(basestroke, 90); + %z7 = (x6+hu, y6); penpos7(basestroke, 90); + penstroke z4e{dir -50}..tension 1.8 ..{right}z6e; %---z7e; + penlabels(6, 7) + +endchar; + + + +% resh doubledotted - isolated +sertochar "resh doubledotted - isolated"; +beginchar(157, 4hu#, 6vu#, 0); + dr_isolated_common; + z6 = (.6hu, y3+1.2vu); + z7 = z6 + (1.5hu, 0); + sertodot(6, 1); + sertodot(7, 1); + penlabels(6, 7); +endchar; + +% resh doubledotted- final +sertochar "resh doubledotted - final"; +beginchar(158, 3hu#, 4vu#, 1vu#); + dr_final_common; + z4 = (x3-.7hu, y2r+1.2vu); + z5 = z4 + (1.5hu, 0); + sertodot(4, 1); + sertodot(5, 1); + penlabels(4, 4); +endchar; + + + +% ligatures +sertochar "olaf lamad - initial"; +beginchar(171, 9.5hu#, 7vu#, 0); + lamadnonfinalcommon; + z3 = (whatever[z1, z2]); penpos3(basestroke, 40); + y3l = 0; + penstroke z2e--z3e; + + z11 = (x1+2.5hu, y1); penpos11(basestroke, 40); + z13 = (x3+2.5hu, y3); penpos13(basestroke, 40); + penstroke z11e--z13e; + + z4 = (whatever[z1l, z3l]); penpos4(basestroke, 90); + y4l = 0; + z5 = (0, .5vu); penpos5(basestroke, 90); + penstroke z4e--z5e; + penlabels(3, 4, 5, 11, 13); +endchar; + +def lamadolafcommon = + z1 = (1.5hu, .5vu); penpos1(basestroke, 90); + z2 = (x1-hu, 1.5vu); penpos2(basestroke, 0); + z12 = (x1+hu, y2); penpos12(basestroke, 180); + %z3 = (x2, 4.5vu); penpos3(.8basestroke, 0); + %z13 = (x12, y3); penpos13(.8basestroke, 180); + z3 = (x2, 4.5vu); penpos3(basestroke, 0); + z13 = (x12, y3); penpos13(basestroke, 180); + %z4 = (x2, 8vu); penpos4(basestroke, 20); + %z14 = (x12, y4); penpos14(basestroke, 200); + z4l = z3l + (0, 3.2vu); + z4r = z3r + (0, 3.8vu); + z14l = z13l + (0, 3.8vu); + z14r = z13r + (0, 3.2vu); + + %z6 = (-.3hu, -vu); penpos6(.4basestroke, -45); + z6 = (-.8hu, -1.5vu); penpos6(.2basestroke, -45); + + penstroke z4e..z3e..z2e{down}..z1e..{up}z12e..z13e..z14e; + penstroke z2e{down}..z6e; + + penlabels(range 1 thru 14); +enddef; + +sertochar "lamad olaf - isolated"; +beginchar(172, 4hu#, 8vu#, 0); + lamadolafcommon; +endchar; + + +sertochar "lamad olaf - final"; +beginchar(173, 4hu#, 8vu#, 0); + lamadolafcommon; + z7 = z1 + (2.5hu, 0); penpos7(basestroke, 270); + + penstroke z12e{down}..{right}z7e; + + penlabels(7); +endchar; + + + +% Plural Sign +sertochar "sey=ame"; +beginchar(7, 3hu#, 6vu#, 0); + z4 = (hu, 5.7vu); + z5 = z4 + (1.5hu, 0); + sertodot(4, 1); + sertodot(5, 1); + penlabels(4, 4); +endchar; + + + + +%% Vowels +input syriacvowels; + + +%sertochar "peto.ho a"; +%beginchar(1, 3hu#, 5vu#, 0); +% pickup vowel_pen; +% z11 = (0, 3vu); +% z12 = (x1+3hu, y1+3vu); +% z1 = (.1[z11,z12]); +% z2 = (.9[z11,z12]); +% z3 = (.3[z11,z12]); +% z4 = (.7[z11,z12]); +% %z5 = (x1+.5hu, y2); +% z16 = (.5[z11,z12]); % Hilfspunkt +% z6 = z16 + 2hu*dir(angle(z2-z1)+90); +% draw z1--z2; +% draw z3--z6--z4; +% penlabels(1,2,3,4,6) +%endchar; +% +% +%sertochar "revo.so e"; +%beginchar(2, 3hu#, 6vu#, 0); +% pickup vowel_pen; +% z1 = (0, 4vu); +% z2 = (x1+2.2hu, y1+vu); +% z3 = (x1+3hu, y1-vu); +% z4 = z2 + whatever*dir(-110); +% z4 = whatever[z1,z3]; +% +% draw z1..z2..z3; +% draw z2--z4; +% +% penlabels(1,2,3,4); +%endchar; +% +% +%sertochar ".hevo.so i"; +%beginchar(3, 3hu#, 6vu#, 0); +% pickup vowel_pen; +% +% z1 = (.8hu, 3vu); +% z2 = z1 + (2.9hu, 1.5vu); +% z3 = z1 + (-.8hu, 1vu); +% z4 = z3 + (3hu, 1.5vu); +% z5 = .4[z3, z4]; +% z6 = .5[z1, z2]; +% +% draw z1--z2; +% draw z3--z4; +% draw z5--z6; +% +% penlabels(1,2,3,4,5,6); +%endchar; +% +%sertochar "zeqopo o"; +%beginchar(4, 3hu#, 6vu#, 0); +% pickup vowelII_pen; +% +% z1 = (0, 3vu); +% z2 = z1 + (2hu, 3vu); +% z3 = z1 + (1.3hu, 1.5vu); +% +% draw z1{dir 30}..{dir 135}z2..{right}z3; +% penlabels(1,2,3); +%endchar; +% +%sertochar "`e.so.so u"; +%beginchar(5, 3hu#, 8vu#, 0); +% pickup vowel_pen; +% +% z1 = (0, 5vu); +% z2 = z1 + (3hu, 3vu); +% z3 = .47[z1, z2]; +% z4 = z1 + (2.5hu, -.5vu); +% +% draw z1--z2; +% draw z3--z4; +% +% pickup vowelIII_pen; +% z5 = z1 + (1.4hu, 0); +% z6 = z5 - (.5hu, .6vu); +% +% draw z5..z6..cycle; +% +% penlabels(range 1 thru 6) +%endchar; +% +% +%sertochar "qu^s^soyo (hard sign)"; +%beginchar(6, 1hu#, 4vu#, 0); +% z1 = (.5hu, 4vu); +% sertodot(1, 1.2); +%endchar; +% +% +%sertochar "peto.ho a invers"; +%beginchar(17, 3hu#, 5vu#, 0); +% pickup vowel_pen; +% z11 = (0, 1vu); +% z12 = (x1+3hu, y1+3vu); +% z1 = (.1[z11,z12]); +% z2 = (.9[z11,z12]); +% z3 = (.3[z11,z12]); +% z4 = (.7[z11,z12]); +% %z5 = (x1+.5hu, y2); +% z16 = (.5[z11,z12]); % Hilfspunkt +% z6 = z16 - 2hu*dir(angle(z2-z1)+90); +% draw z1--z2; +% draw z3--z6--z4; +% penlabels(1,2,3,4,6) +%endchar; +% +% +%sertochar "revo.so e invers"; +%beginchar(18, 3hu#, 6vu#, 0); +% pickup vowel_pen; +% z1 = (0, 4vu); +% z2 = (x1+hu, y1-2.2vu); +% z3 = (x1+3hu, y1-vu); +% z4 = z2 + whatever*dir(-110); +% z4 = whatever[z1,z3]; +% +% draw z1..z2..z3; +% draw z2--z4; +% +% penlabels(1,2,3,4); +%endchar; +% +% +%sertochar ".hevo.so i"; +%beginchar(19, 3hu#, 4vu#, 0); +% pickup vowel_pen; +% +% z1 = (.8hu, 1vu); +% z2 = z1 + (2.9hu, 1.5vu); +% z3 = z1 + (-.8hu, 1vu); +% z4 = z3 + (3hu, 1.5vu); +% z5 = .4[z3, z4]; +% z6 = .5[z1, z2]; +% +% draw z1--z2; +% draw z3--z4; +% draw z5--z6; +% +% penlabels(1,2,3,4,5,6); +%endchar; +% +%sertochar "zeqopo o invers"; +%beginchar(20, 3hu#, 6vu#, 0); +% pickup vowelII_pen; +% +% z1 = (2.5hu, 5vu); +% z2 = z1 - (2hu, 3vu); +% z3 = z1 - (1.3hu, 1.5vu); +% +% draw z1{dir -150}..{dir -45}z2..{left}z3; +% penlabels(1,2,3); +%endchar; +% +%sertochar "`e.so.so u invers"; +%beginchar(21, 3hu#, 8vu#, 0); +% pickup vowel_pen; +% +% z1 = (3hu, 5vu); +% z2 = z1 - (3hu, 3vu); +% z3 = .47[z1, z2]; +% z4 = z1 - (2.5hu, -.5vu); +% +% draw z1--z2; +% draw z3--z4; +% +% pickup vowelIII_pen; +% z5 = z1 - (1.4hu, 0); +% z6 = z5 + (.5hu, .6vu); +% +% draw z5..z6..cycle; +% +% penlabels(range 1 thru 6) +%endchar; +% +% +% +%sertochar "rukko_ho (soft sign)"; +%beginchar(22, 1hu#, 2vu#, 0); +% z1 = (.5hu, 0vu); +% sertodot(1, 1.2); +%endchar; + + + +sertochar "mvatlono (silent bar below)"; +beginchar(23, 4hu#, 2vu#, 0); + penpoint(1, 0, .5vu, basestroke, 75); + penpoint(2, 3hu, .5vu, basestroke, 75); + penstroke z1e--z2e; +endchar; + +sertochar "mvatlono (silent bar above)"; +beginchar(8, 4hu#, 2vu#, 0); + penpoint(1, 0, .5vu, basestroke, 75); + penpoint(2, 3hu, .5vu, basestroke, 75); + penstroke z1e--z2e; +endchar; + + + +% interpunction +sertochar "full stop"; +beginchar(46, 3hu#, 1vu#, 0); + z1 = (1hu, 1vu); + sertodot(1, 1); +endchar; + +sertochar "colon"; +beginchar(58, 3hu#, 4vu#, 0); + z1 = (1hu, 1vu); + z2 = (1hu, 4vu); + sertodot(1, 1); + sertodot(2, 1); +endchar; + + + +sertochar "underscore"; +beginchar(95, 5hu#, 4vu#, 0); + pickup punct_pen; + bot z1 = (0,0); + bot z2 = (5hu,0); + draw z1--z2; +% penpoint(1, 0, .2hu, .4basestroke, 90); +% penpoint(2, 5hu, .2hu, .4basestroke, 90); +% penstroke z1e--z2e; +endchar; + +sertochar "stretch"; +beginchar(45, 3hu#, 1vu#, 0); + penpoint(1, 0, .5vu, basestroke, 90); + penpoint(2, 3hu, .5vu, basestroke, 90); + penstroke z1e--z2e; +endchar; + + + +def paraIplusII (suffix $)= + pickup para_pen; + z$a = z$ + (2hu, 0); + z$b = z$ + (0, 2vu); + z$c = z$a + (0, 4vu); + z$d = z$b + (4hu, 0); + %sertodot(8, 1); + drawdot z$a; + drawdot z$b; + drawdot z$c; + drawdot z$d; + penlabels($a, $b, $c, $d); +enddef; + +sertochar "end paragraph 1"; +beginchar(33, 6hu#, 5vu#, 0); + pickup punct_pen; + z1 = (.5hu, .5vu); + z2 = z1 + (4hu, 4vu); + z3 = z1 + (0, 4vu); + z4 = z1 + (4hu, 0); + draw z1--z2; + draw z3--z4; + penlabels(1,2,3,4); + paraIplusII(1); +endchar; + +sertochar "end paragraph 2"; +beginchar(34, 6hu#, 5vu#, 0); + z1 = (.5hu, .5vu); + penlabels(1); + paraIplusII(1); +endchar; + +sertochar "end paragraph 3"; +beginchar(35, 6hu#, 5vu#, 0); + pickup para_pen; + z1 = (1hu, 1vu); + z2 = z1 + (3hu, 3vu); + z3 = z1 + (0, 3vu); + z4 = z1 + (3hu, 0); + drawdot z1; + drawdot z2; + drawdot z3; + drawdot z4; + penlabels(1,2,3,4); +endchar; + +sertochar "end paragraph 4"; +beginchar(36, 6hu#, 5vu#, 0); + pickup para_pen; + z1 = (2.5hu, 1vu); + z2 = z1 + (0, 3vu); + drawdot z1; + drawdot z2; + + pickup punct_pen; + z3 = (.5hu, 2.5vu); + z4 = z3 + (4hu, 0); + draw z3--z4; + penlabels(1,2,3,4); +endchar; + + +sertochar "end paragraph 5"; +beginchar(37, 8hu#, 3vu#, 0); + pickup para_pen; + z1 = (2hu, 1.5vu); + z2 = z1 + (4hu, 1vu); + drawdot z1; + drawdot z2; + + pickup punct_pen; + z3 = (0, 2vu); + z4 = z3 + (2hu, 1vu); + z5 = z3 + (4hu, 0); + z6 = z3 + (6hu, -1vu); + z7 = z3 + (8hu, 0); + draw z3..z4..z5..z6..z7; + penlabels(range 1 thru 7); +endchar; + + + +sertochar "end paragraph 6"; +beginchar(38, 3hu#, 6vu#, 1vu#); + pickup para_pen; + z1 = (1.5hu, .5vu); + z2 = z1 + (-1hu, 4vu); + drawdot z1; + drawdot z2; + + pickup punct_pen; + z3 = (0, -1vu); + z4 = z3 + (1hu, 3.5vu); + z5 = z4 + (1hu, 3.5vu); + + draw z3{up}..z4..{up}z5; + penlabels(range 1 thru 5); +endchar; +endinput; |