diff options
Diffstat (limited to 'Master/texmf-dist/fonts/source/public/mathabx/mathsubs.mf')
-rw-r--r-- | Master/texmf-dist/fonts/source/public/mathabx/mathsubs.mf | 257 |
1 files changed, 257 insertions, 0 deletions
diff --git a/Master/texmf-dist/fonts/source/public/mathabx/mathsubs.mf b/Master/texmf-dist/fonts/source/public/mathabx/mathsubs.mf new file mode 100644 index 00000000000..8d87cd7d380 --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/mathabx/mathsubs.mf @@ -0,0 +1,257 @@ +% mathematical symbols by Anthony Phan. +% file: mathsubs.mf (subset symbols) +% last modification: May 16, 2005. +% Only known charcodes will be generated. + +% Inclusion signs and related things (relations). +% Some pictures overlap the bottom. It is necessary +% for correct centering of the whole box. +% Spreads for cross bars have been checked. + +def horizontal_rules_list=math_axis, + -body_depth,-desc_depth,x_height,cap_height,asc_height,body_height +enddef; + +%turningcheck:=0; + +use_rule1; + +beginpicture(tmp,12u#+2appr#,v_center(spread2#+rth#)); +pickup tiny.nib; +if main_name_string="subset": + pos1(rth,90); pos2(rth,90); + pos4(rth,270); pos5(rth,270); + y1-y5=spread2; 0.5[y1,y5]=y3=math_axis; y2=y1; y4=y5; + rt x1=rt x5=w-Appr; x3-0.5rth=appr; x2=x4=1/3[x3,x1]; + filldraw stroke z5e..z4e; filldraw stroke z2e..z1e; + pickup rule.nib; autorounded; + draw z2 left_to_down z3 down_to_right z4; +elseif main_name_string="supset": + pos1(rth,90); pos2(rth,90); + pos3(rth,0); pos4(rth,-90); pos 5(rth,-90); + y1-y5=spread2; 0.5[y1,y5]=y3=math_axis; y2=y1; y4=y5; + lft x1=lft x5=Appr; x3+0.5rth=w-appr; x2=x4=1/3[x3,x1]; + filldraw stroke z1e..z2e; filldraw stroke z4e..z5e; + pickup rule.nib; autorounded; + draw z2 right_to_down z3 down_to_left z4; +elseif main_name_string="sqsubset": + pos1(rth,90); pos4(rth,-90); + x2l-x2r=x3l-x3r=rth-tiny; + y1-y4=spread2; 0.5[y1,y4]=math_axis; + rt x1=rt x4=w-Appr; lft x2r=lft x3r=Appr; + forsuffixes $=r,l: y1$=y2$; y3$=y4$; endfor + filldraw stroke z4e--z3e--z2e--z1e; +else: + pos1(rth,90); pos4(rth,-90); + x2r-x2l=x3r-x3l=rth-tiny; + y1-y4=spread2; 0.5[y1,y4]=math_axis; + lft x1=lft x4=Appr; rt x2r=rt x3r=w-Appr; + forsuffixes $=r,l: y1$=y2$; y3$=y4$; endfor + filldraw stroke z1e--z2e--z3e--z4e; +fi +endpicture; + +beginchar(main_name_with(), + 12u#+2appr#,v_center(spread2#+rth#)); + main_name_string&" sign"; + currentpicture:=tmp_picture; +endchar; + +beginchar(main_name_with(_not), + 12u#+2appr#,asc_height#,asc_depth#); + "not "&main_name_string&" sign"; + currentpicture:=tmp_picture; + pickup tiny.nib; + pos1(rth,0); pos2(rth,0); + v_adjust(1l,2l,math_axis,max(h+d,spread2+spread1)); + lft x1l=lft x2l=hround 0.5(w-rth); + filldraw stroke z1e..z2e; penlabels(1,2); +endchar; + +beginchar(main_name_with(_eq), + 12u#+2appr#,v_center(spread2#+rth#+spread1#)); + main_name_string&" or equal sign"; + currentpicture:=tmp_picture + shifted(0,0.5spread1); + pickup tiny.nib; + pos1(rth,90); pos2(rth,90); + y1=y2=math_axis-0.5(spread2+spread1); + lft x1=Appr; rt x2=w-Appr; + filldraw stroke z1e..z2e; penlabels(1,2); + tmp_picture:=currentpicture; +endchar; + +beginchar(main_name_with(_not_eq), + 12u#+2appr#,asc_height#,asc_depth#); + "not "&main_name_string&" nor equal sign"; + currentpicture:=tmp_picture; + pickup tiny.nib; + pos1(rth,0); pos2(rth,0); + v_adjust(1l,2l,math_axis,max(h+d,spread2+2spread1)); + lft x1l=lft x2l=hround 0.5(w-rth); + filldraw stroke z1e..z2e; penlabels(1,2); +endchar; + +beginchar(main_name_with(_eq_not), + 12u#+2appr#,v_center(spread2#+rth#+spread1#)); + main_name_string&" but not equal sign"; + currentpicture:=tmp_picture; + pickup tiny.nib; + y0=math_axis-0.5(spread2+spread1); + x0=0.5w; + v_adjust(1r,2l,y0,1.5spread1-0.5rth); + lft x2l-Appr=w-Appr-rt x1r=hround 3.5u; + adjust_slanted_bar(2l,1r,2r,1l)(rth-tiny,-1); + filldraw stroke z1e..z2e; penlabels(0,1,2); +endchar; + +beginchar(main_name_with(_eq_varnot), + 12u#+2appr#,v_center(spread2#+rth#+spread1#)); + "variant "&main_name_string&" but not equal sign"; + currentpicture:=tmp_picture; + pickup tiny.nib; + y0=math_axis-0.5spread2; x0=0.5w; + v_adjust(1r,2l,y0,2.5spread1-0.5rth); + lft x2l-Appr=w-Appr-rt x1r=hround 2.75u; + adjust_slanted_bar(2l,1r,2r,1l)(rth-tiny,-1); + filldraw stroke z1e..z2e; penlabels(0,1,2); +endchar; + +beginchar(main_name_with(_eqq), + 12u#+2appr#,v_center(spread2#+rth#+2spread1#)); + main_name_string&" or equal-equal sign"; + currentpicture:=tmp_picture shifted(0,0.5spread1); + pickup tiny.nib; + pos1(rth,90); pos2(rth,90); + y1=y2=math_axis+spread1-0.5spread2-2spread1; + lft x1=Appr; rt x2=w-Appr; + filldraw stroke z1e..z2e; penlabels(1,2); + tmp_picture:=currentpicture; +endchar; + +beginchar(main_name_with(_not_eqq), + 12u#+2appr#,asc_height#,asc_depth#); + "not "&main_name_string&" nor equal-equal sign"; + currentpicture:=tmp_picture; + pickup tiny.nib; + pos1(rth,0); pos2(rth,0); + v_adjust(1l,2l,math_axis,max(h+d,spread2+3spread1)); + lft x1l=lft x2l=hround 0.5(w-rth); + filldraw stroke z1e..z2e; penlabels(1,2); +endchar; + +beginchar(main_name_with(_eqq_not), + 12u#+2appr#,v_center(spread2#+rth#+2spread1#)); + main_name_string&" but not equal-equal sign"; + currentpicture:=tmp_picture; + pickup tiny.nib; + y0=math_axis-0.5(spread2+spread1); + x0=0.5w; + v_adjust(1r,2l,y0,2.5spread1-0.5rth); + lft x2l-Appr=w-Appr-rt x1r=hround 2.75u; + adjust_slanted_bar(2l,1r,2r,1l)(rth-tiny,-1); + filldraw stroke z1e..z2e; penlabels(0,1,2); +endchar; + +beginchar(main_name_with(_eqq_varnot), + 12u#+2appr#,v_center(spread2#+rth#+2spread1#)); + "variant "&main_name_string&" but not equal-equal sign"; + currentpicture:=tmp_picture; + pickup tiny.nib; + y0=math_axis-0.5(spread2); x0=0.5w; + v_adjust(1r,2l,y0,3.5spread1-0.5rth); + lft x2l-Appr=w-Appr-rt x1r=hround 2.25u; + adjust_slanted_bar(2l,1r,2r,1l)(rth-tiny,-1); + filldraw stroke z1e..z2e; penlabels(0,1,2); +endchar; + +beginchar(main_name_with(_double), + arithmetic_bounds); + main_name_string&" double sign"; + pickup tiny.nib; + numeric a; a=0.5min(spread2,0.5(h+d-rth)); + if main_name_string="subset": + rt x1=rt x5=w-appr; rt x6=rt x10=w-Appr; + y1-y5=4vround a; y6-y10=2vround a; + y3=y8=0.5[y1,y5]=0.5[y6,y10]=math_axis; + y2=y1; y4=y5; y7=y6; y9=y10; + pos1(rth,90); pos2(rth,90); + pos3(rth,180); pos4(rth,270); pos5(rth,270); + pos6(rth,90); pos7(rth,90); + pos8(rth,180); pos9(rth,270); pos10(rth,270); + lft x3r=appr; x8-x3=hround a; + x2=x4=x7=x9=1/3[x8,x6]; + filldraw stroke z5e..z4e left_to_up + z3e up_to_right z2e..z1e; + filldraw stroke z10e..z9e left_to_up + z8e up_to_right z7e..z6e; + penlabels(1,2,3,4,5,6,7,8,9,10); + elseif main_name_string="supset": + lft x1=lft x5=appr; lft x6=lft x10=Appr; + y1-y5=4vround a; y6-y10=2vround a; + y3=y8=0.5[y1,y5]=0.5[y6,y10]=math_axis; + y2=y1; y4=y5; y7=y6; y9=y10; + pos1(rth,90); pos2(rth,90); + pos3(rth,0); pos4(rth,270); pos5(rth,270); + pos6(rth,90); pos7(rth,90); + pos8(rth,0); pos9(rth,270); pos10(rth,270); + rt x3r=w-appr; x8-x3=-hround a; + x2=x4=x7=x9=1/3[x8,x6]; + filldraw stroke z1e..z2e right_to_down + z3e down_to_left z4e..z5e; + filldraw stroke z6e..z7e right_to_down + z8e down_to_left z9e..z10e; + penlabels(1,2,3,4,5,6,7,8,9,10); + elseif main_name_string="sqsubset": + rt x1=rt x5=w-appr; rt x6=rt x10=w-Appr; + y1-y5=4vround a; y6-y10=2vround a; + y3=y8=0.5[y1,y5]=0.5[y6,y10]=math_axis; + lft x3r=Appr; x8-x3=hround a; + pos1(rth,90); pos3(rth,180); pos5(rth,270); + pos6(rth,90); pos8(rth,180); pos10(rth,270); + forsuffixes $=,r,l: x2$=x3$=x4$; y1$=y2$; y4$=y5$; + x7$=x8$=x9$; y6$=y7$; y9$=y10$; endfor + filldraw stroke z5e--z4e--z2e--z1e; + filldraw stroke z10e--z9e--z7e--z6e; + penlabels(1,2,3,4,5,6,7,8,9,10); + else: + lft x1=lft x5=appr; lft x6=lft x10=Appr; + y1-y5=4vround a; y6-y10=2vround a; + y3=y8=0.5[y1,y5]=0.5[y6,y10]=math_axis; + rt x3r=w-Appr; x8-x3=-hround a; + pos1(rth,90); pos3(rth,0); pos5(rth,270); + pos6(rth,90); pos8(rth,0); pos10(rth,270); + forsuffixes $=,r,l: x2$=x3$=x4$; y1$=y2$; y4$=y5$; + x7$=x8$=x9$; y6$=y7$; y9$=y10$; endfor + filldraw stroke z1e--z2e--z4e--z5e; + filldraw stroke z6e--z7e--z9e--z10e; + penlabels(1,2,3,4,5,6,7,8,9,10); + fi + tmp_picture:=currentpicture; +endchar; + +beginchar(main_name_with(_double_not), + 12u#+2appr#,asc_height#,asc_depth#); + "not "&main_name_string&" double sign"; + currentpicture:=tmp_picture; + pickup tiny.nib; + numeric a; a= + if (main_name_string="subset") + or (main_name_string="sqsubset"): - fi + 0.5min(spread2,0.5(h+d-rth)); + pos1(rth,0); pos2(rth,0); + v_adjust(1l,2l,math_axis,max(h+d,12u+spread1)); + lft x1l=lft x2l=hround 0.5(w-0.5rth-0.5a); + filldraw stroke z1e..z2e; penlabels(1,2); +endchar; + +beginchar(main_name_with(_dot), + 12u#+2appr#,v_center(spread2#+rth#)); + main_name_string&" with dot sign"; + currentpicture:=tmp_picture; + adjust_dot1((math_axis, + if (main_name_string="subset") + or (main_name_string="sqsubset"): w-appr-0.5dtsz + else: appr+0.5dtsz fi),dtsz,true,false); + dot(1,1'); +endchar; |