diff options
Diffstat (limited to 'Master/texmf-dist/fonts/source/public/cmextra/gen.mf')
-rw-r--r-- | Master/texmf-dist/fonts/source/public/cmextra/gen.mf | 91 |
1 files changed, 91 insertions, 0 deletions
diff --git a/Master/texmf-dist/fonts/source/public/cmextra/gen.mf b/Master/texmf-dist/fonts/source/public/cmextra/gen.mf new file mode 100644 index 00000000000..32a55c77a04 --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/cmextra/gen.mf @@ -0,0 +1,91 @@ +% characters for Jill's genealogy publications + +cmchar "Cross (death symbol)"; +beginchar("d",9u#,.65[x_height#,asc_height#],.1(asc_height#-x_height#)); +adjust_fit(0,0); pickup tiny.nib; light_stem=Vround .5[vair,stem]; +pos1(stem,0); pos2(.4[hair,stem],0); pos3(stem,0); +%pos4(stem,90); pos5(.5[vair,stem],90); pos6(stem,90); +pos4(light_stem,90); pos5(.5[vair,light_stem],90); pos6(light_stem,90); +x1=x2=x3=.5w; top y1=h; bot y3=-d; y2=y4r; +y4=y5=y6; y4l=good.y .6[-d,h]; x4=good.x u; x6=r-x4; x5=x2; +filldraw z1l...z2l{down}...z3l--z3r...z2r{up}...z1r--cycle; % vertical stroke +filldraw z4l...z5l...z6l--z6r...z5r...z4r--cycle; % horizontal stroke +penlabels(1,2,3,4,5,6); endchar; + +cmchar "Rings (marriage symbol)"; +beginchar("m",9u#,v_center(x_height#)); +adjust_fit(0,0); pickup tiny.nib; +numeric light_stem; light_stem=Vround .5[vair,stem]; +pos1(light_stem,90); pos3(light_stem,-90); +pos2(light_stem,180); pos4(.3[hair,light_stem],0); +x1=x3=.5[x2,x4]; lft x2r=hround(-u-.5light_stem); rt x4r=hround(.6w+.5stem); +%top y1r=vround(h+.5light_stem); y2=y4=.5[y1,y3]; +%bot y3r=vround(-d-.5light_stem); +top y1r=h; y2=y4=.5[y1,y3]; +bot y3r=-d; +pos5(light_stem,90); pos7(light_stem,-90); +pos6(.3[hair,light_stem],180); pos8(light_stem,0); +x5-x1=x6-x2=x7-x3=x8-x4; rt x8r=hround(w+u+.5light_stem); +y5-y1=y6-y2=y7-y3=y8-y4=0; +filldraw stroke pulled_arc.e(1,2)&pulled_arc.e(2,3)&pulled_arc.e(3,4) + &pulled_arc.e(4,1); % left ring +filldraw stroke pulled_arc.e(5,6)&pulled_arc.e(6,7)&pulled_arc.e(7,8) + &pulled_arc.e(8,5); % right ring +penlabels(1,2,3,4,5,6,7,8); endchar; + +cmchar "Five-pointed star (birth symbol)"; +beginchar("b",9u#,v_center(x_height#)); +adjust_fit(0,0); pickup tiny.nib; +numeric theta; theta=360/5; % degrees between points +pos0(curve,0); pos1(rule_thickness,90); x0=x1=good.x .5w; +top y1r=vround(math_axis+.5x_height+.5rule_thickness); +ypart(.5[z1,z0+(z1-z2) rotated 2theta])=math_axis; +pos2(curve,theta); pos3(rule_thickness,90+theta); +z2=z0; z3-z0=(z1-z0) rotated theta; +z4=whatever[z0l,z1r]=whatever[z2r,z3r]; +filldraw for n=0 upto 4: + z0+(z1r-z0)rotated(n*theta)--z0+(z4-z0)rotated(n*theta)--endfor + cycle; % star +penlabels(0,1,2,3,4); endchar; + +cmchar "Divided rings (divorce symbol)"; +beginchar("1",9u#,v_center(x_height#)); +adjust_fit(0,0); pickup tiny.nib; +numeric light_stem; light_stem=Vround .5[vair,stem]; +pos11(stem,0); pos12(.4[hair,stem],0); pos13(stem,0); +x11=x12=x13=.5w; top y11=round 1.3h; bot y13=round(-d-.3h); y12=.6[y13,y11]; +filldraw z11l...z12l{down}...z13l + --z13r...z12r{up}...z11r--cycle; % vertical stroke +pos1(light_stem,90); pos3(light_stem,-90); +pos2(light_stem,180); pos4(.3[hair,light_stem],0); +x1=x3=.5[x2,x4]; lft x2r=hround(-3u-.5light_stem); rt x4r=hround(.25w+.5stem); +top y1r=h; y2=y4=.5[y1,y3]; +bot y3r=-d; +pos5(light_stem,90); pos7(light_stem,-90); +pos6(.3[hair,light_stem],180); pos8(light_stem,0); +x5-x1=x6-x2=x7-x3=x8-x4; rt x8r=hround(w+3u+.5light_stem); +y5-y1=y6-y2=y7-y3=y8-y4=0; +filldraw stroke pulled_arc.e(1,2)&pulled_arc.e(2,3)&pulled_arc.e(3,4) + &pulled_arc.e(4,1); % left ring +filldraw stroke pulled_arc.e(5,6)&pulled_arc.e(6,7)&pulled_arc.e(7,8) + &pulled_arc.e(8,5); % right ring +penlabels(1,2,3,4,5,6,7,8,11,12,13); endchar; + +cmchar "Leaf"; +beginchar("l",18u#,asc_height#,0); +adjust_fit(0,0); pickup pencircle scaled .6rule_thickness; +z1=(0,0); z2=(w,h); +z3=.5[z1,z2]+.25((z2-z1)rotated 90); +z4=.5[z1,z2]+.25((z2-z1)rotated-90); +path p[]; p3=z1...z3{z2-z1}...z2; p4=z1...z4{z2-z1}...z2; +draw p3; % upper edge +draw p4; % lower edge +draw z1 -- z2; % stem +z5=1/4[z1,z2]; z6=.55[z1,z2]; +z35=p3 intersectionpoint (z5--(x5,2h)); +z36=p3 intersectionpoint (z6--(x6,2h)); +z45=p4 intersectionpoint (z5--(2w,y5)); +z46=p4 intersectionpoint (z6--(2w,y6)); +draw z35--z5--z45; % vein +draw z36--z6--z46; % vein +labels(1,2,3,4,5,6,35,36,45,46); endchar; |