diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
commit | e0c6872cf40896c7be36b11dcc744620f10adf1d (patch) | |
tree | 60335e10d2f4354b0674ec22d7b53f0f8abee672 /fonts/sansmathfonts/source/sans-bigop.mf |
Initial commit
Diffstat (limited to 'fonts/sansmathfonts/source/sans-bigop.mf')
-rw-r--r-- | fonts/sansmathfonts/source/sans-bigop.mf | 428 |
1 files changed, 428 insertions, 0 deletions
diff --git a/fonts/sansmathfonts/source/sans-bigop.mf b/fonts/sansmathfonts/source/sans-bigop.mf new file mode 100644 index 0000000000..e58aa5abcc --- /dev/null +++ b/fonts/sansmathfonts/source/sans-bigop.mf @@ -0,0 +1,428 @@ +% Based on the Computer Modern source file bigop.mf by D E Knuth. + +% Edited by Ariel Barton to produce better sans serif symbols + +% Date: 2013/03/22 + +% This file contains pairs of large operators for math extension fonts. + +% Each operator has a `{\tt\char`\\textstyle}' form, for math in text, +% and a `{\tt\char`\\displaystyle}' form, for displayed formulas. + +% Character codes \0106--\0141 are generated. + +charlist oct"106": oct"107"; % square union signs +charlist oct"110": oct"111"; % contour integral signs +charlist oct"112": oct"113"; % circle-dot operators +charlist oct"114": oct"115"; % circle-plus operators +charlist oct"116": oct"117"; % circle-times operators +charlist oct"120": oct"130"; % summation signs +charlist oct"121": oct"131"; % product signs +charlist oct"122": oct"132"; % integral signs +charlist oct"123": oct"133"; % union signs +charlist oct"124": oct"134"; % intersection signs +charlist oct"125": oct"135"; % multiset union signs +charlist oct"126": oct"136"; % lattice infimum signs +charlist oct"127": oct"137"; % lattice supremum signs +charlist oct"140": oct"141"; % coproduct signs + +cmchar "\textstyle square set union sign"; +beginchar(oct"106",15u#,0,10/6dh#); +adjust_fit(0,0); pickup pencircle scaled stem; +lft x1=hround u; x2=x1; x4=x5=w-x1; +top y1=eps; bot y2=-d; y4=y2; y5=y1; +draw z1---z2---z4---z5; % stems and bar +labels(1,2,4,5); endchar; + +cmchar "\displaystyle square set union sign"; +beginchar(oct"107",20u#,0,14/6dh#); padded 1/6dh#; +adjust_fit(0,0); pickup pencircle scaled curve; +lft x1=hround u; x2=x1; x4=x5=w-x1; +top y1=eps; bot y2=-d; y4=y2; y5=y1; +draw z1---z2---z4---z5; % stems and bar +labels(1,2,4,5); endchar; + +cmchar "\textstyle circle-dot operator"; +beginchar(oct"112",20u#,0,10/6dh#); +adjust_fit(0,0); pickup pencircle scaled stem; +lft x6=hround u; x2=w-x6; top y8=0; bot y4=-d; +circle_points; draw_circle; % circle +fill fullcircle scaled(bold+4bigdw+eps) shifted(.5[z4,z8]); % dot +labels(1,2,3,4,5,6,7,8); endchar; + +cmchar "\displaystyle circle-dot operator"; +beginchar(oct"113",27.2u#,0,14/6dh#); padded 1/6dh#; +adjust_fit(0,0); pickup pencircle scaled curve; +lft x6=hround u; x2=w-x6; top y8=0; bot y4=-d; +circle_points; draw_circle; % circle +fill fullcircle scaled(bold+6bigdw+eps) shifted(.5[z4,z8]); % dot +labels(1,2,3,4,5,6,7,8); endchar; + +cmchar "\textstyle circle-plus operator"; +beginchar(oct"114",20u#,0,10/6dh#); +adjust_fit(0,0); pickup pencircle scaled stem; +lft x6=hround u; x2=w-x6; top y8=0; bot y4=-d; +circle_points; draw_circle; % circle +draw z2--z6; draw z4--z8; % plus +labels(1,2,3,4,5,6,7,8); endchar; + +cmchar "\displaystyle circle-plus operator"; +beginchar(oct"115",27.2u#,0,14/6dh#); padded 1/6dh#; +adjust_fit(0,0); pickup pencircle scaled curve; +lft x6=hround u; x2=w-x6; top y8=0; bot y4=-d; +circle_points; draw_circle; % circle +draw z2--z6; draw z4--z8; % plus +labels(1,2,3,4,5,6,7,8); endchar; + +cmchar "\textstyle circle-times operator"; +beginchar(oct"116",20u#,0,10/6dh#); +adjust_fit(0,0); pickup pencircle scaled stem; +lft x6=hround u; x2=w-x6; top y8=0; bot y4=-d; +circle_points; draw_circle; % circle +draw z1--z5; draw z3--z7; % times +labels(1,2,3,4,5,6,7,8); endchar; + +cmchar "\displaystyle circle-times operator"; +beginchar(oct"117",27.2u#,0,14/6dh#); padded 1/6dh#; +adjust_fit(0,0); pickup pencircle scaled curve; +lft x6=hround u; x2=w-x6; top y8=0; bot y4=-d; +circle_points; draw_circle; % circle +draw z1--z5; draw z3--z7; % times +labels(1,2,3,4,5,6,7,8); endchar; + +cmchar "\textstyle summation sign"; +beginchar(oct"120",19u#,0,10/6dh#); +adjust_fit(0,0); pickup tiny.nib; +numeric top_arm_thickness, bot_arm_thickness, thick_stem, thin_stem; +if serifs: + thick_stem = curve; + thin_stem = rule_thickness; + top_arm_thickness=Vround rule_thickness; + bot_arm_thickness=Vround .9(.5[rule_thickness,curve]); +else: + thick_stem = cap_stem+2bigdw; % Sigma is cap_stem + thin_stem = cap_hair; % Sigma is cap_hair + top_arm_thickness=Vround thin_stem; + bot_arm_thickness=Vround thick_stem; +fi +lft x1l=hround u; x1l=x2l=x4l; x3l-x1l=4/11(w-2u); +top y1=0; bot y2=-top_arm_thickness-eps; bot y4=-d; y3=-.5d; +numeric alpha[]; alpha1=((x3l-x1l)++(y2-y3))/(y2-y3); +penpos1(alpha1*(thick_stem-tiny),0); +penpos2(alpha1*(thick_stem-tiny),0); +penpos3(alpha1*(thick_stem-tiny),0); +alpha2=diag_ratio(1,thin_stem-tiny,y3-y4,x3r-x4l); +penpos4(alpha2*(thin_stem-tiny),0); +z0=whatever[z2l,z3l]=z4l+whatever*(z3r-z4r); +filldraw z1l--z2l--z0--z4l--z4r--z3r--z2r--z1r--cycle; % diagonals +pickup crisp.nib; pos5(top_arm_thickness,90); pos6(hair,0); +top y5r=0; x5=x1; rt x6r=hround(w-u); y6=good.y(y5l-beak)-eps; +arm(5,6,a,.45,17/11u); % upper arm and beak +pos7(bot_arm_thickness,-90); pos8(hair,0); +bot y7r=-d; z7l=whatever[z4,z3]; x7r:=x4; x8=x6; y8=good.y(y7l+beak)+eps; +arm(7,8,b,.45,17/11u); % lower arm and beak +penlabels(0,1,2,3,4,5,6,7,8); endchar; + +cmchar "\displaystyle summation sign"; +beginchar(oct"130",26u#,0,14/6dh#); padded 1/6dh#; +adjust_fit(0,0); pickup tiny.nib; +numeric top_arm_thickness, bot_arm_thickness, thick_stem, thin_stem; +if serifs: + thick_stem=bold+4bigdw; thin_stem=rule_thickness+bigdw; + top_arm_thickness=Vround .9thin_stem; + bot_arm_thickness=Vround .9(.5[thin_stem,thick_stem]); +else: + thin_stem=cap_hair; + thick_stem=cap_stem+4bigdw; + top_arm_thickness = Vround thin_stem; + bot_arm_thickness = Vround thick_stem; +fi +lft x1l=hround u; x1l=x2l=x4l; x3l-x1l=4/11(w-2u); +top y1=0; bot y2=-top_arm_thickness-eps; bot y4=-d; y3=-.5d; +numeric alpha[]; alpha1=((x3l-x1l)++(y2-y3))/(y2-y3); +penpos1(alpha1*(thick_stem-tiny),0); +penpos2(alpha1*(thick_stem-tiny),0); +penpos3(alpha1*(thick_stem-tiny),0); +alpha2=diag_ratio(1,thin_stem-tiny,y3-y4,x3r-x4l); +penpos4(alpha2*(thin_stem-tiny),0); +z0=whatever[z2l,z3l]=z4l+whatever*(z3r-z4r); +filldraw z1l--z2l--z0--z4l--z4r--z3r--z2r--z1r--cycle; % diagonals +pickup crisp.nib; pos5(top_arm_thickness,90); pos6(hair,0); +top y5r=0; x5=x1; rt x6r=hround(w-u); y6=good.y(y5l-1.2beak)-eps; +arm(5,6,a,.45,24/11u); % upper arm and beak +pos7(bot_arm_thickness,-90); pos8(hair,0); +bot y7r=-d; z7l=whatever[z4,z3]; x7r:=x4; x8=x6; y8=good.y(y7l+1.2beak)+eps; +arm(7,8,b,.45,24/11u); % lower arm and beak +penlabels(0,1,2,3,4,5,6,7,8); endchar; + +cmchar "\textstyle product sign"; +beginchar(oct"121",17u#,0,10/6dh#); +adjust_fit(0,0); pickup crisp.nib; +numeric heavy_stem,light_stem; +heavy_stem=hround(bold+bigdw); light_stem=rule_thickness if hefty: + 0.5bigdw fi; +pos1(heavy_stem,0);pos2(heavy_stem,0); pos1'(heavy_stem,0);pos2'(heavy_stem,0); +pos11(light_stem,90); pos12(light_stem,90); pos22(light_stem,90); +lft x11=hround u; +x1l-x11=hround I_cap_jut; +x2l-x12=x22-x2r=hround cap_jut; +x1=x1'=x2=x2'; +top y1=0; bot y2=-d; y11r=y1; y12l=y22l=y2; +y11l-y1'=y2'-y12r=1.2bracket; +filldraw z1r--z11r--serif_arc(11l,1'l)--reverse serif_arc(12r,2'l) + --z12l--z22l--serif_arc(22r,2'r)--cycle; % left stem and serifs +pos3(heavy_stem,0);pos4(heavy_stem,0); pos3'(heavy_stem,0);pos4'(heavy_stem,0); +pos13(light_stem,90); pos14(light_stem,90); pos24(light_stem,90); +x3=x3'=x4=x4'=w-x1; x13=w-x11; x14=w-x12; x24=w-x22; +y3=y13r=y1; y3'=y1'; y4'=y2'; y4=y14l=y24l=y2; +filldraw z3l--z13r--serif_arc(13l,3'r)--reverse serif_arc(14r,4'r) + --z14l--z24l--serif_arc(24r,4'l)--cycle; % right stem and serifs +filldraw stroke z11e--z13e; % bar +penlabels(1,1',2,2',3,3',4,4',11,12,13,14,22,24); endchar; + +cmchar "\displaystyle product sign"; +beginchar(oct"131",23u#,0,14/6dh#); padded 1/6dh#; +adjust_fit(0,0); pickup crisp.nib; +numeric heavy_stem,light_stem; +heavy_stem=hround(bold+5bigdw); light_stem=Vround(rule_thickness+bigdw); +pos1(heavy_stem,0);pos2(heavy_stem,0); pos1'(heavy_stem,0);pos2'(heavy_stem,0); +pos11(light_stem,90); pos12(light_stem,90); pos22(light_stem,90); +lft x11=hround u; +x1l-x11=hround 1.6 I_cap_jut; +x2l-x12=x22-x2r=hround 1.6cap_jut; +x1=x1'=x2=x2'; +top y1=0; bot y2=-d; y11r=y1; y12l=y22l=y2; +y11l-y1'=y2'-y12r=1.8bracket; +filldraw z1r--z11r--serif_arc(11l,1'l)--reverse serif_arc(12r,2'l) + --z12l--z22l--serif_arc(22r,2'r)--cycle; % left stem and serifs +pos3(heavy_stem,0);pos4(heavy_stem,0); pos3'(heavy_stem,0);pos4'(heavy_stem,0); +pos13(light_stem,90); pos14(light_stem,90); pos24(light_stem,90); +x3=x3'=x4=x4'=w-x1; x13=w-x11; x14=w-x12; x24=w-x22; +y3=y13r=y1; y3'=y1'; y4'=y2'; y4=y14l=y24l=y2; +filldraw z3l--z13r--serif_arc(13l,3'r)--reverse serif_arc(14r,4'r) + --z14l--z24l--serif_arc(24r,4'l)--cycle; % right stem and serifs +filldraw stroke z11e--z13e; % bar +penlabels(1,1',2,2',3,3',4,4',11,12,13,14,22,24); endchar; + +cmchar "\textstyle coproduct sign"; +beginchar(oct"140",17u#,0,10/6dh#); +adjust_fit(0,0); pickup crisp.nib; +numeric heavy_stem,light_stem; +heavy_stem=hround(bold+bigdw); light_stem=rule_thickness if hefty: + 0.5bigdw fi; +pos1(heavy_stem,0);pos2(heavy_stem,0); pos1'(heavy_stem,0);pos2'(heavy_stem,0); +pos11(light_stem,-90); pos12(light_stem,-90); pos22(light_stem,-90); +lft x11=hround u; +x1l-x11=hround I_cap_jut; +x2l-x12=x22-x2r=hround cap_jut; +x1=x1'=x2=x2'; +bot y1=-d; top y2=0; y11r=y1; y12l=y22l=y2; +y1'-y11l=y12r-y2'=1.2bracket; +filldraw z1r--z11r--serif_arc(11l,1'l)--reverse serif_arc(12r,2'l) + --z12l--z22l--serif_arc(22r,2'r)--cycle; % left stem and serifs +pos3(heavy_stem,0);pos4(heavy_stem,0); pos3'(heavy_stem,0);pos4'(heavy_stem,0); +pos13(light_stem,-90); pos14(light_stem,-90); pos24(light_stem,-90); +x3=x3'=x4=x4'=w-x1; x13=w-x11; x14=w-x12; x24=w-x22; +y3=y13r=y1; y3'=y1'; y4'=y2'; y4=y14l=y24l=y2; +filldraw z3l--z13r--serif_arc(13l,3'r)--reverse serif_arc(14r,4'r) + --z14l--z24l--serif_arc(24r,4'l)--cycle; % right stem and serifs +filldraw stroke z11e--z13e; % bar +penlabels(1,1',2,2',3,3',4,4',11,12,13,14,22,24); endchar; + +cmchar "\displaystyle coproduct sign"; +beginchar(oct"141",23u#,0,14/6dh#); padded 1/6dh#; +adjust_fit(0,0); pickup crisp.nib; +numeric heavy_stem,light_stem; +heavy_stem=hround(bold+5bigdw); light_stem=Vround(rule_thickness+bigdw); +pos1(heavy_stem,0);pos2(heavy_stem,0); pos1'(heavy_stem,0);pos2'(heavy_stem,0); +pos11(light_stem,-90); pos12(light_stem,-90); pos22(light_stem,-90); +lft x11=hround u; +x1l-x11=hround 1.6 I_cap_jut; +x2l-x12=x22-x2r=hround 1.6cap_jut; +x1=x1'=x2=x2'; +bot y1=-d; top y2=0; y11r=y1; y12l=y22l=y2; +y1'-y11l=y12r-y2'=1.8bracket; +filldraw z1r--z11r--serif_arc(11l,1'l)--reverse serif_arc(12r,2'l) + --z12l--z22l--serif_arc(22r,2'r)--cycle; % left stem and serifs +pos3(heavy_stem,0);pos4(heavy_stem,0); pos3'(heavy_stem,0);pos4'(heavy_stem,0); +pos13(light_stem,-90); pos14(light_stem,-90); pos24(light_stem,-90); +x3=x3'=x4=x4'=w-x1; x13=w-x11; x14=w-x12; x24=w-x22; +y3=y13r=y1; y3'=y1'; y4'=y2'; y4=y14l=y24l=y2; +filldraw z3l--z13r--serif_arc(13l,3'r)--reverse serif_arc(14r,4'r) + --z14l--z24l--serif_arc(24r,4'l)--cycle; % right stem and serifs +filldraw stroke z11e--z13e; % bar +penlabels(1,1',2,2',3,3',4,4',11,12,13,14,22,24); endchar; + +cmchar "\textstyle integral sign"; +beginchar(oct"122",12u#,0,100/54dh#); +italcorr 3.5u#; % \TeX\ kerning between upper limit and lower limit +adjust_fit(0,-ic#); pickup fine.nib; +if serifs: +pos2(hair,0); pos8(hair,-180); +else: +pos2(vair,0); pos8(vair,-180); +fi +pos1(curve,0); pos3(vair,90); pos4(stem,180); +pos5(curve,180); pos5'(curve,0); z5'=z5; pos6(stem,0); +pos7(vair,-90); pos9(curve,-180); +rt x1r=hround(w-u); x9=w-x1; x7=w-x3=3u; +x5=.5[x4,x6]; x4-x6=1.2u; lft x5r=hround(.5w-.5curve); +top y3r=0; bot y7r=-d; y9-.5curve=vround(top y7l+.25curve); +y3-y1=y9-y7; y5=.5[y3,y7]=.5[y4,y6]; y4-y6=.6(y3-y7); +sansbulb(3,2,1); sansbulb(7,8,9); % bulbs +filldraw stroke z3e{left}...z4e{(z5e-z4e)xscaled 1.1} + ..tension atleast 1 and atleast .8..{z5-z4}z5e; % upper stem +filldraw stroke z5'e{z6-z5}..tension atleast.8 and atleast 1 + ..{(z6e-z5'e)xscaled 1.1}z6e...{left}z7e; % lower stem +penlabels(1,2,3,4,5,6,7,8,9); endchar; + +cmchar "\displaystyle integral sign"; +beginchar(oct"132",18u#,0,200/54dh#); +italcorr 8u#; % \TeX\ kerning between upper limit and lower limit +adjust_fit(0,-ic#); pickup fine.nib; +numeric bulb_size, max_size; +bulb_size=hround(bold+bigdw); max_size=hround(bold+2bigdw); +pos1(bulb_size,0); pos2(hair,0); pos3(vair,90); pos4(bold,180); +pos5(max_size,180); pos5'(max_size,0); z5'=z5; pos6(bold,0); +pos7(vair,-90); pos8(hair,-180); pos9(bulb_size,-180); +rt x1r=hround(w-u); x9=w-x1; x7=w-x3=3u; +x5=.5[x4,x6]; x4-x6=4.8u; lft x5r=hround(.5w-.5max_size); +top y3r=0; bot y7r=-d; +y9-.5bulb_size=vround(top y7l+.25bulb_size); y3-y1=y9-y7; +y5=.5[y3,y7]=.5[y4,y6]; y4-y6=.6(y3-y7); +sansbulb(3,2,1); sansbulb(7,8,9); % bulbs +filldraw stroke z3e{left}...z4e{(z5e-z4e)xscaled 1.1} + ..tension atleast 1 and atleast .8..{z5-z4}z5e; % upper stem +filldraw stroke z5'e{z6-z5}..tension atleast.8 and atleast 1 + ..{(z6e-z5'e)xscaled 1.1}z6e...{left}z7e; % lower stem +penlabels(1,2,3,4,5,6,7,8,9); endchar; + +cmchar "\textstyle contour integral sign"; +beginchar(oct"110",12u#,0,100/54dh#); +italcorr 3.5u#; % \TeX\ kerning between upper limit and lower limit +adjust_fit(0,-ic#); pickup fine.nib; +if serifs: +pos2(hair,0); pos8(hair,-180); +else: +pos2(vair,0); pos8(vair,-180); +fi +pos1(curve,0); pos3(vair,90); pos4(stem,180); +pos5(curve,180); pos5'(curve,0); z5'=z5; pos6(stem,0); +pos7(vair,-90); pos9(curve,-180); +rt x1r=hround(w-u); x9=w-x1; x7=w-x3=3u; +x5=.5[x4,x6]; x4-x6=1.2u; lft x5r=hround(.5w-.5curve); +top y3r=0; bot y7r=-d; y9-.5curve=vround(top y7l+.25curve); +y3-y1=y9-y7; y5=.5[y3,y7]=.5[y4,y6]; y4-y6=.6(y3-y7); +sansbulb(3,2,1); sansbulb(7,8,9); % bulbs +filldraw stroke z3e{left}...z4e{(z5e-z4e)xscaled 1.1} + ..tension atleast 1 and atleast .8..{z5-z4}z5e; % upper stem +filldraw stroke z5'e{z6-z5}..tension atleast.8 and atleast 1 + ..{(z6e-z5'e)xscaled 1.1}z6e...{left}z7e; % lower stem +pickup rule.nib; autorounded; +draw fullcircle scaled .5w shifted z5; % contour +penlabels(1,2,3,4,5,6,7,8,9); endchar; + +cmchar "\displaystyle contour integral sign"; +beginchar(oct"111",18u#,0,200/54dh#); +italcorr 8u#; % \TeX\ kerning between upper limit and lower limit +adjust_fit(0,-ic#); pickup fine.nib; +numeric bulb_size, max_size; +bulb_size=hround(bold+bigdw); max_size=hround(bold+2bigdw); +pos1(bulb_size,0); pos2(hair,0); pos3(vair,90); pos4(bold,180); +pos5(max_size,180); pos5'(max_size,0); z5'=z5; pos6(bold,0); +pos7(vair,-90); pos8(hair,-180); pos9(bulb_size,-180); +rt x1r=hround(w-u); x9=w-x1; x7=w-x3=3u; +x5=.5[x4,x6]; x4-x6=4.8u; lft x5r=hround(.5w-.5max_size); +top y3r=0; bot y7r=-d; +y9-.5bulb_size=vround(top y7l+.25bulb_size); y3-y1=y9-y7; +y5=.5[y3,y7]=.5[y4,y6]; y4-y6=.6(y3-y7); +sansbulb(3,2,1); sansbulb(7,8,9); % bulbs +filldraw stroke z3e{left}...z4e{(z5e-z4e)xscaled 1.1} + ..tension atleast 1 and atleast .8..{z5-z4}z5e; % upper stem +filldraw stroke z5'e{z6-z5}..tension atleast.8 and atleast 1 + ..{(z6e-z5'e)xscaled 1.1}z6e...{left}z7e; % lower stem +pickup rule.nib; autorounded; +draw fullcircle scaled .5w shifted z5; % contour +penlabels(1,2,3,4,5,6,7,8,9); endchar; + +cmchar "\textstyle set union sign"; +beginchar(oct"123",15u#,0,10/6dh#); +adjust_fit(0,0); pickup pencircle scaled stem; +lft x1=hround u; x2=x1; x3=w-x3; x4=x5=w-x1; +top y1=eps; bot y3=-d; y2=y4=2/3[y1,y3]; y5=y1; +draw z1---z2...z3...z4---z5; % stems and cup +labels(1,2,3,4,5); endchar; + +cmchar "\displaystyle set union sign"; +beginchar(oct"133",20u#,0,14/6dh#); padded 1/6dh#; +adjust_fit(0,0); pickup pencircle scaled curve; +lft x1=hround u; x2=x1; x3=w-x3; x4=x5=w-x1; +top y1=eps; bot y3=-d; y2=y4=2/3[y1,y3]; y5=y1; +draw z1---z2...z3...z4---z5; % stems and cup +labels(1,2,3,4,5); endchar; + +cmchar "\textstyle set intersection sign"; +beginchar(oct"124",15u#,0,10/6dh#); +adjust_fit(0,0); pickup pencircle scaled stem; +lft x1=hround u; x2=x1; x3=w-x3; x4=x5=w-x1; +top y3=0; bot y1=-d-eps; y2=y4=2/3[y1,y3]; y5=y1; +draw z1---z2...z3...z4---z5; % stems and cap +labels(1,2,3,4,5); endchar; + +cmchar "\displaystyle set intersection sign"; +beginchar(oct"134",20u#,0,14/6dh#); padded 1/6dh#; +adjust_fit(0,0); pickup pencircle scaled curve; +lft x1=hround u; x2=x1; x3=w-x3; x4=x5=w-x1; +top y3=0; bot y1=-d-eps; y2=y4=2/3[y1,y3]; y5=y1; +draw z1---z2...z3...z4---z5; % stems and cap +labels(1,2,3,4,5); endchar; + +cmchar "\textstyle multiset union sign"; +beginchar(oct"125",15u#,0,10/6dh#); +adjust_fit(0,0); pickup pencircle scaled stem; +lft x1=hround u; x2=x1; x3=w-x3; x4=x5=w-x1; +top y1=eps; bot y3=-d; y2=y4=2/3[y1,y3]; y5=y1; +draw z1---z2...z3...z4---z5; % stems and cup +y8=y9=.47[y1,y3]; x8=w-x9=x1+2stem+eps; x6=x7=x3; +.5[y6,y7]=y8; y7-y6=x9-x8; draw z8--z9; draw z6--z7; % enclosed `$+$' +labels(1,2,3,4,5,6,7,8,9); endchar; + +cmchar "\displaystyle multiset union sign"; +beginchar(oct"135",20u#,0,14/6dh#); padded 1/6dh#; +adjust_fit(0,0); pickup pencircle scaled curve; +lft x1=hround u; x2=x1; x3=w-x3; x4=x5=w-x1; +top y1=eps; bot y3=-d; y2=y4=2/3[y1,y3]; y5=y1; +draw z1---z2...z3...z4---z5; % stems and cup +y8=y9=.47[y1,y3]; x8=w-x9=x1+2curve+eps; x6=x7=x3; +.5[y6,y7]=y8; y7-y6=x9-x8; draw z8--z9; draw z6--z7; % enclosed `$+$' +labels(1,2,3,4,5,6,7,8,9); endchar; + +cmchar "\textstyle lattice infimum sign"; +beginchar(oct"126",15u#,0,10/6dh#); +adjust_fit(0,0); pickup pencircle scaled stem; +lft x1=hround u-eps; x3=w-x3; x5=w-x1; +top y3=0; bot y1=-d-eps; y5=y1; +draw z1--z3--z5; % diagonals +labels(1,3,5); endchar; + +cmchar "\displaystyle lattice infimum sign"; +beginchar(oct"136",20u#,0,14/6dh#); padded 1/6dh#; +adjust_fit(0,0); pickup pencircle scaled curve; +lft x1=hround u-eps; x3=w-x3; x5=w-x1; +top y3=0; bot y1=-d-eps; y5=y1; +draw z1--z3--z5; % diagonals +labels(1,3,5); endchar; + +cmchar "\textstyle lattice supremum sign"; +beginchar(oct"127",15u#,0,10/6dh#); +adjust_fit(0,0); pickup pencircle scaled stem; +lft x1=hround u-eps; x3=w-x3; x5=w-x1; +top y1=eps; bot y3=-d; y5=y1; +draw z1--z3--z5; % diagonals +labels(1,3,5); endchar; + +cmchar "\displaystyle lattice supremum sign"; +beginchar(oct"137",20u#,0,14/6dh#); padded 1/6dh#; +adjust_fit(0,0); pickup pencircle scaled curve; +lft x1=hround u-eps; x3=w-x3; x5=w-x1; +top y1=eps; bot y3=-d; y5=y1; +draw z1--z3--z5; % diagonals +labels(1,3,5); endchar; |