diff options
Diffstat (limited to 'Master/texmf-dist/fonts/source/public/mathabx/mathbsym.mf')
-rw-r--r-- | Master/texmf-dist/fonts/source/public/mathabx/mathbsym.mf | 264 |
1 files changed, 264 insertions, 0 deletions
diff --git a/Master/texmf-dist/fonts/source/public/mathabx/mathbsym.mf b/Master/texmf-dist/fonts/source/public/mathabx/mathbsym.mf new file mode 100644 index 00000000000..f8855a3736d --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/mathabx/mathbsym.mf @@ -0,0 +1,264 @@ +% mathematical symbols by Anthony Phan. +% file: mathsymb.mf (various mathematical symbols) +% last modification: May 16, 2005. +% Only known charcodes will be generated. + +def horizontal_rules_list=math_axis, + -body_depth,-desc_depth,x_height,cap_height,asc_height,body_height, + math_axis-0.5spread1,math_axis-0.5spread2,math_axis-0.5spread3, + math_axis-0.5spread4, + math_axis+0.5spread1,math_axis+0.5spread2,math_axis+0.5spread3, + math_axis+0.5spread4, +enddef; + +%%% !!! marked signs are to be revised + +use_rule1; + +% standard + +beginchar(hex"20",6u#+2letter_fit#,0,0); + "Normal space"; +endchar; + +% hex"00" + +beginchar(currentlocation,arithmetic_bounds); + "Top dot plus sign"; + pickup tiny.nib; + pos1(rth,0); pos2(rth,0); pos3(rth,90); pos4(rth,90); + lft x1l=hround 0.5(w-rth); x2=x1; + lft x3=Appr; x1-x3=x4-x1=y1-y3=y3-y2; y3=y4=math_axis; + filldraw stroke z1e..z2e; filldraw stroke z3e..z4e; + pickup null.nib; + adjust_dot5((x1,y3+6.5u+0.5dtsz),dtsz,true,false); dot(5,5'); + penlabels(1,2,3,4); +endchar; + +beginchar(currentlocation,arithmetic_bounds); + "Top dot minus sign"; + pickup tiny.nib; + lft x1=Appr; rt x2=w-Appr; + y2=y1=math_axis; pos1(rth,90); pos2(rth,90); + filldraw stroke z1e..z2e; penlabels(1,2); + adjust_dot3((0.5[x1,x2],y1+math_spread[0.5x_height,0.6x_height]), + dtsz,true,false); dot(3,3'); +endchar; + +beginchar(currentlocation,arithmetic_bounds); + "Top dot times sign"; + pickup rule.nib; x0=good.x 0.5w; + pickup tiny.nib; rt x0'=w-Appr; y0=y0'=math_axis; + z1-z0=z0-z2=(z0'-z0) rotated 45; z3-z0=z0-z4=(z0'-z0) rotated -45; + pos1(rth+2eps,-45); pos2(rth+2eps,-45); + pos3(rth+2eps,45); pos4(rth+2eps,45); + filldraw stroke z1e..z2e; filldraw stroke z4e..z3e; + pickup null.nib; + adjust_dot5((x0,y0+5.5u+0.5dtsz),dtsz,true,false); dot(5,5'); + penlabels(1,2,3,4); +endchar; + +beginchar(currentlocation,arithmetic_bounds); + "Bot dot minus sign"; + pickup tiny.nib; + lft x1=Appr; rt x2=w-Appr; + y2=y1=math_axis; pos1(rth,90); pos2(rth,90); + filldraw stroke z1e..z2e; penlabels(1,2); + adjust_dot3((0.5[x1,x2],y1-math_spread[0.5x_height,0.6x_height]), + dtsz,true,false); dot(3,3'); +endchar; + +beginchar(currentlocation,3u#+2appr#,cap_height#,0); + "Cap centered dot"; + pickup null.nib; + adjust_dot1((0.5w,0.5h),1.2dtsz,false,false); + dot(1,1'); +endchar; + +beginchar(currentlocation,7u#+2appr#,v_center(7u#)); + "Small box"; + pickup tiny.nib; + a:=sqrt(3.14159)*0.5*max(7u,dtsz+rth0); + top y1r=top y2r=vround(math_axis+0.5a); + bot y3r=bot y4r=top y1r-vround a; + lft x1r=lft x4r=hround 0.5(w-a); + rt x2r=rt x3r=lft x1r+hround a; + rt x1l-lft x1r=rt x2r-lft x2l + =rt x3r-lft x3l=rt x4l-lft x4r=rth0; + top y1r-bot y1l=top y2r-bot y2l + =top y3l-bot y3r=top y4l-bot y4r=rth0; + filldraw stroke z1e--z2e--z3e--z4e--z1e; + penlabels(1,2,3,4); +endchar; + +beginchar(currentlocation,arithmetic_bounds); + "Large asterisk"; + autorounded; + interim stress:=0.5; pickup null.nib; + numeric b,c,dag_curve,dag_stem; spread:=12u; + b=2.6hair; c=0.625b; dag_curve=round 1.1cap_curve; dag_stem=hair; + % + x0=hround(0.5w-0.5dag_curve)+0.5dag_curve; + y0=0.5[-d,h]; + for $=1 upto 6: z[$]=b*dir($*60+30)+z0; + z[$]'=c*dir($*60+60)+z0; endfor + filldraw for $=1 upto 6: dagger_stroke[$](round(0.5spread-b)+eps, + dag_curve,dag_stem,dir($*60+30))...z[$]'...endfor cycle; + labels(0,1',2',3',4',5',6'); +endchar; + +beginchar(currentlocation,arithmetic_bounds); + "Large co-asterisk"; + autorounded; + interim stress:=0.5; + pickup null.nib; + numeric b,c,dag_curve,dag_stem; spread:=12u; + b=2.6hair; c=0.625b; dag_curve=round 1.1cap_curve; dag_stem=hair; + % + x0=hround(0.5w-0.5dag_curve)+0.5dag_curve; + y0=0.5[-d,h]; + for $=1 upto 6: z[$]=b*dir($*60-60)+z0; + z[$]'=c*dir($*60-30)+z0; endfor + filldraw for $=1 upto 6: dagger_stroke[$](round(0.5spread-b)+eps, + dag_curve,dag_stem,dir($*60-60))...z[$]'...endfor cycle; + labels(0,1',2',3',4',5',6'); +endchar; + +% beginchar(currentlocation,arithmetic_bounds); +% "Top dot truc sign"; +% pickup tiny.nib; +% pos1(rth,0); pos2(rth,0); pos3(rth,90); pos4(rth,90); +% top y1=top y3r=top y4r=h; bot y2=-d; +% lft x1l=hround 0.5(w-rth); x2=x1; +% lft x3=Appr; x1-x3=x4-x1; filldraw stroke z1e..z2e; +% filldraw stroke z3e..z4e; pickup null.nib; +% adjust_dot5((x1,h+u+0.5dtsz),dtsz,true,false); dot(5,5'); +% penlabels(1,2,3,4); +% endchar; + +% beginchar(currentlocation,arithmetic_bounds); +% "Top dot curT sign"; +% pickup tiny.nib; +% pos1(rth,0); pos2(rth,0); pos3(rth,90); pos4(rth,90); +% bot y1=bot y3l=bot y4l=-d; top y2=h; +% lft x1l=hround 0.5(w-rth); x2=x1; +% lft x3=appr; x1-x3=x4-x1; filldraw stroke z2e..z1e; +% filldraw stroke z3e..z4e; pickup null.nib; +% adjust_dot5((x1,h+u+0.5dtsz),dtsz,true,false); dot(5,5'); +% penlabels(1,2,3,4); +% endchar; + +beginchar(currentlocation,arithmetic_bounds); + "Top circ plus sign"; + pickup tiny.nib; + pos1(rth,0); pos2(rth,0); pos3(rth,90); pos4(rth,90); + lft x1l=hround 0.5(w-rth); x2=x1; + lft x3=Appr; x1-x3=x4-x1=y1-y3=y3-y2; y3=y4=math_axis; + filldraw stroke z1e..z2e; % stem + filldraw stroke z3e..z4e; % crossbar + pickup rule.nib0; + adjust_dot5((x1,y3+6u+0.5rth0+1.5u),3u+rth0,true,false); + full_dot:=false; dot(5,5'); + penlabels(1,2,3,4); +endchar; + +beginchar(currentlocation,arithmetic_bounds); + "Plus circle sign"; + pickup tiny.nib; + pos1(rth,0); pos2(rth,0); pos3(rth,90); pos4(rth,90); + lft x1l=hround 0.5(w-rth); x2=x1; + lft x3=Appr; x1-x3=x4-x1=y1-y3=y3-y2; y3=y4=math_axis; + filldraw stroke z1e..z2e; % stem + filldraw stroke z3e..z4e; % crossbar + pickup rule.nib; z0=(x1,y3); + rt x5=ceiling rt 0.75[Appr,w-Appr]+eps; y5=y0; + z5-z0=z0-z7; z6-z0=z0-z8=(z5-z0) rotated 90; + draw superellipse(z5,z6,z7,z8,superness); + penlabels(1,2,3,4); labels(5,6,7,8); +endchar; + +beginchar(currentlocation,arithmetic_bounds); + "Convolution sign"; + numeric darkness; darkness=0.8; + pickup rule.nib; x0=good.x 0.5w; + pickup tiny.nib; rt x1=w-Appr; y0=y1=y1'=y1''=math_axis; + x1'=min(x0+2.5rth,0.5[x0,x1]); x1''=min(x0+1.25rth,0.25[x0,x1]); + forsuffixes $=,': + z1$-z0=z0-z2$; z3$-z0=z0-z4$=(z1$-z0) rotated 45; + z5$-z0=z0-z6$=(z1$-z0) rotated 90; + z7$-z0=z0-z8$=(z1$-z0) rotated -45; + pos1$(rth,90); pos2$(rth,90); pos3$(rth,135); pos4$(rth,135); + pos5$(rth,0); pos6$(rth,0); pos7$(rth,45); pos8$(rth,45); + penlabels(1$,2$,3$,4$,5$,6$,7$,8$); + endfor + z1''-z0=z0-z2''; z3''-z0=z0-z4''=(z1''-z0) rotated 45; + z5''-z0=z0-z6''=(z1''-z0) rotated 90; + z7''-z0=z0-z8''=(z1''-z0) rotated -45; + pos1''(darkness*rth,90); pos2''(darkness*rth,90); + pos3''(darkness*rth,135); pos4''(darkness*rth,135); + pos5''(darkness*rth,0); pos6''(darkness*rth,0); + pos7''(darkness*rth,45); pos8''(darkness*rth,45); + penlabels(1'',2'',3'',4'',5'',6'',7'',8''); + filldraw stroke z2e---z2'e...z2''e---z1''e...z1'e---z1e; + filldraw stroke z4e---z4'e...z4''e---z3''e...z3'e---z3e; + filldraw stroke z5e---z5'e...z5''e---z6''e...z6'e---z6e; + filldraw stroke z8e---z8'e...z8''e---z7''e...z7'e---z7e; +endchar; + +beginchar(currentlocation,arithmetic_bounds); + "Divide on times sign"; + numeric darkness; darkness=0.8; + pickup rule.nib; x0=good.x 0.5w; + pickup tiny.nib; rt x1=w-Appr; y0=y1=y1'=y1''=math_axis; + x1'=min(x0+2.5rth,0.5[x0,x1]); x1''=min(x0+1.25rth,0.25[x0,x1]); + z1-z0=z0-z2; z1'-z0=z0-z2'; z1''-z0=z0-z2''; + z3-z0=z0-z4=(z1-z0) rotated 45; z7-z0=z0-z8=(z1-z0) rotated 135; + pos1(rth,90); pos2(rth,90); pos1'(rth,90); pos2'(rth,90); + pos3(rth,135); pos4(rth,135); pos7(rth,225); pos8(rth,225); + pos1''(darkness*rth,90); pos2''(darkness*rth,90); + filldraw stroke z2e---z2'e...z2''e---z1''e...z1'e---z1e; + filldraw stroke z4e..z3e; filldraw stroke z8e..z7e; + pickup null.nib; + adjust_dot5((x0,y0+5.5u-0.5dtsz),dtsz,true,false); dot(5,5'); + adjust_dot6((x0,y0-5.5u+0.5dtsz),dtsz,true,false); dot(6,6'); + penlabels(1,1',1'',2,2',2'',3,4,7,8); +endchar; + +beginchar(currentlocation,7u#+2appr#,v_center(7u#)); + "Small full diamond"; + pickup tiny.nib; + a:=sqrt(3.14159)*0.5*max(7u,dtsz+rth0)-0.5rth0; + y2=y4=good.y math_axis; x1=x3=good.x 0.5w; + y1-y2=y2-y3=vround(0.5a*sqrt(2)-tiny)+eps; + x2-x1=x1-x4=hround(0.5a*sqrt(2)-tiny)+eps; + fill z1--z2--z3--z4--cycle; + labels(1,2,3,4); +endchar; + +beginchar(currentlocation,7u#+2appr#,v_center(7u#)); + "Small full box"; + pickup tiny.nib; + a:=sqrt(3.14159)*0.5*max(7u-rth0,dtsz); + top y1=top y2=vround(math_axis+0.5a); + bot y3=bot y4=top y1-vround a; + lft x1=lft x4=hround 0.5(w-a); + rt x2=rt x3=lft x1+hround a; + filldraw z1--z4--z3--z2--cycle; + labels(1,2,3,4); +endchar; + +beginchar(currentlocation,arithmetic_bounds); + "Big five star"; + pickup tiny.nib; + draw_star.a((0.5w,math_axis),5,6u+o,0.1,90,false); + labels(a); +endchar; + +beginchar(currentlocation,arithmetic_bounds); + "Big six star"; + pickup tiny.nib; + draw_star.a((0.5w,math_axis),6,6u+o,0.3,90,false); + labels(a); +endchar; + +% hex"10" |