% Computer Modern Math Symbols 10 point if unknown cmbase: input cmbase fi font_identifier:="ULSY"; font_size 10pt#; u#:=20/36pt#; % unit width width_adj#:=0pt#; % width adjustment for certain characters serif_fit#:=0pt#; % extra sidebar near lowercase serifs cap_serif_fit#:=5/36pt#; % extra sidebar near uppercase serifs letter_fit#:=0pt#; % extra space added to all sidebars body_height#:=270/36pt#; % height of tallest characters asc_height#:=250/36pt#; % height of lowercase ascenders cap_height#:=246/36pt#; % height of caps fig_height#:=232/36pt#; % height of numerals x_height#:=155/36pt#; % height of lowercase without ascenders math_axis#:=90/36pt#; % axis of symmetry for math symbols bar_height#:=87/36pt#; % height of crossbar in lowercase e comma_depth#:=70/36pt#; % depth of comma below baseline desc_depth#:=70/36pt#; % depth of lowercase descenders crisp#:=8/36pt#; % diameter of serif corners tiny#:=8/36pt#; % diameter of rounded corners fine#:=7/36pt#; % diameter of sharply rounded corners thin_join#:=7/36pt#; % width of extrafine details hair#:=9/36pt#; % lowercase hairline breadth stem#:=24/36pt#; % lowercase stem breadth curve#:=29/36pt#; % lowercase curve breadth ess#:=27/36pt#; % breadth in middle of lowercase s flare#:=32/36pt#; % diameter of bulbs or breadth of terminals dot_size#:=38/36pt#; % diameter of dots cap_hair#:=11/36pt#; % uppercase hairline breadth cap_stem#:=30/36pt#; % uppercase stem breadth cap_curve#:=35/36pt#; % uppercase curve breadth cap_ess#:=33/36pt#; % breadth in middle of uppercase s rule_thickness#:=.4pt#; % thickness of lines in math symbols dish#:=1/36pt#; % amount erased at top or bottom of serifs bracket#:=20/36pt#; % vertical distance from serif base to tangent jut#:=30/36pt#; % protrusion of lowercase serifs cap_jut#:=37/36pt#; % protrusion of uppercase serifs beak_jut#:=10/36pt#; % horizontal protrusion of beak serifs beak#:=70/36pt#; % vertical protrusion of beak serifs vair#:=8/36pt#; % vertical diameter of hairlines notch_cut#:=10pt#; % maximum breadth above or below notches bar#:=11/36pt#; % lowercase bar thickness slab#:=11/36pt#; % serif and arm thickness cap_bar#:=11/36pt#; % uppercase bar thickness cap_band#:=11/36pt#; % uppercase thickness above/below lobes cap_notch_cut#:=10pt#; % max breadth above/below uppercase notches serif_drop#:=4/36pt#; % vertical drop of sloped serifs stem_corr#:=1/36pt#; % for small refinements of stem breadth vair_corr#:=1/36pt#; % for small refinements of hairline height apex_corr#:=0pt#; % extra width at diagonal junctions o#:=8/36pt#; % amount of overshoot for curves apex_o#:=8/36pt#; % amount of overshoot for diagonal junctions slant:=.25; % tilt ratio $(\Delta x/\Delta y)$ fudge:=1; % factor applied to weights of heavy characters math_spread:=0; % extra openness of math symbols superness:=1/sqrt2; % parameter for superellipses superpull:=1/6; % extra openness inside bowls beak_darkness:=11/30; % fraction of triangle inside beak serifs ligs:=2; % level of ligatures to be included square_dots:=false; % should dots be square? hefty:=false; % should we try hard not to be overweight? serifs:=true; % should serifs and bulbs be attached? monospace:=false; % should all characters have the same width? variant_g:=true; % should an italic-style g be used? low_asterisk:=false; % should the asterisk be centered at the axis? math_fitting:=true; % should math-mode spacing be used? % the following font parameters are explained in {\sl The \TeX book}, Appendix G subs:=7/10; % subscripts to 10pt will normally be in 7pt type rth#:=.4pt#; % assume that rules will come from cmex10 fontdimen 8: % parameters $\sigma_8$ through $\sigma_{22}$ will now be listed math_axis#+3.51rth#+54/36pt#+subs*desc_depth#, % num1 math_axis#+1.51rth#+30/36pt#, % num2 math_axis#+1.51rth#+48/36pt#, % num3 -(math_axis#-3.51rth#-subs*fig_height#-124/36pt#), % denom1 -(math_axis#-1.51rth#-subs*fig_height#-30/36pt#), % denom2 8.99pt#-subs*asc_height#, % sup1 8.49pt#-subs*asc_height#, % sup2 104/36pt#, % sup3 54/36pt#, % sub1 -(8.49pt#-2subs*asc_height#-3.1rth#), % sub2 subs*asc_height#-36/36pt#, % sup\_drop 18/36pt#, % sub\_drop 23.9pt#, % delim1 10.1pt#, % delim2 math_axis#; % axis\_height %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % generate ulsydv % switch to the driver file %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % The Computer Modern Symbols family (by D. E. Knuth, 1979--1985) font_coding_scheme:="TeX math symbols"; mode_setup; font_setup; autorounding:=hair; % input calu; % upper case calligraphic alphabet autorounding:=0; font_slant slant; font_x_height x_height#; font_quad 18u# if not monospace:+4letter_fit# fi; % (The spacing is zero so that \TeX\ will always add the italic correction.) % (The calling file should give the other math symbol font parameters.) slant:=mono_charic#:=0; % the remaining characters will not be slanted currenttransform:=identity yscaled aspect_ratio scaled granularity; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % input ulsymbol; % the symbols %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % This file defines the symbols of a \TeX\ math symbol font. % Character codes \0000--\0100 and \0133--\0177 are generated. % Changes til 20 February 1989 included % (Improvements to the author's original characters were worked out in 1982 % by Ronald F. Whitney and other members of % the American Mathematical Society.) % Italic corrections have not been computed for most of these characters, % since they are generally not slanted. odplus=oct"010"; blitza=oct"011"; blitzb=oct"012"; blitzc=oct"013"; blitzd=oct"014"; blitze=oct"015"; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % input ulsym; % symbols common to other fonts %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % This file generates the following characters when their codes are known: % Changes til 20 February 1989 included % odplus,blitza,...,blitze iff known odplus: cmchar "Circle-plus operator"; beginarithchar(odplus); pickup light_rule.nib; autorounded; lft x6=hround u; x2=w-x6; y2=math_axis; top y8=h; y9=math_axis;x9=x8; circle_points; draw_circle; % circle draw z2--z6; draw z9--z8; % bar and stem labels(1,2,3,4,5,6,7,8); endchar; iff known blitza: cmchar "WIDERSPRUCHSBLITZA"; beginarithchar(blitza); f:=1.2; g:=1.2; x0=w/2;y0=1.5math_axis; x1-x0=f*0.3math_axis=x0-x2;y1-y0=f*0.105math_axis=y0-y2; x5=x1-f*0.25math_axis;y5=y0-f*0.75math_axis; x6=x1-f*0.55math_axis;y6=y0-f*1.5math_axis; x3=x2;y3=y0+f*0.75math_axis; x4=x2-f*0.05math_axis;y4=y0+f*1.5math_axis; z7=0.5[z5,z6]; z8=(y6-y7,x7-x6)+z7; z9=(y7-y6,x6-x7)+z7; z10=2[z5,z6]; z11=0.5[z8,z10];z12=0.4[z11,z6]; z13=0.5[z9,z10];z14=0.4[z13,z6]; penpos4(g*f*1pt,45); penpos3(g*f*0.75pt,45); penpos2(g*f*0.9pt,60); penpos0(g*f*0.9pt,60); penpos1(g*f*0.9pt,60); penpos5(g*f*0.30pt,30); penpos6(g*f*0.20pt,0); fill z4r..z3r..{z2-z3}z2r{z0-z2}..z0r..{z1-z0}z1r{z5-z1}..z5r..z6r--z6l..z5l..{z1-z5}z1l{z0-z1}..z0l..{z2-z0}z2l{z3-z2}..z3l..z4l--z4r..cycle; fill z6r--z9..{z10-z14}z10{z12-z10}..z8--z6l--cycle; labels(1,2,3,4,5,6,7,8,9,10,11,12,13,14); endchar; iff known blitzb: cmchar "WIDERSPRUCHSBLITZB"; beginarithchar(blitzb); f:=1.3; g:=1.2; x0=w/2;y0=1.5math_axis; x1-x0=f*0.3math_axis=x0-x2;y1-y0=f*0.105math_axis=y0-y2; x5=x1-f*0.25math_axis;y5=y0-f*0.75math_axis; x6=x1-f*0.55math_axis;y6=y0-f*1.5math_axis; x3=x2;y3=y0+f*0.75math_axis; x4=x2-f*0.05math_axis;y4=y0+f*1.5math_axis; z7=0.5[z5,z6]; z8=(y6-y7,x7-x6)+z7; z9=(y7-y6,x6-x7)+z7; z10=2[z5,z6]; z11=0.5[z8,z10];z12=0.4[z11,z6]; z13=0.5[z9,z10];z14=0.4[z13,z6]; penpos4(g*f*1pt,45); penpos3(g*f*0.75pt,45); penpos2(g*f*0.9pt,60); penpos0(g*f*0.9pt,60); penpos1(g*f*0.9pt,60); penpos5(g*f*0.30pt,30); penpos6(g*f*0.20pt,0); fill z4r..z3r..{z2-z3}z2r{z0-z2}..z0r..{z1-z0}z1r{z5-z1}..z5r..z6r--z6l..z5l..{z1-z5}z1l{z0-z1}..z0l..{z2-z0}z2l{z3-z2}..z3l..z4l--z4r..cycle; fill z6r--z9..{z10-z14}z10{z12-z10}..z8--z6l--cycle; labels(1,2,3,4,5,6,7,8,9,10,11,12,13,14); endchar; iff known blitzc: cmchar "WIDERSPRUCHSBLITZC"; beginarithchar(blitzc); f:=1.4; g:=1.2; x0=w/2;y0=1.5math_axis; x1-x0=f*0.3math_axis=x0-x2;y1-y0=f*0.105math_axis=y0-y2; x5=x1-f*0.25math_axis;y5=y0-f*0.75math_axis; x6=x1-f*0.55math_axis;y6=y0-f*1.5math_axis; x3=x2;y3=y0+f*0.75math_axis; x4=x2-f*0.05math_axis;y4=y0+f*1.5math_axis; z7=0.5[z5,z6]; z8=(y6-y7,x7-x6)+z7; z9=(y7-y6,x6-x7)+z7; z10=2[z5,z6]; z11=0.5[z8,z10];z12=0.4[z11,z6]; z13=0.5[z9,z10];z14=0.4[z13,z6]; penpos4(g*f*1pt,45); penpos3(g*f*0.75pt,45); penpos2(g*f*0.9pt,60); penpos0(g*f*0.9pt,60); penpos1(g*f*0.9pt,60); penpos5(g*f*0.30pt,30); penpos6(g*f*0.20pt,0); fill z4r..z3r..{z2-z3}z2r{z0-z2}..z0r..{z1-z0}z1r{z5-z1}..z5r..z6r--z6l..z5l..{z1-z5}z1l{z0-z1}..z0l..{z2-z0}z2l{z3-z2}..z3l..z4l--z4r..cycle; fill z6r--z9..{z10-z14}z10{z12-z10}..z8--z6l--cycle; labels(1,2,3,4,5,6,7,8,9,10,11,12,13,14); endchar; iff known blitzd: cmchar "WIDERSPRUCHSBLITZD"; beginarithchar(blitzd); f:=1.5; g:=1.2; x0=w/2;y0=1.5math_axis; x1-x0=f*0.3math_axis=x0-x2;y1-y0=f*0.105math_axis=y0-y2; x5=x1-f*0.25math_axis;y5=y0-f*0.75math_axis; x6=x1-f*0.55math_axis;y6=y0-f*1.5math_axis; x3=x2;y3=y0+f*0.75math_axis; x4=x2-f*0.05math_axis;y4=y0+f*1.5math_axis; z7=0.5[z5,z6]; z8=(y6-y7,x7-x6)+z7; z9=(y7-y6,x6-x7)+z7; z10=2[z5,z6]; z11=0.5[z8,z10];z12=0.4[z11,z6]; z13=0.5[z9,z10];z14=0.4[z13,z6]; penpos4(g*f*1pt,45); penpos3(g*f*0.75pt,45); penpos2(g*f*0.9pt,60); penpos0(g*f*0.9pt,60); penpos1(g*f*0.9pt,60); penpos5(g*f*0.30pt,30); penpos6(g*f*0.20pt,0); fill z4r..z3r..{z2-z3}z2r{z0-z2}..z0r..{z1-z0}z1r{z5-z1}..z5r..z6r--z6l..z5l..{z1-z5}z1l{z0-z1}..z0l..{z2-z0}z2l{z3-z2}..z3l..z4l--z4r..cycle; fill z6r--z9..{z10-z14}z10{z12-z10}..z8--z6l--cycle; labels(1,2,3,4,5,6,7,8,9,10,11,12,13,14); endchar; iff known blitze: cmchar "WIDERSPRUCHSBLITZE"; beginarithchar(blitze); f:=1.6; g:=1.2; x0=w/2;y0=1.5math_axis; x1-x0=f*0.3math_axis=x0-x2;y1-y0=f*0.105math_axis=y0-y2; x5=x1-f*0.25math_axis;y5=y0-f*0.75math_axis; x6=x1-f*0.55math_axis;y6=y0-f*1.5math_axis; x3=x2;y3=y0+f*0.75math_axis; x4=x2-f*0.05math_axis;y4=y0+f*1.5math_axis; z7=0.5[z5,z6]; z8=(y6-y7,x7-x6)+z7; z9=(y7-y6,x6-x7)+z7; z10=2[z5,z6]; z11=0.5[z8,z10];z12=0.4[z11,z6]; z13=0.5[z9,z10];z14=0.4[z13,z6]; penpos4(g*f*1pt,45); penpos3(g*f*0.75pt,45); penpos2(g*f*0.9pt,60); penpos0(g*f*0.9pt,60); penpos1(g*f*0.9pt,60); penpos5(g*f*0.30pt,30); penpos6(g*f*0.20pt,0); fill z4r..z3r..{z2-z3}z2r{z0-z2}..z0r..{z1-z0}z1r{z5-z1}..z5r..z6r--z6l..z5l..{z1-z5}z1l{z0-z1}..z0l..{z2-z0}z2l{z3-z2}..z3l..z4l--z4r..cycle; fill z6r--z9..{z10-z14}z10{z12-z10}..z8--z6l--cycle; labels(1,2,3,4,5,6,7,8,9,10,11,12,13,14); endchar; bye.