%Boisik letters in other forms (greek, calligraphic) iff known chars.greek_Gamma: bskchar "The Greek letter Gamma"; beginchar(chars.greek_Gamma,11u#,cap_height#,0); uni "0x0393"; italcorr cap_height#*slant; adjust_fit(cap_serif_fit#,0); pickup tiny.nib; pos1(cap_stem,0); pos2(cap_stem,0); bot y1=0; top y2=h; lft x1l= lft x2l=2u; cap_serifs_bl(1l); cap_serifs_br(1r); cap_serifs_tl(2l); top y3r=h; rt x3r=w-u; numeric oldbeak; oldbeak:=beak; beak:=1.25beak; filldraw z1l.b{down}..{left}z1l.c..z1l.a{right}..z1+ser_boule*up.. {right}z1r.a..z1r.c{left}..z1r.b---(reverse arm_top_r_points(2r,3)) ---z2l.a..{right}z2l.c..z2l.b---cycle; beak:=oldbeak; penlabels(1,2); endchar; iff known chars.greek_Delta: bskchar "The Greek letter Delta"; beginchar(chars.greek_Delta,14u#,cap_height#,0); uni "0x0394"; adjust_fit(cap_serif_fit#,cap_serif_fit#); numeric alpha, right_stem, left_stem, old_jut; pickup tiny.nib; old_jut:=cap_jut; {{ save cap_jut; cap_jut=old_jut-.5u; lft x1l=1.5u; rt x2r=w-1.5u; bot y1l=bot y2r=0; x3l=.5w; top y3l=h+apex_o; left_stem=cap_hair; right_stem=cap_stem; alpha=diag_ratio(2,left_stem,y3l-y1l,x3l-x1l); pos1(alpha*left_stem,0); pos2(alpha*right_stem,0); pos1'(alpha*left_stem,0); pos2'(alpha*right_stem,0); z1'l=z3l=z2'r; z3'=whatever[z1'r,z1r]=whatever[z2'l,z2l]; y3'l=y3'r=y3'-.25[cap_hair,cap_stem]; z3'l=whatever[z3',z1r]; z3'r=whatever[z3',z2l]; cap_serifs_bl(1l); cap_serifs_br(1r); cap_serifs_br_p(2r,.8); cap_serifs_bl(2l); filldraw z1l.a---z2r.a..{left}z2r.c..diag_serif(2r,3l)---z3l--- diag_serif(1l,3l)..z1l.c{left}..cycle; infill z2l.c{right}..diag_serif(2l,3')---z3'r...z3'l---diag_serif(1r,3') ..z1r.c---cycle; penlabels(1,1',2,2',3,3'); }}; endchar; iff known chars.greek_Delta_alt: bskchar "The Greek letter Delta alternative"; beginchar(chars.greek_Delta_alt,13u#,cap_height#,0); uni "non"; adjust_fit(0,0); pickup tiny.nib; numeric alpha, right_stem, left_stem, old_jut; pickup tiny.nib; old_jut:=cap_jut; lft x1l=u; rt x2r=w-u; bot y1l=bot y2r=0; x3l=.5w; top y3l=h+apex_o; left_stem=cap_hair; right_stem=cap_stem; alpha=diag_ratio(2,left_stem,y3l-y1l,x3l-x1l); pos1(alpha*left_stem,0); pos2(alpha*right_stem,0); pos1'(alpha*left_stem,0); pos2'(alpha*right_stem,0); z1'l=z3l=z2'r; y1r:=y2l:=y1r+serif_o; z3'=whatever[z1'r,z1r]=whatever[z2'l,z2l]; y3'l=y3'r=y3'-.25[cap_hair,cap_stem]; z3'l=whatever[z3',z1r]; z3'r=whatever[z3',z2l]; filldraw z1l---z2r--z3l--cycle; infill (x1r+serif_o,y1r)--(x2l-serif_o,y2l)---z3'r...z3'l---cycle; penlabels(1,2,3); endchar; iff known chars.greek_Theta: bskchar "The Greek letter Theta"; beginchar(chars.greek_Theta,14u#,cap_height#,0); uni "0x0398"; italcorr x_height#*slant; adjust_fit(0,0); pickup tiny.nib; pos1(cap_curve,0); pos2(cap_hair,90); pos3(cap_curve,180); pos4(cap_hair,270); lft x1l=u-o; rt x3l=w-u+o; y1=y3=.5h; .5[x2,x4]=.5[x1,x3]; x2-x4=.5u; bot y2l=-o; top y4l=h+o; filldraw z1l{down}..z2l..z3l..z4l..{down}cycle; infill z1r{up}..z4r..z3r..z2r..{up}cycle; z5=.5[z4,z2]; pos6(.65beak,80); pos7(.65beak,85); y6=y7=y5; .5[x6,x7]=x5; x7-x6=.47(x3r-x1r); z6'r-z6r=z6'l-z6l=z7r-z7'r=z7l-z7'l=(serif_o,0); y6l:=y6l-o; y7r:=y7r+o; pos8(cap_hair,90); pos9(cap_hair,90); y8=y9; .5[z8,z9]=z5; x9-x8=1/3(x7-x6); filldraw z8r..{dir80}z6'r..z6r---z6l..{dir80}z6'l..z8l---z9l ..{dir-95}z7'l..z7l---z7r..{dir-95}z7'r..z9r---cycle; penlabels(1,2,3,4,5,6,6',7,7',8,9); endchar; iff known chars.greek_Lambda: bskchar "The Greek letter Lambda"; beginchar(chars.greek_Lambda,13u#,cap_height#,0); uni "0x039B"; adjust_fit(cap_serif_fit#,cap_serif_fit#); numeric alpha, right_stem, left_stem; pickup tiny.nib; lft x1l=2u; rt x2r=w-2u; bot y1l=bot y2r=0; x3l=.5w; top y3l=h+apex_o; left_stem=cap_hair; right_stem=cap_stem; alpha=diag_ratio(2,left_stem,y3l-y1l,x3l-x1l); pos1(alpha*left_stem,0); pos2(alpha*right_stem,0); pos1'(alpha*left_stem,0); pos2'(alpha*right_stem,0); z1'l=z3l=z2'r; z3'=whatever[z1'r,z1r]=whatever[z2'l,z2l]; y3'l=y3'r=y3'-.25[cap_hair,cap_stem]; z3'l=whatever[z3',z1r]; z3'r=whatever[z3',z2l]; cap_serifs_bl(1l); cap_serifs_br(1r); cap_serifs_br_p(2r,.8); cap_serifs_bl(2l); filldraw z1l+ser_boule*up..{left}z1l.a{left}..{right}z1l.c..diag_serif(1l,3l)---z3l--- diag_serif(2r,3l)..{right}z2r.c..z2r.a{left}..z2r+ser_boule*up.. {left}z2l.a..{right}z2l.c..diag_serif(2l,3')---z3'r...z3'l--- diag_serif(1r,3') ..z1r.c{right}..z1r.a{left}..cycle; penlabels(1,1',2,2',3,3'); endchar; iff known chars.greek_Xi: bskchar "The Greek letter Xi"; beginchar(chars.greek_Xi,13.5u#,cap_height#,0); uni "0x039E"; italcorr cap_height#*slant-.25u#; adjust_fit(0,0); pickup tiny.nib; path p[]; numeric ofs; pos1(cap_stem,0); pos2(cap_stem,0); bot y1=0; top y2=h; x1=x2=.5w; cap_serifs_bl(1l); cap_serifs_br(1r); top y3r=top y4r=h; rt x3r=w-u-o; lft x4r=u+o; bot y5r=0; rt x5l=w-u; {{ numeric oldbeak, old_jut; oldbeak:=beak; old_jut=cap_jut; save beak, cap_jut; beak:=.9oldbeak; cap_jut:=if bold_face: .7\\ fi old_jut; p0:=reverse arm_top_r_points(2r,3).alt; p1:=arm_top_l_points(2l,4).alt; p2:=arm_bot_r_points(1r,5).alt; p2:=subpath(1, length(p2)-1) of p2; }}; p3:=reverse (p2 reflectedabout (z1r.c,z1r.a)); ofs:=if monospace and (x3d-x2r