% % Washington Romanized Indic accent driver % % Macros to draw roman gammas % % cmchar "gamma"; newchar(lgam,if serifs: 9.5u# else:9u# fi,x_height#,desc_depth#); italcorr x_height#*slant+.25u#; adjust_fit(serif_fit# if monospace:+\\.5u#,.5u#+ else:,fi\\ serif_fit#); numeric left_stem,right_stem,outer_jut; pickup tiny.nib; left_stem=fudged.stem-stem_corr; right_stem=min(fudged.hair if hefty:-2stem_corr fi,left_stem); outer_jut=.75jut; x1l=w-x4r=if serifs:l+letter_fit+outer_jut+.25u+tiny else: u fi; y1=y4=h; x5=x3=x2=.5[x1,x4]; y3=y2=.3h; bot y5r=-d; numeric gbot; gbot=.5(left_stem+right_stem); pos1(left_stem,0); pos4(right_stem,-180); pos2(left_stem,0); pos3(right_stem,-180); pos5(gbot,-90); filldraw stroke z1e--z2e{z2-z1}...{left}z5e{left}...{z4-z3}z3e--z4e; if serifs: numeric inner_jut; pickup tiny.nib; if rt x1r+jut+.5u+1<=lft x4l-jut: inner_jut=jut; else: rt x1r+inner_jut+.5u+1=lft x4l-inner_jut; fi dish_serif(1,2,a,1/3,outer_jut,b,1/2,inner_jut); % left serif dish_serif(4,3,c,.6,inner_jut,d,1/2,outer_jut)(dark); fi % right serif penlabels(0,1,2,3,4,5); endchar; newchar(CGam,if serifs: 13.5u# else:13u# fi,cap_height#,desc_depth#); italcorr x_height#*slant+.25u#; adjust_fit(serif_fit# if monospace:+\\.5u#,.5u#+ else:,fi\\ serif_fit#); numeric left_stem,right_stem,outer_jut; pickup tiny.nib; left_stem=cap_stem-stem_corr; right_stem=min(cap_hair if hefty:-2stem_corr fi,left_stem); outer_jut=.75cap_jut; x1l=w-x4r=if serifs:l+letter_fit+outer_jut+.25u+tiny else: u fi; y1=y4=h; x5=x3=x2=.5[x1,x4]; y3=y2=.625x_height; bot y5r=-d; numeric gbot; gbot=.5(left_stem+right_stem); pos1(left_stem,0); pos4(right_stem,-180); pos2(left_stem,0); pos3(right_stem,-180); pos5(gbot,-90); filldraw stroke z1e--z2e{z2-z1}...{left}z5e{left}...{z4-z3}z3e--z4e; if serifs: numeric inner_jut; pickup tiny.nib; if rt x1r+jut+.5u+1<=lft x4l-jut: inner_jut=cap_jut; else: rt x1r+inner_jut+.5u+1=lft x4l-inner_jut; fi dish_serif(1,2,a,1/3,outer_jut,b,1/2,inner_jut); % left serif dish_serif(4,3,c,.6,inner_jut,d,1/2,outer_jut)(dark); fi % right serif penlabels(0,1,2,3,4,5); endchar; % end of file gamma.mf