% mmscons.mf -- Malayalam stacked consonants % (c) 1993 Jeroen Hellingman % last edit: 24-JAN-1993 beginchar(c_g_ga,32uw#+rm#,20uh#,18uh#); "g+ga"; pickup frame_pen; path ga_path; x2=0uw; letter_ga(1,2,3,4,5,6,7); ga_path := z1..z2{down}..z3{right}..z4{up}..z5{right}..z6{down}..z7; ga_path := ga_path yscaled 19/20 shifted (0, 1uh); draw ga_path; ga_path := ga_path shifted (0, -19uh); draw ga_path; endchar; beginchar(c_nn_nna,50uw#+rm#,20uh#,18uh#); "nn+nna"; pickup frame_pen; transform upper, lower; upper := identity yscaled 19/20 shifted (0, 1uh); lower := identity yscaled 19/20 shifted (0, -18uh); x5=0uw; half_ba(1,2,3,4,5,6,7,8,9',10',11'); z9=(25uw, 20uh); z10=(33uw, 10uh); z11=(x10, 0); % third bow z12=(41uw, 20uh); z13=(50uw, 10uh); z14=(46uw, 0); draw (z1{up}..z2{right}..z3{down}..z4{left}..cycle) transformed upper; draw (z4{left}..z5{up}..z6{right}..z7{down}---z8) transformed upper; draw (z8---z7{up}..z9{right}..z10{down}---z11) transformed upper; draw (z11---z10{up}..z12{right}..z13{down}..z14) transformed upper; draw (z1{up}..z2{right}..z3{down}..z4{left}..cycle) transformed lower; draw (z4{left}..z5{up}..z6{right}..z7{down}---z8) transformed lower; draw (z8---z7{up}..z9{right}..z10{down}---z11) transformed lower; draw (z11---z10{up}..z12{right}..z13{down}..z14) transformed lower; endchar; beginchar(c_p_pa,36uw#+rm#,20uh#,16uh#); "p+pa"; pickup frame_pen; transform lower; lower := identity scaled 8/10 shifted (7.2uw, -16uh); % bow z1=(4uw, 0); small_bow(1,2,3,4,5); % end hook z6=(x5+3uw, 1/40h); z7=(36uw, y6); z8=(x7, 19.5uh); draw_bow(1,2,3,4,5); draw z5..z6---z7 & z7---z8; draw (z1..z2{up}..z3{right}..z4{down}..z5) transformed lower; draw ((z5..z6---z7) transformed lower) --- z7; penlabels(1,2,3,4,5,6,7,8); endchar; beginchar(c_rr_rra,20uw#+rm#,20uh#,16uh#); "rr+rra"; pickup frame_pen; lower := identity scaled 8/10 shifted (2uw, -16uh); z1=(4uw, 0); z2=(0, 10uh); z3=(10uw, 20uh); z4=(20uw, 10uh); z5=(16uw, 0); draw_bow(1,2,3,4,5); draw (z1..z2{up}..z3{right}..z4{down}..z5) transformed lower; penlabels(1,2,3,4,5); endchar; beginchar(c_sh_sha,32uw#+rm#,20uh#,18uh#); "sh+sha"; pickup frame_pen; transform upper, lower; upper := identity yscaled 19/20 shifted (0, 1uh); lower := identity yscaled 19/20 shifted (0, -18uh); x2=0; letter_sha(1,2,3,4,5,6,7,8,9); draw (z1..z2{down}..z3{right}..z4{up}..z5{right}..z6{down}..z7{left}.. z8{up}..z9) transformed upper; draw (z1..z2{down}..z3{right}..z4{up}..z5{right}..z6{down}..z7{left}.. z8{up}..z9) transformed lower; endchar; beginchar(c_s_sa,44uw#+rm#,20uh#,18uh#); "s+sa"; pickup frame_pen; transform upper, lower; upper := identity yscaled 19/20 shifted (0, 1uh); lower := identity yscaled 19/20 shifted (0, -18uh); x2=0; letter_sa(1,2,3,4,5,6,7,8,9,10); draw (z1..z2{up}..z3{right}..{down}z4---z5) transformed upper; draw (z5---z4{up}..z6{right}..z7{down}..z8{right}..z9{up}..z10) transformed upper; draw (z1..z2{up}..z3{right}..{down}z4---z5) transformed lower; draw (z5---z4{up}..z6{right}..z7{down}..z8{right}..z9{up}..z10) transformed lower; endchar; beginchar(c_dd_dda,44uw#+rm#,20uh#,18uh#); "dd+dda"; pickup frame_pen; transform upper, lower; upper := identity yscaled 19/20 shifted (0, 1uh); lower := identity yscaled 19/20 shifted (0, -18uh); x2=0; letter_dda(1,2,3,4,5,6,7,8,9,10); draw (z1..z2{up}..z3{right}..z4{down}..z5{right}..{up}z6---z7) transformed upper; draw (z7---z6{down}..z8{right}..z9{up}..z10) transformed upper; draw (z1..z2{up}..z3{right}..z4{down}..z5{right}..{up}z6---z7) transformed lower; draw (z7---z6{down}..z8{right}..z9{up}..z10) transformed lower; endchar; beginchar(c_c_ca,36uw#+rm#,20uh#,10uh#); "c+ca"; pickup frame_pen; x6=0; letter_ca(1,2,3,4,5,6,7,8); x9=x8; make_sub_triangle(9,11,12,13); draw z1..z2{up}..z3{right}..z4{down}..z5{left}; draw z6--z7--z8; penlabels(1,2,3,4,5,6,7,8); endchar; beginchar(c_b_ba,46uw#+rm#,20uh#,10uh#); "b+ba"; pickup frame_pen; x5=0uw; half_ba(1,2,3,4,5,6,7,8,9,10,11); % end hook z12=(x11+3uw, 0.5uh); z13=(46uw, y12); z14=(x13, 19.5uh); x15=x13; make_sub_triangle(15,16,17,18); draw_eye(1,2,3,4); draw z4{left}..z5{up}..z6{right}..z7{down}--z8; draw z8--z7{up}..z9{right}..z10{down}..z11; draw z11..z12---z13---z14; penlabels(1,2,3,4,5,6,7,8,9,10,11,12,13,14); endchar; beginchar(c_y_ya,32uw#+rm#,20uh#,10uh#); "y+ya"; pickup frame_pen; x5=0uw; letter_ya(1,2,3,4,5,6,7,8,9,10); x11=x9; make_sub_triangle(11,12,13,14); draw z1..z2{right}..z3{down}..z4{left}..z5{up}..z6{right}.. z7{(1,-8)}..z8{right}..z9{up}..z10; penlabels(1,2,3,4,5,6,7,8,9,10,11); endchar; beginchar(c_v_va,34uw#+rm#,ht#,10uh#); "v+va"; pickup frame_pen; % bow z1=(4uw, 0); large_bow(1,2,3,4,5); % end hook z6=(x5+3uw, 0.5uh); z7=(34uw, y6); z8=(x7, 19.5uh); x9=x8; make_sub_triangle(9,10,11,12); draw_bow(1,2,3,4,5); draw z5..z6---z7---z8; penlabels(1,2,3,4,5,6,7,8); endchar; %%%%%% end of mmscons.mf