diff options
author | Karl Berry <karl@freefriends.org> | 2006-01-09 23:38:21 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2006-01-09 23:38:21 +0000 |
commit | 215012a8d684889983ec2c0629e1c704e6853d9c (patch) | |
tree | ebf1271bd71869069824935ae8a5678745bf8bce /Master/texmf-dist/fonts/source/public/latex | |
parent | 1af3d19d6dbcbf309667d9cb4aa3cdda914914a9 (diff) |
trunk/Master/texmf-dist/fonts/source
git-svn-id: svn://tug.org/texlive/trunk@101 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/fonts/source/public/latex')
30 files changed, 3241 insertions, 0 deletions
diff --git a/Master/texmf-dist/fonts/source/public/latex/circle.mf b/Master/texmf-dist/fonts/source/public/latex/circle.mf new file mode 100644 index 00000000000..fecca410faf --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/latex/circle.mf @@ -0,0 +1,551 @@ +fontdimen 1: 0,0,0,0,0,0,0,thickness#; +font_coding_scheme:="LaTeX circle"; + +let cmchar=\; % cmchar should precede each character, for testing purposes + +thickness:=ceiling(thickness#*hppp); % the way rules thicknesses are done +% thickness#:=thickness/hppp; % and let thickness# round to right value +% NO, I deleted this BAD line! --- DEK, 9 Jul 87 +pickup pencircle scaled thickness; nib:=savepen; + +% arcs sets up the points 1, 2, ..., 8 as follows: +% +% |1 +% |* +% * * +% 8| 2 +% * | * +% 7* | *3 +% --*-----*-- +% 6| 4 +% * * +% |5 +% +% <----w----> + +pair upleft,upright,downleft,downright; +upright=-downleft=(1,1); downright=-upleft=(1,-1); + +% a quarter-circle has width, height and depth set as explained on +% page 389 of the TeXbook, not the real width, height, and depth + +def qbeginchar (expr c, diam_sharp) = +numeric hh, dd; hh:=.5*(diam_sharp+thickness#); +dd:=.5*(diam_sharp-thickness#); +beginchar(c,diam_sharp,hh,dd); +enddef; + +def arcs = +numeric delta; +delta:=.5 round((1-sqrt.5)*w); % distance from axis to arc's 45 degree points +bot y3=0; y7=y3=.5[y5,y1]; y1-y5=w; +lft x1=0; x5=x1=.5[x7,x3]; x3-x7=w; +x2-x1=delta; x1-x8=delta; x8=x6; x2=x4; +y8-y7=delta; y7-y6=delta; y8=y2; y6=y4; +enddef; + +cmchar "2pt, top right"; +qbeginchar(0,4pt#); +numeric delta; +pickup nib; +arcs; +draw z7{right}..z6{downright}..z5{down}; +endchar; + +cmchar "2pt, bottom right"; +qbeginchar(1,4pt#); +numeric delta; +pickup nib; +arcs; +draw z1{down}..z8{downleft}..z7{left}; +endchar; + +cmchar "2pt, bottom left"; +qbeginchar(2,4pt#); +numeric delta; +pickup nib; +arcs; +draw z3{left}..z2{upleft}..z1{up}; +endchar; + +cmchar "2pt, top left"; +qbeginchar(3,4pt#); +numeric delta; +pickup nib; +arcs; +draw z5{up}..z4{upright}..z3{right}; +endchar; + +cmchar "4pt, top right"; +qbeginchar(4,8pt#); +numeric delta; +pickup nib; +arcs; +draw z7{right}..z6{downright}..z5{down}; +endchar; + +cmchar "4pt, bottom right"; +qbeginchar(5,8pt#); +numeric delta; +pickup nib; +arcs; +draw z1{down}..z8{downleft}..z7{left}; +endchar; + +cmchar "4pt, bottom left"; +qbeginchar(6,8pt#); +numeric delta; +pickup nib; +arcs; +draw z3{left}..z2{upleft}..z1{up}; +endchar; + +cmchar "4pt, top left"; +qbeginchar(7,8pt#); +numeric delta; +pickup nib; +arcs; +draw z5{up}..z4{upright}..z3{right}; +endchar; + +cmchar "6pt, top right"; +qbeginchar(8,12pt#); +numeric delta; +pickup nib; +arcs; +draw z7{right}..z6{downright}..z5{down}; +endchar; + +cmchar "6pt, bottom right"; +qbeginchar(9,12pt#); +numeric delta; +pickup nib; +arcs; +draw z1{down}..z8{downleft}..z7{left}; +endchar; + +cmchar "6pt, bottom left"; +qbeginchar(10,12pt#); +numeric delta; +pickup nib; +arcs; +draw z3{left}..z2{upleft}..z1{up}; +endchar; + +cmchar "6pt, top left"; +qbeginchar(11,12pt#); +numeric delta; +pickup nib; +arcs; +draw z5{up}..z4{upright}..z3{right}; +endchar; + +cmchar "8pt, top right"; +qbeginchar(12,16pt#); +numeric delta; +pickup nib; +arcs; +draw z7{right}..z6{downright}..z5{down}; +endchar; + +cmchar "8pt, bottom right"; +qbeginchar(13,16pt#); +numeric delta; +pickup nib; +arcs; +draw z1{down}..z8{downleft}..z7{left}; +endchar; + +cmchar "8pt, bottom left"; +qbeginchar(14,16pt#); +numeric delta; +pickup nib; +arcs; +draw z3{left}..z2{upleft}..z1{up}; +endchar; + +cmchar "8pt, top left"; +qbeginchar(15,16pt#); +numeric delta; +pickup nib; +arcs; +draw z5{up}..z4{upright}..z3{right}; +endchar; + +cmchar "10pt, top right"; +qbeginchar(16,20pt#); +numeric delta; +pickup nib; +arcs; +draw z7{right}..z6{downright}..z5{down}; +endchar; + +cmchar "10pt, bottom right"; +qbeginchar(17,20pt#); +numeric delta; +pickup nib; +arcs; +draw z1{down}..z8{downleft}..z7{left}; +endchar; + +cmchar "10pt, bottom left"; +qbeginchar(18,20pt#); +numeric delta; +pickup nib; +arcs; +draw z3{left}..z2{upleft}..z1{up}; +endchar; + +cmchar "10pt, top left"; +qbeginchar(19,20pt#); +numeric delta; +pickup nib; +arcs; +draw z5{up}..z4{upright}..z3{right}; +endchar; + +cmchar "12pt, top right"; +qbeginchar(20,24pt#); +numeric delta; +pickup nib; +arcs; +draw z7{right}..z6{downright}..z5{down}; +endchar; + +cmchar "12pt, bottom right"; +qbeginchar(21,24pt#); +numeric delta; +pickup nib; +arcs; +draw z1{down}..z8{downleft}..z7{left}; +endchar; + +cmchar "12pt, bottom left"; +qbeginchar(22,24pt#); +numeric delta; +pickup nib; +arcs; +draw z3{left}..z2{upleft}..z1{up}; +endchar; + +cmchar "12pt, top left"; +qbeginchar(23,24pt#); +numeric delta; +pickup nib; +arcs; +draw z5{up}..z4{upright}..z3{right}; +endchar; + +cmchar "14pt, top right"; +qbeginchar(24,28pt#); +numeric delta; +pickup nib; +arcs; +draw z7{right}..z6{downright}..z5{down}; +endchar; + +cmchar "14pt, bottom right"; +qbeginchar(25,28pt#); +numeric delta; +pickup nib; +arcs; +draw z1{down}..z8{downleft}..z7{left}; +endchar; + +cmchar "14pt, bottom left"; +qbeginchar(26,28pt#); +numeric delta; +pickup nib; +arcs; +draw z3{left}..z2{upleft}..z1{up}; +endchar; + +cmchar "14pt, top left"; +qbeginchar(27,28pt#); +numeric delta; +pickup nib; +arcs; +draw z5{up}..z4{upright}..z3{right}; +endchar; + +cmchar "16pt, top right"; +qbeginchar(28,32pt#); +numeric delta; +pickup nib; +arcs; +draw z7{right}..z6{downright}..z5{down}; +endchar; + +cmchar "16pt, bottom right"; +qbeginchar(29,32pt#); +numeric delta; +pickup nib; +arcs; +draw z1{down}..z8{downleft}..z7{left}; +endchar; + +cmchar "16pt, bottom left"; +qbeginchar(30,32pt#); +numeric delta; +pickup nib; +arcs; +draw z3{left}..z2{upleft}..z1{up}; +endchar; + +cmchar "16pt, top left"; +qbeginchar(31,32pt#); +numeric delta; +pickup nib; +arcs; +draw z5{up}..z4{upright}..z3{right}; +endchar; + +cmchar "18pt, top right"; +qbeginchar(32,36pt#); +numeric delta; +pickup nib; +arcs; +draw z7{right}..z6{downright}..z5{down}; +endchar; + +cmchar "18pt, bottom right"; +qbeginchar(33,36pt#); +numeric delta; +pickup nib; +arcs; +draw z1{down}..z8{downleft}..z7{left}; +endchar; + +cmchar "18pt, bottom left"; +qbeginchar(34,36pt#); +numeric delta; +pickup nib; +arcs; +draw z3{left}..z2{upleft}..z1{up}; +endchar; + +cmchar "18pt, top left"; +qbeginchar(35,36pt#); +numeric delta; +pickup nib; +arcs; +draw z5{up}..z4{upright}..z3{right}; +endchar; + +cmchar "20pt, top right"; +qbeginchar(36,40pt#); +numeric delta; +pickup nib; +arcs; +draw z7{right}..z6{downright}..z5{down}; +endchar; + +cmchar "20pt, bottom right"; +qbeginchar(37,40pt#); +numeric delta; +pickup nib; +arcs; +draw z1{down}..z8{downleft}..z7{left}; +endchar; + +cmchar "20pt, bottom left"; +qbeginchar(38,40pt#); +numeric delta; +pickup nib; +arcs; +draw z3{left}..z2{upleft}..z1{up}; +endchar; + +cmchar "20pt, top left"; +qbeginchar(39,40pt#); +numeric delta; +pickup nib; +arcs; +draw z5{up}..z4{upright}..z3{right}; +endchar; + +% The full circles have height and depth 0pt because otherwise there +% are too many heights and depths for the TFM files + +cmchar "1pt, circle"; +beginchar(96,1pt#,0pt#,0pt#); +pickup nib; +draw fullcircle scaled w; +endchar; + +cmchar "2pt, circle"; +beginchar(97,2pt#,0pt#,0pt#); +pickup nib; +draw fullcircle scaled w; +endchar; + +cmchar "3pt, circle"; +beginchar(98,3pt#,0pt#,0pt#); +pickup nib; +draw fullcircle scaled w; +endchar; + +cmchar "4pt, circle"; +beginchar(99,4pt#,0pt#,0pt#); +pickup nib; +draw fullcircle scaled w; +endchar; + +cmchar "5pt, circle"; +beginchar(100,5pt#,0pt#,0pt#); +pickup nib; +draw fullcircle scaled w; +endchar; + +cmchar "6pt, circle"; +beginchar(101,6pt#,0pt#,0pt#); +pickup nib; +draw fullcircle scaled w; +endchar; + +cmchar "7pt, circle"; +beginchar(102,7pt#,0pt#,0pt#); +pickup nib; +draw fullcircle scaled w; +endchar; + +cmchar "8pt, circle"; +beginchar(103,8pt#,0pt#,0pt#); +pickup nib; +draw fullcircle scaled w; +endchar; + +cmchar "9pt, circle"; +beginchar(104,9pt#,0pt#,0pt#); +pickup nib; +draw fullcircle scaled w; +endchar; + +cmchar "10pt, circle"; +beginchar(105,10pt#,0pt#,0pt#); +pickup nib; +draw fullcircle scaled w; +endchar; + +cmchar "11pt, circle"; +beginchar(106,11pt#,0pt#,0pt#); +pickup nib; +draw fullcircle scaled w; +endchar; + +cmchar "12pt, circle"; +beginchar(107,12pt#,0pt#,0pt#); +pickup nib; +draw fullcircle scaled w; +endchar; + +cmchar "13pt, circle"; +beginchar(108,13pt#,0pt#,0pt#); +pickup nib; +draw fullcircle scaled w; +endchar; + +cmchar "14pt, circle"; +beginchar(109,14pt#,0pt#,0pt#); +pickup nib; +draw fullcircle scaled w; +endchar; + +cmchar "15pt, circle"; +beginchar(110,15pt#,0pt#,0pt#); +pickup nib; +draw fullcircle scaled w; +endchar; + +cmchar "1pt, blob"; +beginchar(112,1pt#,0pt#,0pt#); +pickup pencircle scaled w; +drawdot origin; +endchar; + +cmchar "2pt, blob"; +beginchar(113,2pt#,0pt#,0pt#); +pickup pencircle scaled w; +drawdot origin; +endchar; + +cmchar "3pt, blob"; +beginchar(114,3pt#,0pt#,0pt#); +pickup pencircle scaled w; +drawdot origin; +endchar; + +cmchar "4pt, blob"; +beginchar(115,4pt#,0pt#,0pt#); +pickup pencircle scaled w; +drawdot origin; +endchar; + +cmchar "5pt, blob"; +beginchar(116,5pt#,0pt#,0pt#); +pickup pencircle scaled w; +drawdot origin; +endchar; + +cmchar "6pt, blob"; +beginchar(117,6pt#,0pt#,0pt#); +pickup pencircle scaled w; +drawdot origin; +endchar; + +cmchar "7pt, blob"; +beginchar(118,7pt#,0pt#,0pt#); +pickup pencircle scaled w; +drawdot origin; +endchar; + +cmchar "8pt, blob"; +beginchar(119,8pt#,0pt#,0pt#); +pickup pencircle scaled w; +drawdot origin; +endchar; + +cmchar "9pt, blob"; +beginchar(120,9pt#,0pt#,0pt#); +pickup pencircle scaled w; +drawdot origin; +endchar; + +cmchar "10pt, blob"; +beginchar(121,10pt#,0pt#,0pt#); +pickup pencircle scaled w; +drawdot origin; +endchar; + +cmchar "11pt, blob"; +beginchar(122,11pt#,0pt#,0pt#); +pickup pencircle scaled w; +drawdot origin; +endchar; + +cmchar "12pt, blob"; +beginchar(123,12pt#,0pt#,0pt#); +pickup pencircle scaled w; +drawdot origin; +endchar; + +cmchar "13pt, blob"; +beginchar(124,13pt#,0pt#,0pt#); +pickup pencircle scaled w; +drawdot origin; +endchar; + +cmchar "14pt, blob"; +beginchar(125,14pt#,0pt#,0pt#); +pickup pencircle scaled w; +drawdot origin; +endchar; + +cmchar "15pt, blob"; +beginchar(126,15pt#,0pt#,0pt#); +pickup pencircle scaled w; +drawdot origin; +endchar; + +bye + diff --git a/Master/texmf-dist/fonts/source/public/latex/icmcsc10.mf b/Master/texmf-dist/fonts/source/public/latex/icmcsc10.mf new file mode 100644 index 00000000000..b99e3615fb0 --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/latex/icmcsc10.mf @@ -0,0 +1,115 @@ +% Computer Modern Roman Caps and Small Caps 10 point invisible +% RmS 91/10/27 +% RmS corrected 92/08/14: moved redefinition of extra_endchar +% before generate csc and added semicolon +if unknown cmbase: input cmbase fi + +font_identifier:="ICMCSC"; font_size 10pt#; + +% first come parameters used to set the uppercase letters +% (including some for lowercase that aren't actually used) +u#:=21/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#:=5/36pt#; % 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#:=0pt#; % 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#:=25/36pt#; % lowercase stem breadth +curve#:=30/36pt#; % lowercase curve breadth +ess#:=27/36pt#; % breadth in middle of lowercase s +flare#:=33/36pt#; % diameter of bulbs or breadth of terminals +dot_size#:=38/36pt#; % diameter of dots +cap_hair#:=11/36pt#; % uppercase hairline breadth +cap_stem#:=32/36pt#; % uppercase stem breadth +cap_curve#:=37/36pt#; % uppercase curve breadth +cap_ess#:=35/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#:=28/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:=0; % 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:=1; % 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:=false; % should an italic-style g be used? +low_asterisk:=false; % should the asterisk be centered at the axis? +math_fitting:=false; % should math-mode spacing be used? + +% now come replacements used to set the lowercase caps + +lower.u#:=16/36pt#; % unit width +lower.width_adj#:=0pt#; % width adjustment for certain characters +lower.cap_serif_fit#:=4/36pt#; % extra sidebar near uppercase serifs +lower.letter_fit#:=2.4/36pt#; % extra space added to all sidebars + +lower.body_height#:=200/36pt#; % height of tallest characters +lower.cap_height#:=185/36pt#; % height of caps +lower.x_height#:=116/36pt#; % height of lowercase without ascenders +lower.bar_height#:=65/36pt#; % height of crossbar in lowercase e +lower.comma_depth#:=52/36pt#; % depth of comma below baseline + +lower.flare#:=25/36pt#; % diameter of bulbs or breadth of terminals +lower.cap_hair#:=9.1/36pt#; % uppercase hairline breadth +lower.stem#:=21/36pt#; % lowercase stem breadth +lower.cap_stem#:=26/36pt#; % uppercase stem breadth +lower.cap_curve#:=31/36pt#; % uppercase curve breadth +lower.cap_ess#:=28/36pt#; % breadth in middle of uppercase s + +lower.cap_jut#:=26/36pt#; % protrusion of uppercase serifs +lower.beak_jut#:=7/36pt#; % horizontal protrusion of beak serifs +lower.beak#:=52/36pt#; % vertical protrusion of beak serifs +lower.slab#:=9.1/36pt#; % serif and arm thickness +lower.cap_bar#:=9.1/36pt#; % uppercase bar thickness +lower.cap_band#:=9.1/36pt#; % uppercase thickness above/below lobes +lower.cap_notch_cut#:=10pt#; % max breadth above/below uppercase notches + +lower.o#:=5/36pt#; % amount of overshoot for curves +lower.apex_o#:=4/36pt#; % amount of overshoot for diagonal junctions + +lower.fudge:=1; % factor applied to weights of heavy characters + +extra_endchar := extra_endchar & "clearit;"; + +generate csc % switch to the driver file diff --git a/Master/texmf-dist/fonts/source/public/latex/icmex10.mf b/Master/texmf-dist/fonts/source/public/latex/icmex10.mf new file mode 100644 index 00000000000..283d45a24dc --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/latex/icmex10.mf @@ -0,0 +1,89 @@ +% Computer Modern Math Extension 10 point invisible +if unknown cmbase: input cmbase fi + +% RmS 91/10/27: corrected font identifier + +font_identifier:="ICMEX"; 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#:=0pt#; % 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#:=25/36pt#; % lowercase stem breadth +curve#:=30/36pt#; % lowercase curve breadth +ess#:=27/36pt#; % breadth in middle of lowercase s +flare#:=33/36pt#; % diameter of bulbs or breadth of terminals +dot_size#:=38/36pt#; % diameter of dots +cap_hair#:=11/36pt#; % uppercase hairline breadth +cap_stem#:=32/36pt#; % uppercase stem breadth +cap_curve#:=37/36pt#; % uppercase curve breadth +cap_ess#:=35/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#:=28/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:=0; % 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:=false; % should an italic-style g be used? +low_asterisk:=false; % should the asterisk be centered at the axis? +math_fitting:=false; % should math-mode spacing be used? + +% the following font parameters are explained in {\sl The \TeX book}, Appendix G +fontdimen 8: % parameters $\xi_8$ through $\xi_{13}$ will now be listed + rule_thickness#, % default\_rule\_thickness + 40/36pt#, % big\_op\_spacing1 + 60/36pt#, % big\_op\_spacing2 + 72/36pt#, % big\_op\_spacing3 + 216/36pt#, % big\_op\_spacing4 + 36/36pt#; % big\_op\_spacing5 + +extra_endchar := extra_endchar & "clearit;"; + +generate mathex % switch to the driver file + diff --git a/Master/texmf-dist/fonts/source/public/latex/icmmi8.mf b/Master/texmf-dist/fonts/source/public/latex/icmmi8.mf new file mode 100644 index 00000000000..40f3c93e9cd --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/latex/icmmi8.mf @@ -0,0 +1,79 @@ +% Computer Modern Math Italic 8 point invisible +if unknown cmbase: input cmbase fi + +% RmS 91/10/27: corrected font identifier + +font_identifier:="ICMMI"; font_size 8pt#; + +u#:=17/36pt#; % unit width +width_adj#:=0pt#; % width adjustment for certain characters +serif_fit#:=0pt#; % extra sidebar near lowercase serifs +cap_serif_fit#:=4.1/36pt#; % extra sidebar near uppercase serifs +letter_fit#:=0pt#; % extra space added to all sidebars + +body_height#:=216/36pt#; % height of tallest characters +asc_height#:=200/36pt#; % height of lowercase ascenders +cap_height#:=196.8/36pt#; % height of caps +fig_height#:=185.6/36pt#; % height of numerals +x_height#:=124/36pt#; % height of lowercase without ascenders +math_axis#:=72/36pt#; % axis of symmetry for math symbols +bar_height#:=69.6/36pt#; % height of crossbar in lowercase e +comma_depth#:=56/36pt#; % depth of comma below baseline +desc_depth#:=56/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#:=21.5/36pt#; % lowercase stem breadth +curve#:=25/36pt#; % lowercase curve breadth +ess#:=23/36pt#; % breadth in middle of lowercase s +flare#:=26.5/36pt#; % diameter of bulbs or breadth of terminals +dot_size#:=32/36pt#; % diameter of dots +cap_hair#:=9.5/36pt#; % uppercase hairline breadth +cap_stem#:=25.5/36pt#; % uppercase stem breadth +cap_curve#:=29/36pt#; % uppercase curve breadth +cap_ess#:=26/36pt#; % breadth in middle of uppercase s +rule_thickness#:=.36pt#; % thickness of lines in math symbols + +dish#:=1/36pt#; % amount erased at top or bottom of serifs +bracket#:=16/36pt#; % vertical distance from serif base to tangent +jut#:=24/36pt#; % protrusion of lowercase serifs +cap_jut#:=29/36pt#; % protrusion of uppercase serifs +beak_jut#:=8.4/36pt#; % horizontal protrusion of beak serifs +beak#:=56/36pt#; % vertical protrusion of beak serifs +vair#:=8/36pt#; % vertical diameter of hairlines +notch_cut#:=8pt#; % maximum breadth above or below notches +bar#:=9.5/36pt#; % lowercase bar thickness +slab#:=9.5/36pt#; % serif and arm thickness +cap_bar#:=9.5/36pt#; % uppercase bar thickness +cap_band#:=9.5/36pt#; % uppercase thickness above/below lobes +cap_notch_cut#:=8pt#; % max breadth above/below uppercase notches +serif_drop#:=3.2/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#:=6/36pt#; % amount of overshoot for curves +apex_o#:=6/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:=.4; % 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? + +extra_endchar := extra_endchar & "clearit;"; + +generate mathit % switch to the driver file diff --git a/Master/texmf-dist/fonts/source/public/latex/icmsy8.mf b/Master/texmf-dist/fonts/source/public/latex/icmsy8.mf new file mode 100644 index 00000000000..51583b51397 --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/latex/icmsy8.mf @@ -0,0 +1,100 @@ +% Computer Modern Math Symbols 8 point invisible +if unknown cmbase: input cmbase fi + +% RmS 91/10/27: corrected font identifier + +font_identifier:="ICMSY"; font_size 8pt#; + +u#:=17/36pt#; % unit width +width_adj#:=0pt#; % width adjustment for certain characters +serif_fit#:=0pt#; % extra sidebar near lowercase serifs +cap_serif_fit#:=4.1/36pt#; % extra sidebar near uppercase serifs +letter_fit#:=0pt#; % extra space added to all sidebars + +body_height#:=216/36pt#; % height of tallest characters +asc_height#:=200/36pt#; % height of lowercase ascenders +cap_height#:=196.8/36pt#; % height of caps +fig_height#:=185.6/36pt#; % height of numerals +x_height#:=124/36pt#; % height of lowercase without ascenders +math_axis#:=72/36pt#; % axis of symmetry for math symbols +bar_height#:=69.6/36pt#; % height of crossbar in lowercase e +comma_depth#:=56/36pt#; % depth of comma below baseline +desc_depth#:=56/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#:=21.5/36pt#; % lowercase stem breadth +curve#:=25/36pt#; % lowercase curve breadth +ess#:=23/36pt#; % breadth in middle of lowercase s +flare#:=26.5/36pt#; % diameter of bulbs or breadth of terminals +dot_size#:=32/36pt#; % diameter of dots +cap_hair#:=9.5/36pt#; % uppercase hairline breadth +cap_stem#:=25.5/36pt#; % uppercase stem breadth +cap_curve#:=29/36pt#; % uppercase curve breadth +cap_ess#:=26/36pt#; % breadth in middle of uppercase s +rule_thickness#:=.36pt#; % thickness of lines in math symbols + +dish#:=1/36pt#; % amount erased at top or bottom of serifs +bracket#:=16/36pt#; % vertical distance from serif base to tangent +jut#:=24/36pt#; % protrusion of lowercase serifs +cap_jut#:=29/36pt#; % protrusion of uppercase serifs +beak_jut#:=8.4/36pt#; % horizontal protrusion of beak serifs +beak#:=56/36pt#; % vertical protrusion of beak serifs +vair#:=8/36pt#; % vertical diameter of hairlines +notch_cut#:=8pt#; % maximum breadth above or below notches +bar#:=9.5/36pt#; % lowercase bar thickness +slab#:=9.5/36pt#; % serif and arm thickness +cap_bar#:=9.5/36pt#; % uppercase bar thickness +cap_band#:=9.5/36pt#; % uppercase thickness above/below lobes +cap_notch_cut#:=8pt#; % max breadth above/below uppercase notches +serif_drop#:=3.2/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#:=6/36pt#; % amount of overshoot for curves +apex_o#:=6/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:=.4; % 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:=6/8; % subscripts to 8pt will normally be in 6pt 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#+36/36pt#+subs*desc_depth#, % num1 + math_axis#+1.51rth#+24/36pt#, % num2 + math_axis#+1.51rth#+38/36pt#, % num3 + -(math_axis#-3.51rth#-subs*fig_height#-98/36pt#), % denom1 + -(math_axis#-1.51rth#-subs*fig_height#-24/36pt#), % denom2 + 7.49pt#-subs*asc_height#, % sup1 + 6.99pt#-subs*asc_height#, % sup2 + 82/36pt#, % sup3 + 36/36pt#, % sub1 + 72/36pt#, % sub2 + subs*asc_height#-36/36pt#, % sup\_drop + 18/36pt#, % sub\_drop + 11.9pt#, % delim1 + 9.1pt#, % delim2 + math_axis#; % axis\_height + +extra_endchar := extra_endchar & "clearit;"; + +generate mathsy % switch to the driver file + diff --git a/Master/texmf-dist/fonts/source/public/latex/icmtt8.mf b/Master/texmf-dist/fonts/source/public/latex/icmtt8.mf new file mode 100644 index 00000000000..ab3dc68c0f0 --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/latex/icmtt8.mf @@ -0,0 +1,80 @@ +% Computer Modern Typewriter Text for use with 8 point (invisible) +if unknown cmbase: input cmbase fi + +% RmS 91/10/27: corrected font identifier + +font_identifier:="ICMTT"; font_size 8pt#; + +u#:=17/36pt#; % unit width +width_adj#:=0pt#; % width adjustment for certain characters +serif_fit#:=0pt#; % extra sidebar near lowercase serifs +cap_serif_fit#:=0pt#; % extra sidebar near uppercase serifs +letter_fit#:=0pt#; % extra space added to all sidebars + +body_height#:=200/36pt#; % height of tallest characters +asc_height#:=176/36pt#; % height of lowercase ascenders +cap_height#:=176/36pt#; % height of caps +fig_height#:=176/36pt#; % height of numerals +x_height#:=124/36pt#; % height of lowercase without ascenders +math_axis#:=88/36pt#; % axis of symmetry for math symbols +bar_height#:=63/36pt#; % height of crossbar in lowercase e +comma_depth#:=40/36pt#; % depth of comma below baseline +desc_depth#:=64/36pt#; % depth of lowercase descenders + +crisp#:=19/36pt#; % diameter of serif corners +tiny#:=19/36pt#; % diameter of rounded corners +fine#:=18/36pt#; % diameter of sharply rounded corners +thin_join#:=18/36pt#; % width of extrafine details +hair#:=22/36pt#; % lowercase hairline breadth +stem#:=22/36pt#; % lowercase stem breadth +curve#:=22/36pt#; % lowercase curve breadth +ess#:=19/36pt#; % breadth in middle of lowercase s +flare#:=28/36pt#; % diameter of bulbs or breadth of terminals +dot_size#:=31/36pt#; % diameter of dots +cap_hair#:=22/36pt#; % uppercase hairline breadth +cap_stem#:=22/36pt#; % uppercase stem breadth +cap_curve#:=22/36pt#; % uppercase curve breadth +cap_ess#:=22/36pt#; % breadth in middle of uppercase s +rule_thickness#:=22/36pt#; % thickness of lines in math symbols + +dish#:=0pt#; % amount erased at top or bottom of serifs +bracket#:=0pt#; % vertical distance from serif base to tangent +jut#:=27/36pt#; % protrusion of lowercase serifs +cap_jut#:=27/36pt#; % protrusion of uppercase serifs +beak_jut#:=0pt#; % horizontal protrusion of beak serifs +beak#:=27/36pt#; % vertical protrusion of beak serifs +vair#:=19/36pt#; % vertical diameter of hairlines +notch_cut#:=22/36pt#; % maximum breadth above or below notches +bar#:=19/36pt#; % lowercase bar thickness +slab#:=19/36pt#; % serif and arm thickness +cap_bar#:=19/36pt#; % uppercase bar thickness +cap_band#:=19/36pt#; % uppercase thickness above/below lobes +cap_notch_cut#:=22/36pt#; % max breadth above/below uppercase notches +serif_drop#:=0pt#; % vertical drop of sloped serifs +stem_corr#:=0pt#; % for small refinements of stem breadth +vair_corr#:=0pt#; % for small refinements of hairline height +apex_corr#:=8/36pt#; % extra width at diagonal junctions + +o#:=3/36pt#; % amount of overshoot for curves +apex_o#:=3/36pt#; % amount of overshoot for diagonal junctions + +slant:=0; % tilt ratio $(\Delta x/\Delta y)$ +fudge:=0.81; % factor applied to weights of heavy characters +math_spread:=-1; % extra openness of math symbols +superness:=1/sqrt2; % parameter for superellipses +superpull:=0; % extra openness inside bowls +beak_darkness:=0; % fraction of triangle inside beak serifs +ligs:=0; % level of ligatures to be included + +square_dots:=false; % should dots be square? +hefty:=true; % should we try hard not to be overweight? +serifs:=true; % should serifs and bulbs be attached? +monospace:=true; % should all characters have the same width? +variant_g:=false; % should an italic-style g be used? +low_asterisk:=true; % should the asterisk be centered at the axis? +math_fitting:=false; % should math-mode spacing be used? + +extra_endchar := extra_endchar & "clearit;"; + +generate roman % switch to the driver file + diff --git a/Master/texmf-dist/fonts/source/public/latex/ilasy8.mf b/Master/texmf-dist/fonts/source/public/latex/ilasy8.mf new file mode 100644 index 00000000000..bb08023786d --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/latex/ilasy8.mf @@ -0,0 +1,11 @@ +% lasy8 invisible for SLITeX +% Use parameter settings from cmsy8 +if unknown cmbase: input cmbase fi +def generate suffix t= enddef; +input icmsy8; +%% RmS 91/11/14: a bit of hacking... +%% to get the correct font identifier +let _bye=bye; +def bye = font_identifier:="ILASY"; _bye enddef; +input lasy; + diff --git a/Master/texmf-dist/fonts/source/public/latex/ilcmss8.mf b/Master/texmf-dist/fonts/source/public/latex/ilcmss8.mf new file mode 100644 index 00000000000..0683529ef50 --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/latex/ilcmss8.mf @@ -0,0 +1,82 @@ +% SliTeX Sans Serif 8 point invisible, derived from +% Computer Modern Sans Serif Quotation Style +% by Pierre A. MacKay, 19 August, 1986 +if unknown cmbase: input cmbase fi + +% RmS 91/10/27: corrected font identifier + +font_identifier:="ILCMSS"; font_size 8pt#; + +u#:=20/36pt#; % unit width +width_adj#:=2/36pt#; % width adjustment for certain characters +serif_fit#:=-10/36pt#; % extra sidebar near lowercase serifs +cap_serif_fit#:=-14/36pt#; % extra sidebar near uppercase serifs +letter_fit#:=0pt#; % extra space added to all sidebars + +body_height#:=220/36pt#; % height of tallest characters +asc_height#:=200/36pt#; % height of lowercase ascenders +cap_height#:=197/36pt#; % height of caps +fig_height#:=190/36pt#; % height of numerals +x_height#:=150/36pt#; % height of lowercase without ascenders +math_axis#:=80/36pt#; % axis of symmetry for math symbols +bar_height#:=80/36pt#; % height of crossbar in lowercase e +comma_depth#:=40/36pt#; % depth of comma below baseline +desc_depth#:=40/36pt#; % depth of lowercase descenders + +crisp#:=18/36pt#; % diameter of serif corners +tiny#:=18/36pt#; % diameter of rounded corners +fine#:=8/36pt#; % diameter of sharply rounded corners +thin_join#:=8/36pt#; % width of extrafine details +hair#:=23/36pt#; % lowercase hairline breadth +stem#:=23/36pt#; % lowercase stem breadth +curve#:=23/36pt#; % lowercase curve breadth +ess#:=23/36pt#; % breadth in middle of lowercase s +flare#:=21/36pt#; % diameter of bulbs or breadth of terminals +dot_size#:=28/36pt#; % diameter of dots +cap_hair#:=23/36pt#; % uppercase hairline breadth +cap_stem#:=27/36pt#; % uppercase stem breadth +cap_curve#:=27/36pt#; % uppercase curve breadth +cap_ess#:=27/36pt#; % breadth in middle of uppercase s +rule_thickness#:=20/36pt#; % thickness of lines in math symbols + +dish#:=0pt#; % amount erased at top or bottom of serifs +bracket#:=0pt#; % vertical distance from serif base to tangent +jut#:=0pt#; % protrusion of lowercase serifs +cap_jut#:=0pt#; % protrusion of uppercase serifs +beak_jut#:=0pt#; % horizontal protrusion of beak serifs +beak#:=0pt#; % vertical protrusion of beak serifs +vair#:=18/36pt#; % vertical diameter of hairlines +notch_cut#:=23/36pt#; % maximum breadth above or below notches +bar#:=18/36pt#; % lowercase bar thickness +slab#:=19/36pt#; % serif and arm thickness +cap_bar#:=19/36pt#; % uppercase bar thickness +cap_band#:=19/36pt#; % uppercase thickness above/below lobes +cap_notch_cut#:=23/36pt#; % max breadth above/below uppercase notches +serif_drop#:=0pt#; % vertical drop of sloped serifs +stem_corr#:=.5/36pt#; % for small refinements of stem breadth +vair_corr#:=.5/36pt#; % for small refinements of hairline height +apex_corr#:=4/36pt#; % extra width at diagonal junctions + +o#:=6/36pt#; % amount of overshoot for curves +apex_o#:=2/36pt#; % amount of overshoot for diagonal junctions + +slant:=0; % tilt ratio $(\Delta x/\Delta y)$ +fudge:=.95; % factor applied to weights of heavy characters +math_spread:=0; % extra openness of math symbols +superness:=1/sqrt2; % parameter for superellipses +superpull:=1/10; % extra openness inside bowls +beak_darkness:=0; % fraction of triangle inside beak serifs +ligs:=2; % level of ligatures to be included + +square_dots:=true; % should dots be square? +hefty:=true; % should we try hard not to be overweight? +serifs:=false; % 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:=false; % should math-mode spacing be used? + +extra_endchar := extra_endchar & "clearit;"; + +generate sroman % switch to the driver file for SliTeX + diff --git a/Master/texmf-dist/fonts/source/public/latex/ilcmssb8.mf b/Master/texmf-dist/fonts/source/public/latex/ilcmssb8.mf new file mode 100644 index 00000000000..468e26e70d1 --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/latex/ilcmssb8.mf @@ -0,0 +1,82 @@ +% SliTeX Sans-Serif bold 8 point invisible, derived from +% Computer Modern Sans Serif Quotation Style +% by Pierre A. MacKay, 19 August, 1986 +if unknown cmbase: input cmbase fi + +% RmS 91/10/27: corrected font identifier + +font_identifier:="ILCMSSB"; font_size 8pt#; + +u#:=22/36pt#; % unit width +width_adj#:=3/36pt#; % width adjustment for certain characters +serif_fit#:=-12/36pt#; % extra sidebar near lowercase serifs +cap_serif_fit#:=-15/36pt#; % extra sidebar near uppercase serifs +letter_fit#:=0pt#; % extra space added to all sidebars + +body_height#:=220/36pt#; % height of tallest characters +asc_height#:=200/36pt#; % height of lowercase ascenders +cap_height#:=197/36pt#; % height of caps +fig_height#:=200/36pt#; % height of numerals +x_height#:=155/36pt#; % height of lowercase without ascenders +math_axis#:=80/36pt#; % axis of symmetry for math symbols +bar_height#:=90/36pt#; % height of crossbar in lowercase e +comma_depth#:=35/36pt#; % depth of comma below baseline +desc_depth#:=40/36pt#; % depth of lowercase descenders + +crisp#:=18/36pt#; % diameter of serif corners +tiny#:=18/36pt#; % diameter of rounded corners +fine#:=8/36pt#; % diameter of sharply rounded corners +thin_join#:=8/36pt#; % width of extrafine details +hair#:=42/36pt#; % lowercase hairline breadth +stem#:=42/36pt#; % lowercase stem breadth +curve#:=42/36pt#; % lowercase curve breadth +ess#:=40/36pt#; % breadth in middle of lowercase s +flare#:=36/36pt#; % diameter of bulbs or breadth of terminals +dot_size#:=41/36pt#; % diameter of dots +cap_hair#:=42/36pt#; % uppercase hairline breadth +cap_stem#:=46/36pt#; % uppercase stem breadth +cap_curve#:=46/36pt#; % uppercase curve breadth +cap_ess#:=46/36pt#; % breadth in middle of uppercase s +rule_thickness#:=26/36pt#; % thickness of lines in math symbols + +dish#:=0pt#; % amount erased at top or bottom of serifs +bracket#:=0pt#; % vertical distance from serif base to tangent +jut#:=0pt#; % protrusion of lowercase serifs +cap_jut#:=0pt#; % protrusion of uppercase serifs +beak_jut#:=0pt#; % horizontal protrusion of beak serifs +beak#:=0pt#; % vertical protrusion of beak serifs +vair#:=22/36pt#; % vertical diameter of hairlines +notch_cut#:=48/36pt#; % maximum breadth above or below notches +bar#:=22/36pt#; % lowercase bar thickness +slab#:=24/36pt#; % serif and arm thickness +cap_bar#:=23/36pt#; % uppercase bar thickness +cap_band#:=30/36pt#; % uppercase thickness above/below lobes +cap_notch_cut#:=42/36pt#; % max breadth above/below uppercase notches +serif_drop#:=0pt#; % vertical drop of sloped serifs +stem_corr#:=.5/36pt#; % for small refinements of stem breadth +vair_corr#:=1/36pt#; % for small refinements of hairline height +apex_corr#:=15/36pt#; % extra width at diagonal junctions + +o#:=6/36pt#; % amount of overshoot for curves +apex_o#:=2/36pt#; % amount of overshoot for diagonal junctions + +slant:=0; % tilt ratio $(\Delta x/\Delta y)$ +fudge:=.85; % factor applied to weights of heavy characters +math_spread:=0.5; % extra openness of math symbols +superness:=1/sqrt2; % parameter for superellipses +superpull:=1/9; % extra openness inside bowls +beak_darkness:=0; % fraction of triangle inside beak serifs +ligs:=2; % level of ligatures to be included + +square_dots:=true; % should dots be square? +hefty:=true; % should we try hard not to be overweight? +serifs:=false; % 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:=false; % should math-mode spacing be used? + +extra_endchar := extra_endchar & "clearit;"; + +generate sroman % switch to the driver file for SliTeX + diff --git a/Master/texmf-dist/fonts/source/public/latex/ilcmssi8.mf b/Master/texmf-dist/fonts/source/public/latex/ilcmssi8.mf new file mode 100644 index 00000000000..075853802ee --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/latex/ilcmssi8.mf @@ -0,0 +1,82 @@ +% SliTeX Sans-Serif Slanted 8 point invisible, derived from +% Computer Modern Sans Serif Quotation Style Slanted +% by Pierre A. MacKay, 19 August, 1986 +if unknown cmbase: input cmbase fi + +% RmS 91/10/27: corrected font identifier + +font_identifier:="ILCMSSI"; font_size 8pt#; + +u#:=20/36pt#; % unit width +width_adj#:=2/36pt#; % width adjustment for certain characters +serif_fit#:=-10/36pt#; % extra sidebar near lowercase serifs +cap_serif_fit#:=-14/36pt#; % extra sidebar near uppercase serifs +letter_fit#:=0pt#; % extra space added to all sidebars + +body_height#:=220/36pt#; % height of tallest characters +asc_height#:=200/36pt#; % height of lowercase ascenders +cap_height#:=197/36pt#; % height of caps +fig_height#:=190/36pt#; % height of numerals +x_height#:=150/36pt#; % height of lowercase without ascenders +math_axis#:=80/36pt#; % axis of symmetry for math symbols +bar_height#:=80/36pt#; % height of crossbar in lowercase e +comma_depth#:=40/36pt#; % depth of comma below baseline +desc_depth#:=40/36pt#; % depth of lowercase descenders + +crisp#:=18/36pt#; % diameter of serif corners +tiny#:=18/36pt#; % diameter of rounded corners +fine#:=8/36pt#; % diameter of sharply rounded corners +thin_join#:=8/36pt#; % width of extrafine details +hair#:=23/36pt#; % lowercase hairline breadth +stem#:=23/36pt#; % lowercase stem breadth +curve#:=23/36pt#; % lowercase curve breadth +ess#:=23/36pt#; % breadth in middle of lowercase s +flare#:=21/36pt#; % diameter of bulbs or breadth of terminals +dot_size#:=28/36pt#; % diameter of dots +cap_hair#:=23/36pt#; % uppercase hairline breadth +cap_stem#:=27/36pt#; % uppercase stem breadth +cap_curve#:=27/36pt#; % uppercase curve breadth +cap_ess#:=27/36pt#; % breadth in middle of uppercase s +rule_thickness#:=20/36pt#; % thickness of lines in math symbols + +dish#:=0pt#; % amount erased at top or bottom of serifs +bracket#:=0pt#; % vertical distance from serif base to tangent +jut#:=0pt#; % protrusion of lowercase serifs +cap_jut#:=0pt#; % protrusion of uppercase serifs +beak_jut#:=0pt#; % horizontal protrusion of beak serifs +beak#:=0pt#; % vertical protrusion of beak serifs +vair#:=18/36pt#; % vertical diameter of hairlines +notch_cut#:=23/36pt#; % maximum breadth above or below notches +bar#:=18/36pt#; % lowercase bar thickness +slab#:=19/36pt#; % serif and arm thickness +cap_bar#:=19/36pt#; % uppercase bar thickness +cap_band#:=19/36pt#; % uppercase thickness above/below lobes +cap_notch_cut#:=23/36pt#; % max breadth above/below uppercase notches +serif_drop#:=0pt#; % vertical drop of sloped serifs +stem_corr#:=.5/36pt#; % for small refinements of stem breadth +vair_corr#:=.5/36pt#; % for small refinements of hairline height +apex_corr#:=4/36pt#; % extra width at diagonal junctions + +o#:=6/36pt#; % amount of overshoot for curves +apex_o#:=2/36pt#; % amount of overshoot for diagonal junctions + +slant:=sind 12/cosd 12; % tilt ratio $(\Delta x/\Delta y)$ +fudge:=.95; % factor applied to weights of heavy characters +math_spread:=0; % extra openness of math symbols +superness:=1/sqrt2; % parameter for superellipses +superpull:=1/10; % extra openness inside bowls +beak_darkness:=0; % fraction of triangle inside beak serifs +ligs:=2; % level of ligatures to be included + +square_dots:=true; % should dots be square? +hefty:=true; % should we try hard not to be overweight? +serifs:=false; % 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:=false; % should math-mode spacing be used? + +extra_endchar := extra_endchar & "clearit;"; + +generate sroman % switch to the SliTeX driver file. + diff --git a/Master/texmf-dist/fonts/source/public/latex/lasy.mf b/Master/texmf-dist/fonts/source/public/latex/lasy.mf new file mode 100644 index 00000000000..6d4949300b0 --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/latex/lasy.mf @@ -0,0 +1,375 @@ +font_identifier:="LASY"; +font_coding_scheme:="LaTeX symbols"; + +% Here we steal a bit from mathsy + +mode_setup; font_setup; +autorounding:=0; + +font_slant slant; font_x_height x_height#; +font_quad 18u# if not monospace:+4letter_fit# fi; +slant:=mono_charic#:=0; % the remaining characters will not be slanted +currenttransform:=identity yscaled aspect_ratio scaled granularity; + +cmchar "Leftward arrowhead"; +compute_spread(.45x_height#,.55x_height#); +beginchar(oct"050",6u#,v_center(spread#+rule_thickness#)); +adjust_fit(0,0); pickup crisp.nib; +pos3(bar,0); pos4(bar,0); +y0=math_axis; lft x0=hround u; +y3-y0=y0-y4=.24asc_height+eps; x3=x4=x0+3u+eps; +pos5(bar,angle(z4-z0)); z5l=z0; pos6(bar,angle(z3-z0)); z6l=z0; +z9=.381966[.5[z3,z4],z0]; +numeric t[]; path p[]; +(t1,t2)=(z4r{z9-z4}..z6r) intersectiontimes (z3r{z9-z3}..z5r); +z10=(z4r{z9-z4}..z6r) intersectionpoint (z3r{z9-z3}..z5r); +filldraw z0..{z4-z9}z4l--subpath (0,t1) of (z4r{z9-z4}..z6r) + --z10--subpath (t2,0) of (z3r{z9-z3}..z5r)--z3l{z9-z3}..z0 & cycle; + % arrowhead +penlabels(0,3,4,5,6,9,10); endchar; + +% This character is an alteration of the leftward arrow +% The tip of the arrowhead rests one unit from left edge, same as left arrow +% Changes: +% 1) deletion of the stem ... points z1,z2 etc +% The rest of the numbers stay the same, for any referencing +% 2) new intersectinpoint z10 is introduced and path slightly altered +% 3) name, code number and width changed, otherwise essentially the same + + + +cmchar "Rightward arrowhead"; +compute_spread(.45x_height#,.55x_height#); +beginchar(oct"051",6u#,v_center(spread#+rule_thickness#)); +adjust_fit(0,0); pickup crisp.nib; +pos3(bar,0); pos4(bar,0); +y0=math_axis; rt x0=hround(w-u); +y3-y0=y0-y4=.24asc_height+eps; x3=x4=x0-3u-eps; +pos5(bar,angle(z4-z0)); z5l=z0; pos6(bar,angle(z3-z0)); z6l=z0; +z9=.381966[.5[z3,z4],z0]; +numeric t[]; path p[]; +(t1,t2)=(z4l{z9-z4}..z6r) intersectiontimes (z3l{z9-z3}..z5r); +z10=(z4l{z9-z4}..z6r) intersectionpoint (z3l{z9-z3}..z5r); +filldraw z0..{z4-z9}z4r--subpath (0,t1) of (z4l{z9-z4}..z6r) + --z10--subpath (t2,0) of (z3l{z9-z3}..z5r)--z3r{z9-z3}..z0 & cycle; + % arrowhead +penlabels(0,3,4,5,6,9,10); endchar; + +% This character is an alteration of the rightward arrow +% The tip of the arrowhead rests one unit from right edge, same as right arrow +% Changes: +% 1) deletion of the stem ... points z1,z2 etc +% The rest of the numbers stay the same, for any referencing +% 2) new intersectinpoint z10 is introduced and path slightly altered +% 3) name, code number and width changed, otherwise essentially the same + + + +cmchar "Upward arrowhead"; +beginchar(oct"052",9u#,asc_height#,asc_depth#); +italcorr .76asc_height#*slant+.5crisp#-u#; +adjust_fit(0,0); pickup crisp.nib; +pos3(bar,90); pos4(bar,90); +top z0=(.5w,0); x0-x3=x4-x0=3u+eps; +y3=y4=y0-.24asc_height-eps; +pos5(bar,angle(z4-z0)); z5l=z0; +pos6(bar,angle(z3-z0)); z6l=z0; +z9=.381966[.5[z3,z4],z0]; +numeric t[]; path p[]; +(t1,t2)=(z4l{z9-z4}..z6r) intersectiontimes (z3l{z9-z3}..z5r); +z10=(z4l{z9-z4}..z6r) intersectionpoint (z3l{z9-z3}..z5r); +filldraw z0..{z4-z9}z4r--subpath (0,t1) of (z4l{z9-z4}..z6r) + --z10--subpath (t2,0) of (z3l{z9-z3}..z5r)--z3r{z9-z3}..z0 & cycle; + % arrowhead +penlabels(0,3,4,5,6,9,10); endchar; + +% This character is an alteration of the upward arrow +% The tip of the arrowhead rests on the baseline for reference +% Changes: +% 1) deletion of the stem ... points z1,z2 etc +% The rest of the numbers stay the same, for any referencing +% 2) point z0 is moved down from the ascender line; the tip touches +% the baseline +% 3) new intersectinpoint z10 is introduced and path slightly altered +% 4) name and code number changed, otherwise essentially the same + + + +cmchar "Downward arrowhead"; +beginchar(oct"053",9u#,asc_height#,asc_depth#); +adjust_fit(0,0); pickup crisp.nib; +pos3(bar,90); pos4(bar,90); +bot z0=(.5w,0); x0-x3=x4-x0=3u+eps; +y3=y4=y0+.24asc_height+eps; +pos5(bar,angle(z4-z0)); z5l=z0; +pos6(bar,angle(z3-z0)); z6l=z0; +z9=.381966[.5[z3,z4],z0]; % z9 iintroduces curve to arrowhead +numeric t[]; path p[]; % rather direction{z9-z4} does this +(t1,t2)=(z4r{z9-z4}..z6r) intersectiontimes (z3r{z9-z3}..z5r); +z10=(z4r{z9-z4}..z6r) intersectionpoint (z3r{z9-z3}..z5r); +filldraw z0..{z4-z9}z4l--subpath (0,t1) of (z4r{z9-z4}..z6r) + --z10--subpath (t2,0) of (z3r{z9-z3}..z5r)--z3l{z9-z3}..z0 & cycle; + % arrowhead +penlabels(0,3,4,5,6,9,10); endchar; + +% This character is an alteration of the downward arrow +% The tip of the arrowhead rests on the baseline for reference +% Changes: +% 1) deletion of the stem ... points z1,z2 etc +% The rest of the numbers stay the same, for any referencing +% 2) point z0 is moved up from the descender line to rest on the baseline +% 3) new intersectinpoint z10 is introduced and path slightly altered +% 4) name and code number changed, otherwise essentially the same + + + +cmchar "Square subset sign"; +compute_spread(5/4x_height#,3/2x_height#); % the spread of `$=$' +beginchar(oct"074",14u#,v_center(spread#+rule_thickness#)); +adjust_fit(0,0); pickup rule.nib; +lft x2=hround(1.5u+oo); x1=x4=hround(w-1.5u)+eps; x3=x2; +y1-y4=spread; y2=y1; y3=y4; y1=math_axis+.5spread; +draw z1--z2--z3--z4; % bars and stem +labels(1,2,3,4); endchar; + +% This character is an alteration of the square subset or equal to sign +% Changes: +% 1) changed position of y1 to be .5 of the spread above the math_axis +% 2) got rid of lower bar (points z8/z9,etc) and the extra spread#' amount +% which was used in calculations for the lower bar +% 3) name and code number and height changed, otherwise essentially the same + + + +cmchar "Square superset sign"; +compute_spread(5/4x_height#,3/2x_height#); % the spread of `$=$' +beginchar(oct"075",14u#,v_center(spread#+rule_thickness#)); +adjust_fit(0,0); pickup rule.nib; +x1=x4=hround 1.5u-eps; rt x2=hround(w-1.5u-oo); x3=x2; +y1-y4=spread; y2=y1; y3=y4; y1=math_axis+.5spread; +draw z1--z2--z3--z4; % bars and stem +labels(1,2,3,4); endchar; + +% This character is an alteration of the square superset or equal to sign +% Changes: +% 1) changed position of y1 to be .5 of the spread above the math_axis +% 2) got rid of lower bar (points z8/z9,etc) and the extra spread#' amount +% which was used in calculations for the lower bar +% 3) name and code number and height changed, otherwise essentially the same + + + +cmchar "Diamond"; +beginchar(oct"063",2(.85asc_height#-math_axis#)+2u#,v_center(7u#)); +italcorr math_axis#*slant; +adjust_fit(0,0); pickup rule.nib; +numeric a; a=.85asc_height-math_axis; +x4=x8=good.x .5w; w:=r:=2x4; rt x2=w-lft x6=good.x(x4+a); +y2=y6=.5[y4,y8]=.5cap_height; top y8=good.y(y2+a); +draw z2--z4--z6--z8--cycle; +labels(2,4,6,8); endchar; + +% This character is an alteration of the diamond operator +% The four tips are equidistant from the center point (.5w,math_axis), +% this distance being half of the cap height +% and related to that in the square character +% slightly less though, since it looks too big if the actually have same +% length +% Changes: +% 1) To the amount a, which gives the distance of the tips from the center +% 2) The width is related to the asc_height, so it changes with it +% 3) name and code number and width changed, otherwise essentially the same +% The numbers stay the same, for any referencing + + + +cmchar "Square"; +beginchar(oct"062",2.1math_axis#+4u#,v_center(7u#)); +italcorr math_axis#*slant; +adjust_fit(0,0); pickup rule.nib; +numeric a; a=round(2.1math_axis); +x1=x4=good.x 2u; x2=x3=x1+a; +y3=y4=.5(cap_height-a); y1=y2=y3+a; +draw z1--z2--z3--z4--cycle; +labels(1,2,3,4); endchar; + +% The size of this character is related to the diamond character, it's +% sightly larger. +% It is NOT the diamond character which has been rotated +% Vertical alignment raised to .5 cap height from math-axis height +% 2 units of sidebearing space on each side, since vertical lines usually +% need a little more space, actually it's 2 units-.5rule.nib + + + +cmchar "Bowtie operator"; +beginchar(oct"061",13u#,v_center(7u#)); +italcorr math_axis#*slant; +adjust_fit(0,0); pickup rule.nib; +numeric a; a=round(1.1*math_axis); +x1=x4=good.x 1.5u; x2=x3=w-x1; +y1=y2=good.y(.5(cap_height-2a)); y3=y4=y1+2a; +draw z1--z3--z2--z4--cycle; +labels(1,2,3,4); endchar; + +% Arbitrary width given +% Length of the bars at the edges are 2.2*math_axis length +% and it's vertically aligned on the high, i.e., .5 cap height as opposed +% to being aligned on the math axis + + + +cmchar "Upside-down Uppercase Greek Omega"; +beginchar(oct"060",13u#,cap_height#,0); +italcorr cap_height#*slant-.35u#; %italcorr .75cap_height#*slant-.5u#; +adjust_fit(0,0); +pickup tiny.nib; pos1(vair,-90); pos2(cap_curve,0); +pos3(vair,0); pos4(cap_curve,180); pos5(vair,180); +x1=.5w; bot y1r=0-o; lft x4r=hround u; y2=y4=1/3h; x2=w-x4; +rt x5l=hround(1/3(w+.5u)+.5hair); top y3=top y5=h; x3=w-x5; +filldraw stroke z3e{down}...{down}z2e + & pulled_super_arc.e(2,1)(.5superpull) + & pulled_super_arc.e(1,4)(.5superpull) + & z4e{up}...{up}z5e; % bowl +numeric arm_thickness; path p; p=z3{down}...{down}z2; +arm_thickness=Vround(if hefty:slab+2stem_corr else:.75[slab,cap_vstem] fi); +pickup crisp.nib; pos6(arm_thickness,90); pos7(fudged.hair,0); +top y6r=h; x6=x3; rt x7r=hround (w-.8u); y7=good.y(y6l-.5beak)+eps; +(x,y)=p intersectionpoint((0,y6l)--(w+h,y6l)); x6l:=x; +arm(6,7,a,.5beak_darkness,1.2beak_jut); % right arm and beak +pos8(arm_thickness,90); pos9(fudged.hair,180); +y8=y6; y9=y7; x8+x6=x9+x7=w; x8l:=w-x6l; +arm(8,9,b,.5beak_darkness,-1.2beak_jut); % left arm and beak +math_fit(0,.5ic#); penlabels(1,2,3,4,5,6,7,8,9); endchar; + +% This character is taken from the Upper Case Omega of cmr +% Directions and reference points are reversed and flipped +% pos angles are flipped by 180 degrees +% vertical values are reversed, up/down directions in the +% filldraw stroke are reversed +% left strokes same, but changes reference points +% italic correction based on furthest pont of character , so made it +% full cap_height minus amount for the beak, taken from the cap XI +% I suppose a transformation of paths would have worked also, but this +% way, limits are maintained better, i think +% w+h instead of just w in intersection to make sure paths do intersect + + + +cmchar "Leads to character extension"; +compute_spread(.45x_height#,.55x_height#); +beginchar(oct"072",12u#,v_center(spread#+rule_thickness#)); +adjust_fit(0,0); pickup rule.nib; +numeric a; a=round(.45math_axis); +y11=y13=y15=math_axis; y12-a=y14+a=good.y math_axis; +x11=0; x15=w; x13=.5[x11,x15]; x12=.5[x11,x13]; x14=.5[x13,x15]; +path p; p=z12{right}...z13...z14{right}; +draw z11{dir(-angle direction 1 of p)}...z12{right}...z13... + z14{right}...z15{dir(-angle direction 1 of p)}; +penlabels(11,12,13,14,15); endchar; + +% This character is an extension to fit with the Leads to character with +% arrowhead +% This character goes from edge to edge and a series of these can be linked +% as desired. +% It has 2/3 the width of that character, and if this relation is kept, the +% the curves should all match + + + +cmchar "Leads to character with arrowhead"; +compute_spread(.45x_height#,.55x_height#); +beginchar(oct"073",18u#,v_center(spread#+rule_thickness#)); +adjust_fit(0,0); pickup crisp.nib; +pos3(bar,0); pos4(bar,0); +y0=math_axis; rt x0=hround(w-u); +y3-y0=y0-y4=.24asc_height+eps; x3=x4=x0-3u-eps; +pos5(bar,angle(z4-z0)); z5l=z0; pos6(bar,angle(z3-z0)); z6l=z0; +z9=.381966[.5[z3,z4],z0]; +numeric t[]; path p[]; +(t1,t2)=(z4l{z9-z4}..z6r) intersectiontimes (z3l{z9-z3}..z5r); +z10=(z4l{z9-z4}..z6r) intersectionpoint (z3l{z9-z3}..z5r); +filldraw z0..{z4-z9}z4r--subpath (0,t1) of (z4l{z9-z4}..z6r) + --z10--subpath (t2,0) of (z3l{z9-z3}..z5r)--z3r{z9-z3}..z0 & cycle; + % arrowhead +pickup rule.nib; +numeric a; a=round(.45math_axis); +y11=y13=y15=y16=y0; y12-a=y14+a=good.y math_axis; +x11=0; x15=2/3w; z17=lft z10; +x13=.5[x11,x15]; x12=.5[x11,x13]; x14=.5[x13,x15]; x16=.3[x15,x0]; +path p; p=z12{right}...z13...z14{right}; +draw z11{dir(-angle direction 1 of p)}... + z12{right}...z13...z14{right}...z16{right}...z17; +penlabels(0,3,4,5,6,9,10,11,12,13,14,15,16); endchar; + +% This character uses the rightward arrow arrowhead +% The width is the same as that of the regular arrow +% An extension character can be added for longer squiggles + + +cmchar "LASY \lhd triangle"; +compute_spread(5/4x_height#,3/2x_height#); +beginchar(oct"001",14u#,v_center(spread#+rule_thickness#)); +italcorr h#*slant-u#; +adjust_fit(0,0); pickup rule.nib; +lft x2=hround 1.5u-eps; x1=x3=w-x2; +y1-y3=spread; y2=.5[y1,y3]=math_axis; +draw z1--z2--z3--cycle; % triangle +labels(1,2,3); endchar; + +% taken directly from CMR "less than" character +% the path was closed to make a triangle + + + +cmchar "LASY \unlhd triangle"; +compute_spread(.45x_height#,.55x_height#); +spread#':=spread#; spread':=spread; % the spread of `$=$' +compute_spread(5/4x_height#,3/2x_height#); +beginchar(oct"002",14u#,v_center(spread#'+spread#+rule_thickness#)); +italcorr h#*slant-u#; +adjust_fit(0,0); pickup rule.nib; +lft x2=hround 1.5u-eps; x1=x3=w-x2; +y1-y3=spread; y2=.5[y1,y3]; top y1=h; +draw z1--z2--z3--cycle; % triangle +x8=x1; x9=x2; y8=y9; y3-y9=spread'; draw z8--z9; % bar +labels(1,2,3,8,9); endchar; + +% taken directly from CMR "less than or equal to sign" +% the "less than" path was closed to make a triangle + + + +cmchar "LASY \rhd triangle"; +compute_spread(5/4x_height#,3/2x_height#); +beginchar(oct"003",14u#,v_center(spread#+rule_thickness#)); +italcorr math_axis#*slant-u#; +adjust_fit(0,0); pickup rule.nib; +rt x2=hround(w-1.5u)+eps; x1=x3=w-x2; +y1-y3=spread; y2=.5[y1,y3]=math_axis; +draw z1--z2--z3--cycle; % triangle +labels(1,2,3); endchar; + +% taken directly from CMR "greater than" character +% the path was closed to make a triangle + + + +cmchar "LASY \unrhd triangle"; +compute_spread(.45x_height#,.55x_height#); +spread#':=spread#; spread':=spread; % the spread of `$=$' +compute_spread(5/4x_height#,3/2x_height#); +beginchar(oct"004",14u#,v_center(spread#'+spread#+rule_thickness#)); +italcorr h#*slant-u#; +adjust_fit(0,0); pickup rule.nib; +lft x1=hround 1.5u-eps; x2=w-x1; x3=x1; +y1-y3=spread; y2=.5[y1,y3]; top y1=h; +draw z1--z2--z3--cycle; % triangle +x8=x1; x9=x2; y8=y9; y3-y9=spread'; draw z8--z9; % bar +labels(1,2,3,8,9); endchar; + +% taken directly from CMR "greater than or equal to sign" +% the "greater than" path was closed to make a triangle + + +bye. diff --git a/Master/texmf-dist/fonts/source/public/latex/lasy10.mf b/Master/texmf-dist/fonts/source/public/latex/lasy10.mf new file mode 100644 index 00000000000..72439f08227 --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/latex/lasy10.mf @@ -0,0 +1,5 @@ +% Use parameter settings from cmsy10 +if unknown cmbase: input cmbase fi +def generate suffix t= enddef; +input cmsy10; +input lasy; diff --git a/Master/texmf-dist/fonts/source/public/latex/lasy5.mf b/Master/texmf-dist/fonts/source/public/latex/lasy5.mf new file mode 100644 index 00000000000..e81d42e6d95 --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/latex/lasy5.mf @@ -0,0 +1,5 @@ +% Use parameter settings from cmsy5 +if unknown cmbase: input cmbase fi +def generate suffix t= enddef; +input cmsy5; +input lasy; diff --git a/Master/texmf-dist/fonts/source/public/latex/lasy6.mf b/Master/texmf-dist/fonts/source/public/latex/lasy6.mf new file mode 100644 index 00000000000..c55f8011760 --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/latex/lasy6.mf @@ -0,0 +1,5 @@ +% Use parameter settings from cmsy6 +if unknown cmbase: input cmbase fi +def generate suffix t= enddef; +input cmsy6; +input lasy; diff --git a/Master/texmf-dist/fonts/source/public/latex/lasy7.mf b/Master/texmf-dist/fonts/source/public/latex/lasy7.mf new file mode 100644 index 00000000000..567bf8529ed --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/latex/lasy7.mf @@ -0,0 +1,5 @@ +% Use parameter settings from cmsy7 +if unknown cmbase: input cmbase fi +def generate suffix t= enddef; +input cmsy7; +input lasy; diff --git a/Master/texmf-dist/fonts/source/public/latex/lasy8.mf b/Master/texmf-dist/fonts/source/public/latex/lasy8.mf new file mode 100644 index 00000000000..a8706e33982 --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/latex/lasy8.mf @@ -0,0 +1,5 @@ +% Use parameter settings from cmsy8 +if unknown cmbase: input cmbase fi +def generate suffix t= enddef; +input cmsy8; +input lasy; diff --git a/Master/texmf-dist/fonts/source/public/latex/lasy9.mf b/Master/texmf-dist/fonts/source/public/latex/lasy9.mf new file mode 100644 index 00000000000..598c4ab91e7 --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/latex/lasy9.mf @@ -0,0 +1,5 @@ +% Use parameter settings from cmsy9 +if unknown cmbase: input cmbase fi +def generate suffix t= enddef; +input cmsy9; +input lasy; diff --git a/Master/texmf-dist/fonts/source/public/latex/lasyb10.mf b/Master/texmf-dist/fonts/source/public/latex/lasyb10.mf new file mode 100644 index 00000000000..b6dba7ad897 --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/latex/lasyb10.mf @@ -0,0 +1,5 @@ +% Use parameter settings from cmbsy10 +if unknown cmbase: input cmbase fi +def generate suffix t= enddef; +input cmbsy10; +input lasy; diff --git a/Master/texmf-dist/fonts/source/public/latex/lcircle.mf b/Master/texmf-dist/fonts/source/public/latex/lcircle.mf new file mode 100644 index 00000000000..1d0fa48c076 --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/latex/lcircle.mf @@ -0,0 +1,550 @@ +fontdimen 1: 0,0,0,0,0,0,0,thickness#; +font_coding_scheme:="LaTeX circle"; + +let cmchar=\; % cmchar should precede each character, for testing purposes + +thickness:=ceiling(thickness#*hppp); % the way rules thicknesses are done +% thickness#:=thickness/hppp; % and let thickness# round to right value +% NO, I deleted this BAD line! --- DEK, 9 Jul 87 +pickup pencircle scaled thickness; nib:=savepen; + +% arcs sets up the points 1, 2, ..., 8 as follows: +% +% |1 +% |* +% * * +% 8| 2 +% * | * +% 7* | *3 +% --*-----*-- +% 6| 4 +% * * +% |5 +% +% <----w----> + +pair upleft,upright,downleft,downright; +upright=-downleft=(1,1); downright=-upleft=(1,-1); + +% a quarter-circle has width, height and depth set as explained on +% page 389 of the TeXbook, not the real width, height, and depth + +def qbeginchar (expr c, diam_sharp) = +numeric hh, dd; hh:=.5*(diam_sharp+thickness#); +dd:=.5*(diam_sharp-thickness#); +beginchar(c,diam_sharp,hh,dd); +enddef; + +def arcs = +numeric delta; +delta:=.5 round((1-sqrt.5)*w); % distance from axis to arc's 45 degree points +bot y3=0; y7=y3=.5[y5,y1]; y1-y5=w; +lft x1=0; x5=x1=.5[x7,x3]; x3-x7=w; +x2-x1=delta; x1-x8=delta; x8=x6; x2=x4; +y8-y7=delta; y7-y6=delta; y8=y2; y6=y4; +enddef; + +cmchar "2pt, top right"; +qbeginchar(0,4pt#); +numeric delta; +pickup nib; +arcs; +draw z7{right}..z6{downright}..z5{down}; +endchar; + +cmchar "2pt, bottom right"; +qbeginchar(1,4pt#); +numeric delta; +pickup nib; +arcs; +draw z1{down}..z8{downleft}..z7{left}; +endchar; + +cmchar "2pt, bottom left"; +qbeginchar(2,4pt#); +numeric delta; +pickup nib; +arcs; +draw z3{left}..z2{upleft}..z1{up}; +endchar; + +cmchar "2pt, top left"; +qbeginchar(3,4pt#); +numeric delta; +pickup nib; +arcs; +draw z5{up}..z4{upright}..z3{right}; +endchar; + +cmchar "4pt, top right"; +qbeginchar(4,8pt#); +numeric delta; +pickup nib; +arcs; +draw z7{right}..z6{downright}..z5{down}; +endchar; + +cmchar "4pt, bottom right"; +qbeginchar(5,8pt#); +numeric delta; +pickup nib; +arcs; +draw z1{down}..z8{downleft}..z7{left}; +endchar; + +cmchar "4pt, bottom left"; +qbeginchar(6,8pt#); +numeric delta; +pickup nib; +arcs; +draw z3{left}..z2{upleft}..z1{up}; +endchar; + +cmchar "4pt, top left"; +qbeginchar(7,8pt#); +numeric delta; +pickup nib; +arcs; +draw z5{up}..z4{upright}..z3{right}; +endchar; + +cmchar "6pt, top right"; +qbeginchar(8,12pt#); +numeric delta; +pickup nib; +arcs; +draw z7{right}..z6{downright}..z5{down}; +endchar; + +cmchar "6pt, bottom right"; +qbeginchar(9,12pt#); +numeric delta; +pickup nib; +arcs; +draw z1{down}..z8{downleft}..z7{left}; +endchar; + +cmchar "6pt, bottom left"; +qbeginchar(10,12pt#); +numeric delta; +pickup nib; +arcs; +draw z3{left}..z2{upleft}..z1{up}; +endchar; + +cmchar "6pt, top left"; +qbeginchar(11,12pt#); +numeric delta; +pickup nib; +arcs; +draw z5{up}..z4{upright}..z3{right}; +endchar; + +cmchar "8pt, top right"; +qbeginchar(12,16pt#); +numeric delta; +pickup nib; +arcs; +draw z7{right}..z6{downright}..z5{down}; +endchar; + +cmchar "8pt, bottom right"; +qbeginchar(13,16pt#); +numeric delta; +pickup nib; +arcs; +draw z1{down}..z8{downleft}..z7{left}; +endchar; + +cmchar "8pt, bottom left"; +qbeginchar(14,16pt#); +numeric delta; +pickup nib; +arcs; +draw z3{left}..z2{upleft}..z1{up}; +endchar; + +cmchar "8pt, top left"; +qbeginchar(15,16pt#); +numeric delta; +pickup nib; +arcs; +draw z5{up}..z4{upright}..z3{right}; +endchar; + +cmchar "10pt, top right"; +qbeginchar(16,20pt#); +numeric delta; +pickup nib; +arcs; +draw z7{right}..z6{downright}..z5{down}; +endchar; + +cmchar "10pt, bottom right"; +qbeginchar(17,20pt#); +numeric delta; +pickup nib; +arcs; +draw z1{down}..z8{downleft}..z7{left}; +endchar; + +cmchar "10pt, bottom left"; +qbeginchar(18,20pt#); +numeric delta; +pickup nib; +arcs; +draw z3{left}..z2{upleft}..z1{up}; +endchar; + +cmchar "10pt, top left"; +qbeginchar(19,20pt#); +numeric delta; +pickup nib; +arcs; +draw z5{up}..z4{upright}..z3{right}; +endchar; + +cmchar "12pt, top right"; +qbeginchar(20,24pt#); +numeric delta; +pickup nib; +arcs; +draw z7{right}..z6{downright}..z5{down}; +endchar; + +cmchar "12pt, bottom right"; +qbeginchar(21,24pt#); +numeric delta; +pickup nib; +arcs; +draw z1{down}..z8{downleft}..z7{left}; +endchar; + +cmchar "12pt, bottom left"; +qbeginchar(22,24pt#); +numeric delta; +pickup nib; +arcs; +draw z3{left}..z2{upleft}..z1{up}; +endchar; + +cmchar "12pt, top left"; +qbeginchar(23,24pt#); +numeric delta; +pickup nib; +arcs; +draw z5{up}..z4{upright}..z3{right}; +endchar; + +cmchar "14pt, top right"; +qbeginchar(24,28pt#); +numeric delta; +pickup nib; +arcs; +draw z7{right}..z6{downright}..z5{down}; +endchar; + +cmchar "14pt, bottom right"; +qbeginchar(25,28pt#); +numeric delta; +pickup nib; +arcs; +draw z1{down}..z8{downleft}..z7{left}; +endchar; + +cmchar "14pt, bottom left"; +qbeginchar(26,28pt#); +numeric delta; +pickup nib; +arcs; +draw z3{left}..z2{upleft}..z1{up}; +endchar; + +cmchar "14pt, top left"; +qbeginchar(27,28pt#); +numeric delta; +pickup nib; +arcs; +draw z5{up}..z4{upright}..z3{right}; +endchar; + +cmchar "16pt, top right"; +qbeginchar(28,32pt#); +numeric delta; +pickup nib; +arcs; +draw z7{right}..z6{downright}..z5{down}; +endchar; + +cmchar "16pt, bottom right"; +qbeginchar(29,32pt#); +numeric delta; +pickup nib; +arcs; +draw z1{down}..z8{downleft}..z7{left}; +endchar; + +cmchar "16pt, bottom left"; +qbeginchar(30,32pt#); +numeric delta; +pickup nib; +arcs; +draw z3{left}..z2{upleft}..z1{up}; +endchar; + +cmchar "16pt, top left"; +qbeginchar(31,32pt#); +numeric delta; +pickup nib; +arcs; +draw z5{up}..z4{upright}..z3{right}; +endchar; + +cmchar "18pt, top right"; +qbeginchar(32,36pt#); +numeric delta; +pickup nib; +arcs; +draw z7{right}..z6{downright}..z5{down}; +endchar; + +cmchar "18pt, bottom right"; +qbeginchar(33,36pt#); +numeric delta; +pickup nib; +arcs; +draw z1{down}..z8{downleft}..z7{left}; +endchar; + +cmchar "18pt, bottom left"; +qbeginchar(34,36pt#); +numeric delta; +pickup nib; +arcs; +draw z3{left}..z2{upleft}..z1{up}; +endchar; + +cmchar "18pt, top left"; +qbeginchar(35,36pt#); +numeric delta; +pickup nib; +arcs; +draw z5{up}..z4{upright}..z3{right}; +endchar; + +cmchar "20pt, top right"; +qbeginchar(36,40pt#); +numeric delta; +pickup nib; +arcs; +draw z7{right}..z6{downright}..z5{down}; +endchar; + +cmchar "20pt, bottom right"; +qbeginchar(37,40pt#); +numeric delta; +pickup nib; +arcs; +draw z1{down}..z8{downleft}..z7{left}; +endchar; + +cmchar "20pt, bottom left"; +qbeginchar(38,40pt#); +numeric delta; +pickup nib; +arcs; +draw z3{left}..z2{upleft}..z1{up}; +endchar; + +cmchar "20pt, top left"; +qbeginchar(39,40pt#); +numeric delta; +pickup nib; +arcs; +draw z5{up}..z4{upright}..z3{right}; +endchar; + +% The full circles have height and depth 0pt because otherwise there +% are too many heights and depths for the TFM files + +cmchar "1pt, circle"; +beginchar(96,1pt#,0pt#,0pt#); +pickup nib; +draw fullcircle scaled w; +endchar; + +cmchar "2pt, circle"; +beginchar(97,2pt#,0pt#,0pt#); +pickup nib; +draw fullcircle scaled w; +endchar; + +cmchar "3pt, circle"; +beginchar(98,3pt#,0pt#,0pt#); +pickup nib; +draw fullcircle scaled w; +endchar; + +cmchar "4pt, circle"; +beginchar(99,4pt#,0pt#,0pt#); +pickup nib; +draw fullcircle scaled w; +endchar; + +cmchar "5pt, circle"; +beginchar(100,5pt#,0pt#,0pt#); +pickup nib; +draw fullcircle scaled w; +endchar; + +cmchar "6pt, circle"; +beginchar(101,6pt#,0pt#,0pt#); +pickup nib; +draw fullcircle scaled w; +endchar; + +cmchar "7pt, circle"; +beginchar(102,7pt#,0pt#,0pt#); +pickup nib; +draw fullcircle scaled w; +endchar; + +cmchar "8pt, circle"; +beginchar(103,8pt#,0pt#,0pt#); +pickup nib; +draw fullcircle scaled w; +endchar; + +cmchar "9pt, circle"; +beginchar(104,9pt#,0pt#,0pt#); +pickup nib; +draw fullcircle scaled w; +endchar; + +cmchar "10pt, circle"; +beginchar(105,10pt#,0pt#,0pt#); +pickup nib; +draw fullcircle scaled w; +endchar; + +cmchar "11pt, circle"; +beginchar(106,11pt#,0pt#,0pt#); +pickup nib; +draw fullcircle scaled w; +endchar; + +cmchar "12pt, circle"; +beginchar(107,12pt#,0pt#,0pt#); +pickup nib; +draw fullcircle scaled w; +endchar; + +cmchar "13pt, circle"; +beginchar(108,13pt#,0pt#,0pt#); +pickup nib; +draw fullcircle scaled w; +endchar; + +cmchar "14pt, circle"; +beginchar(109,14pt#,0pt#,0pt#); +pickup nib; +draw fullcircle scaled w; +endchar; + +cmchar "15pt, circle"; +beginchar(110,15pt#,0pt#,0pt#); +pickup nib; +draw fullcircle scaled w; +endchar; + +cmchar "1pt, blob"; +beginchar(112,1pt#,0pt#,0pt#); +pickup pencircle scaled w; +drawdot origin; +endchar; + +cmchar "2pt, blob"; +beginchar(113,2pt#,0pt#,0pt#); +pickup pencircle scaled w; +drawdot origin; +endchar; + +cmchar "3pt, blob"; +beginchar(114,3pt#,0pt#,0pt#); +pickup pencircle scaled w; +drawdot origin; +endchar; + +cmchar "4pt, blob"; +beginchar(115,4pt#,0pt#,0pt#); +pickup pencircle scaled w; +drawdot origin; +endchar; + +cmchar "5pt, blob"; +beginchar(116,5pt#,0pt#,0pt#); +pickup pencircle scaled w; +drawdot origin; +endchar; + +cmchar "6pt, blob"; +beginchar(117,6pt#,0pt#,0pt#); +pickup pencircle scaled w; +drawdot origin; +endchar; + +cmchar "7pt, blob"; +beginchar(118,7pt#,0pt#,0pt#); +pickup pencircle scaled w; +drawdot origin; +endchar; + +cmchar "8pt, blob"; +beginchar(119,8pt#,0pt#,0pt#); +pickup pencircle scaled w; +drawdot origin; +endchar; + +cmchar "9pt, blob"; +beginchar(120,9pt#,0pt#,0pt#); +pickup pencircle scaled w; +drawdot origin; +endchar; + +cmchar "10pt, blob"; +beginchar(121,10pt#,0pt#,0pt#); +pickup pencircle scaled w; +drawdot origin; +endchar; + +cmchar "11pt, blob"; +beginchar(122,11pt#,0pt#,0pt#); +pickup pencircle scaled w; +drawdot origin; +endchar; + +cmchar "12pt, blob"; +beginchar(123,12pt#,0pt#,0pt#); +pickup pencircle scaled w; +drawdot origin; +endchar; + +cmchar "13pt, blob"; +beginchar(124,13pt#,0pt#,0pt#); +pickup pencircle scaled w; +drawdot origin; +endchar; + +cmchar "14pt, blob"; +beginchar(125,14pt#,0pt#,0pt#); +pickup pencircle scaled w; +drawdot origin; +endchar; + +cmchar "15pt, blob"; +beginchar(126,15pt#,0pt#,0pt#); +pickup pencircle scaled w; +drawdot origin; +endchar; + +bye diff --git a/Master/texmf-dist/fonts/source/public/latex/lcircle10.mf b/Master/texmf-dist/fonts/source/public/latex/lcircle10.mf new file mode 100644 index 00000000000..082614fa747 --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/latex/lcircle10.mf @@ -0,0 +1,14 @@ +%% RmS 91/11/14: check that cmbase is NOT loaded +%% RmS 92/03/18: changed message to errmessage +inner bye; +if not unknown cmbase: + errhelp "This font must be generated using the plain base."; + errmessage "You can't use cmbase for this font!"; + expandafter bye fi +font_identifier "CIRCLE"; font_size 10pt#; +font_coding_scheme:="LATEX CIRCLE"; +mode_setup; + +thickness#:=.4pt#; + +input circle diff --git a/Master/texmf-dist/fonts/source/public/latex/lcirclew10.mf b/Master/texmf-dist/fonts/source/public/latex/lcirclew10.mf new file mode 100644 index 00000000000..7a828eb363c --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/latex/lcirclew10.mf @@ -0,0 +1,13 @@ +%% RmS 91/11/14: check that cmbase is NOT loaded +%% RmS 92/03/18: changed message to errmessage +inner bye; +if not unknown cmbase: + errhelp "This font must be generated using the plain base."; + errmessage "You can't use cmbase for this font!"; + expandafter bye fi +font_identifier "CIRCLEW"; font_size 10pt#; +font_coding_scheme:="LATEX CIRCLE"; +mode_setup; + +thickness#:=.8pt#; +input circle diff --git a/Master/texmf-dist/fonts/source/public/latex/lcmss8.mf b/Master/texmf-dist/fonts/source/public/latex/lcmss8.mf new file mode 100644 index 00000000000..142ae142e6d --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/latex/lcmss8.mf @@ -0,0 +1,78 @@ +% SliTeX Sans Serif 8 point, derived from +% Computer Modern Sans Serif Quotation Style +% by Pierre A. MacKay, 19 August, 1986 +if unknown cmbase: input cmbase fi + +font_identifier:="LCMSS"; font_size 8pt#; + +u#:=20/36pt#; % unit width +width_adj#:=2/36pt#; % width adjustment for certain characters +serif_fit#:=-10/36pt#; % extra sidebar near lowercase serifs +cap_serif_fit#:=-14/36pt#; % extra sidebar near uppercase serifs +letter_fit#:=0pt#; % extra space added to all sidebars + +body_height#:=220/36pt#; % height of tallest characters +asc_height#:=200/36pt#; % height of lowercase ascenders +cap_height#:=197/36pt#; % height of caps +fig_height#:=190/36pt#; % height of numerals +x_height#:=150/36pt#; % height of lowercase without ascenders +math_axis#:=80/36pt#; % axis of symmetry for math symbols +bar_height#:=80/36pt#; % height of crossbar in lowercase e +comma_depth#:=40/36pt#; % depth of comma below baseline +desc_depth#:=40/36pt#; % depth of lowercase descenders + +crisp#:=18/36pt#; % diameter of serif corners +tiny#:=18/36pt#; % diameter of rounded corners +fine#:=8/36pt#; % diameter of sharply rounded corners +thin_join#:=8/36pt#; % width of extrafine details +hair#:=23/36pt#; % lowercase hairline breadth +stem#:=23/36pt#; % lowercase stem breadth +curve#:=23/36pt#; % lowercase curve breadth +ess#:=23/36pt#; % breadth in middle of lowercase s +flare#:=21/36pt#; % diameter of bulbs or breadth of terminals +dot_size#:=28/36pt#; % diameter of dots +cap_hair#:=23/36pt#; % uppercase hairline breadth +cap_stem#:=27/36pt#; % uppercase stem breadth +cap_curve#:=27/36pt#; % uppercase curve breadth +cap_ess#:=27/36pt#; % breadth in middle of uppercase s +rule_thickness#:=20/36pt#; % thickness of lines in math symbols + +dish#:=0pt#; % amount erased at top or bottom of serifs +bracket#:=0pt#; % vertical distance from serif base to tangent +jut#:=0pt#; % protrusion of lowercase serifs +cap_jut#:=0pt#; % protrusion of uppercase serifs +beak_jut#:=0pt#; % horizontal protrusion of beak serifs +beak#:=0pt#; % vertical protrusion of beak serifs +vair#:=18/36pt#; % vertical diameter of hairlines +notch_cut#:=23/36pt#; % maximum breadth above or below notches +bar#:=18/36pt#; % lowercase bar thickness +slab#:=19/36pt#; % serif and arm thickness +cap_bar#:=19/36pt#; % uppercase bar thickness +cap_band#:=19/36pt#; % uppercase thickness above/below lobes +cap_notch_cut#:=23/36pt#; % max breadth above/below uppercase notches +serif_drop#:=0pt#; % vertical drop of sloped serifs +stem_corr#:=.5/36pt#; % for small refinements of stem breadth +vair_corr#:=.5/36pt#; % for small refinements of hairline height +apex_corr#:=4/36pt#; % extra width at diagonal junctions + +o#:=6/36pt#; % amount of overshoot for curves +apex_o#:=2/36pt#; % amount of overshoot for diagonal junctions + +slant:=0; % tilt ratio $(\Delta x/\Delta y)$ +fudge:=.95; % factor applied to weights of heavy characters +math_spread:=0; % extra openness of math symbols +superness:=1/sqrt2; % parameter for superellipses +superpull:=1/10; % extra openness inside bowls +beak_darkness:=0; % fraction of triangle inside beak serifs +ligs:=2; % level of ligatures to be included + +square_dots:=true; % should dots be square? +hefty:=true; % should we try hard not to be overweight? +serifs:=false; % 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:=false; % should math-mode spacing be used? + +generate sroman % switch to the driver file for SliTeX + diff --git a/Master/texmf-dist/fonts/source/public/latex/lcmssb8.mf b/Master/texmf-dist/fonts/source/public/latex/lcmssb8.mf new file mode 100644 index 00000000000..1393336a379 --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/latex/lcmssb8.mf @@ -0,0 +1,78 @@ +% SliTeX Sans-Serif bold 8 point, derived from +% Computer Modern Sans Serif Quotation Style +% by Pierre A. MacKay, 19 August, 1986 +if unknown cmbase: input cmbase fi + +font_identifier:="LCMSSB"; font_size 8pt#; + +u#:=22/36pt#; % unit width +width_adj#:=3/36pt#; % width adjustment for certain characters +serif_fit#:=-12/36pt#; % extra sidebar near lowercase serifs +cap_serif_fit#:=-15/36pt#; % extra sidebar near uppercase serifs +letter_fit#:=0pt#; % extra space added to all sidebars + +body_height#:=220/36pt#; % height of tallest characters +asc_height#:=200/36pt#; % height of lowercase ascenders +cap_height#:=197/36pt#; % height of caps +fig_height#:=200/36pt#; % height of numerals +x_height#:=155/36pt#; % height of lowercase without ascenders +math_axis#:=80/36pt#; % axis of symmetry for math symbols +bar_height#:=90/36pt#; % height of crossbar in lowercase e +comma_depth#:=35/36pt#; % depth of comma below baseline +desc_depth#:=40/36pt#; % depth of lowercase descenders + +crisp#:=18/36pt#; % diameter of serif corners +tiny#:=18/36pt#; % diameter of rounded corners +fine#:=8/36pt#; % diameter of sharply rounded corners +thin_join#:=8/36pt#; % width of extrafine details +hair#:=42/36pt#; % lowercase hairline breadth +stem#:=42/36pt#; % lowercase stem breadth +curve#:=42/36pt#; % lowercase curve breadth +ess#:=40/36pt#; % breadth in middle of lowercase s +flare#:=36/36pt#; % diameter of bulbs or breadth of terminals +dot_size#:=41/36pt#; % diameter of dots +cap_hair#:=42/36pt#; % uppercase hairline breadth +cap_stem#:=46/36pt#; % uppercase stem breadth +cap_curve#:=46/36pt#; % uppercase curve breadth +cap_ess#:=46/36pt#; % breadth in middle of uppercase s +rule_thickness#:=26/36pt#; % thickness of lines in math symbols + +dish#:=0pt#; % amount erased at top or bottom of serifs +bracket#:=0pt#; % vertical distance from serif base to tangent +jut#:=0pt#; % protrusion of lowercase serifs +cap_jut#:=0pt#; % protrusion of uppercase serifs +beak_jut#:=0pt#; % horizontal protrusion of beak serifs +beak#:=0pt#; % vertical protrusion of beak serifs +vair#:=22/36pt#; % vertical diameter of hairlines +notch_cut#:=48/36pt#; % maximum breadth above or below notches +bar#:=22/36pt#; % lowercase bar thickness +slab#:=24/36pt#; % serif and arm thickness +cap_bar#:=23/36pt#; % uppercase bar thickness +cap_band#:=30/36pt#; % uppercase thickness above/below lobes +cap_notch_cut#:=42/36pt#; % max breadth above/below uppercase notches +serif_drop#:=0pt#; % vertical drop of sloped serifs +stem_corr#:=.5/36pt#; % for small refinements of stem breadth +vair_corr#:=1/36pt#; % for small refinements of hairline height +apex_corr#:=15/36pt#; % extra width at diagonal junctions + +o#:=6/36pt#; % amount of overshoot for curves +apex_o#:=2/36pt#; % amount of overshoot for diagonal junctions + +slant:=0; % tilt ratio $(\Delta x/\Delta y)$ +fudge:=.85; % factor applied to weights of heavy characters +math_spread:=0.5; % extra openness of math symbols +superness:=1/sqrt2; % parameter for superellipses +superpull:=1/9; % extra openness inside bowls +beak_darkness:=0; % fraction of triangle inside beak serifs +ligs:=2; % level of ligatures to be included + +square_dots:=true; % should dots be square? +hefty:=true; % should we try hard not to be overweight? +serifs:=false; % 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:=false; % should math-mode spacing be used? + +generate sroman % switch to the driver file for SliTeX + diff --git a/Master/texmf-dist/fonts/source/public/latex/lcmssi8.mf b/Master/texmf-dist/fonts/source/public/latex/lcmssi8.mf new file mode 100644 index 00000000000..7c03c65f147 --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/latex/lcmssi8.mf @@ -0,0 +1,78 @@ +% SliTeX Sans-Serif Slanted 8 point, derived from +% Computer Modern Sans Serif Quotation Style Slanted +% by Pierre A. MacKay, 19 August, 1986 +if unknown cmbase: input cmbase fi + +font_identifier:="LCMSSI"; font_size 8pt#; + +u#:=20/36pt#; % unit width +width_adj#:=2/36pt#; % width adjustment for certain characters +serif_fit#:=-10/36pt#; % extra sidebar near lowercase serifs +cap_serif_fit#:=-14/36pt#; % extra sidebar near uppercase serifs +letter_fit#:=0pt#; % extra space added to all sidebars + +body_height#:=220/36pt#; % height of tallest characters +asc_height#:=200/36pt#; % height of lowercase ascenders +cap_height#:=197/36pt#; % height of caps +fig_height#:=190/36pt#; % height of numerals +x_height#:=150/36pt#; % height of lowercase without ascenders +math_axis#:=80/36pt#; % axis of symmetry for math symbols +bar_height#:=80/36pt#; % height of crossbar in lowercase e +comma_depth#:=40/36pt#; % depth of comma below baseline +desc_depth#:=40/36pt#; % depth of lowercase descenders + +crisp#:=18/36pt#; % diameter of serif corners +tiny#:=18/36pt#; % diameter of rounded corners +fine#:=8/36pt#; % diameter of sharply rounded corners +thin_join#:=8/36pt#; % width of extrafine details +hair#:=23/36pt#; % lowercase hairline breadth +stem#:=23/36pt#; % lowercase stem breadth +curve#:=23/36pt#; % lowercase curve breadth +ess#:=23/36pt#; % breadth in middle of lowercase s +flare#:=21/36pt#; % diameter of bulbs or breadth of terminals +dot_size#:=28/36pt#; % diameter of dots +cap_hair#:=23/36pt#; % uppercase hairline breadth +cap_stem#:=27/36pt#; % uppercase stem breadth +cap_curve#:=27/36pt#; % uppercase curve breadth +cap_ess#:=27/36pt#; % breadth in middle of uppercase s +rule_thickness#:=20/36pt#; % thickness of lines in math symbols + +dish#:=0pt#; % amount erased at top or bottom of serifs +bracket#:=0pt#; % vertical distance from serif base to tangent +jut#:=0pt#; % protrusion of lowercase serifs +cap_jut#:=0pt#; % protrusion of uppercase serifs +beak_jut#:=0pt#; % horizontal protrusion of beak serifs +beak#:=0pt#; % vertical protrusion of beak serifs +vair#:=18/36pt#; % vertical diameter of hairlines +notch_cut#:=23/36pt#; % maximum breadth above or below notches +bar#:=18/36pt#; % lowercase bar thickness +slab#:=19/36pt#; % serif and arm thickness +cap_bar#:=19/36pt#; % uppercase bar thickness +cap_band#:=19/36pt#; % uppercase thickness above/below lobes +cap_notch_cut#:=23/36pt#; % max breadth above/below uppercase notches +serif_drop#:=0pt#; % vertical drop of sloped serifs +stem_corr#:=.5/36pt#; % for small refinements of stem breadth +vair_corr#:=.5/36pt#; % for small refinements of hairline height +apex_corr#:=4/36pt#; % extra width at diagonal junctions + +o#:=6/36pt#; % amount of overshoot for curves +apex_o#:=2/36pt#; % amount of overshoot for diagonal junctions + +slant:=sind 12/cosd 12; % tilt ratio $(\Delta x/\Delta y)$ +fudge:=.95; % factor applied to weights of heavy characters +math_spread:=0; % extra openness of math symbols +superness:=1/sqrt2; % parameter for superellipses +superpull:=1/10; % extra openness inside bowls +beak_darkness:=0; % fraction of triangle inside beak serifs +ligs:=2; % level of ligatures to be included + +square_dots:=true; % should dots be square? +hefty:=true; % should we try hard not to be overweight? +serifs:=false; % 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:=false; % should math-mode spacing be used? + +generate sroman % switch to the SliTeX driver file. + diff --git a/Master/texmf-dist/fonts/source/public/latex/legal.txt b/Master/texmf-dist/fonts/source/public/latex/legal.txt new file mode 100644 index 00000000000..bc50ae84058 --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/latex/legal.txt @@ -0,0 +1,37 @@ +The files specifying the LaTeX fonts may be distributed and/or modified +under the conditions of the LaTeX Project Public License, either version +1.2 of this license or (at your option) any later version. The latest +version of this license is in + http://www.latex-project.org/lppl.txt +and version 1.2 or later is part of all distributions of LaTeX version +1999/12/01 or later. + +The complete listing of files covered by this license is + circle.mf icmtt8.mf lasy.mf lasy8.mf lcmss8.mf linew10.mf + icmcsc10.mf ilasy8.mf lasy10.mf lasy9.mf lcmssb8.mf sroman.mf + icmex10.mf ilcmss8.mf lasy5.mf lasyb10.mf lcmssi8.mf sromanu.mf + icmmi8.mf ilcmssb8.mf lasy6.mf lcircle10.mf line.mf + icmsy8.mf ilcmssi8.mf lasy7.mf lcirclew10.mf line10.mf + +In addition, permission to distribute faithful renderings of the +details of these fonts, in common font formats, such as (but not +limited to) TFM, AFM, GF, PK, PFA, PFB and TTF, is also granted. The +copyright holder applies no restrictions to the use of these fonts in +documents, however published. + +(For other fonts, distributed via this directory, please refer to the +licence statement of the copyright holder, the American Mathematical +Society. These fonts are: + + cmbsy5.mf cmbsy8.mf cmcsc9.mf cmex9.mf cmmib7.mf + cmbsy6.mf cmbsy9.mf cmex7.mf cmmib5.mf cmmib8.mf + cmbsy7.mf cmcsc8.mf cmex8.mf cmmib6.mf cmmib9.mf + +They are part of the AMSfonts collections, see + + http://www.ams.org/tex/amsfonts.html +) + +May 2002, Robin Fairbairns, for the LaTeX Team. + +latex-team@latex-project.org diff --git a/Master/texmf-dist/fonts/source/public/latex/line.mf b/Master/texmf-dist/fonts/source/public/latex/line.mf new file mode 100644 index 00000000000..c9ae71d3fc2 --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/latex/line.mf @@ -0,0 +1,552 @@ +qqs:=ceiling(qqs#*hppp); % the way rule widths are calculated +define_pixels(qqh,qqw,arrowlen,arrowht,arrowcurve); + +def line (expr delx, dely) = +numeric qht,qwd,absdely; + +if dely > 0: + if delx > dely: qwd# := qqw#; qht# := dely*qqw#/delx; + else: qht# := qqw#; qwd# := delx*qqw#/dely; fi; + beginchar( 8(delx-1)+(dely-1),qwd#,qht#,0pt#); + x0=0; y0=0; + x1=w; y1=h; + else: + absdely=-dely; + if delx > absdely: qwd# := qqw#; qht# := absdely*qqw#/delx; + else: qht# := qqw#; qwd# := delx*qqw#/absdely; fi; + beginchar(64+8(delx-1)+(absdely-1),qwd#,qht#,0pt#); + x0=0; y0=h; + x1=w; y1=0; +fi; +pickup pencircle scaled qqs; +draw z0..z1 +enddef; + +def larrow (expr char, delx, dely) = +numeric rxa,rxb,rxc,rxd,rxe,rya,ryb,ryc,ryd,rye; +numeric qht,qwd,absdely; +if dely > 0: + if delx > dely: qwd# := qqw#; qht# := dely*qqw#/delx; + else: qht# := qqw#; qwd# := delx*qqw#/dely; fi; + % fixed by DEK on 24 Jan 89; previous code buggy but caused no harm + else: + absdely=-dely; + if delx > absdely: qwd# := qqw#; qht# := absdely*qqw#/delx; + else: qht# := qqw#; qwd# := delx*qqw#/absdely; fi; +fi; + +beginchar(char,qwd#,qht#,0pt#); +if dely > 0: y0=0; else: y0=h; fi; + +x0=0; +rxa=arrowlen; rya=0; +rxb=arrowlen; ryb=arrowht; +rxc=arrowlen; ryc=-arrowht; +rxd=.5rxa; ryd=.5ryb-arrowcurve; +rxe=rxd; rye=-ryd; + +numeric rlen; +rlen = sqrt(delx*delx + dely*dely); + +x1=(rxa*delx - rya*dely)/rlen; +y1=(rxa*dely+rya*delx)/rlen + y0; + +%x2=rxb; y2=ryb; +x2=(rxb*delx - ryb*dely)/rlen; +y2=(rxb*dely+ryb*delx)/rlen + y0; + +%x3=rxc; y3=ryc; +x3=(rxc*delx - ryc*dely)/rlen; +y3=(rxc*dely+ryc*delx)/rlen + y0; + +%x4=rxd; y4=ryd; +x4=(rxd*delx - ryd*dely)/rlen; +y4=(rxd*dely+ryd*delx)/rlen + y0; + +%x5=rxe; y5=rye; +x5=(rxe*delx - rye*dely)/rlen; +y5=(rxe*dely+rye*delx)/rlen + y0; + +fill z0..z5..z3--z1--z2..z4..z0--cycle +enddef; + +def rarrow (expr char, delx, dely) = + +numeric rxa,rxb,rxc,rxd,rxe,rya,ryb,ryc,ryd,rye; +numeric qht,qwd,absdely; +if dely > 0: + if delx > dely: qwd# := qqw#; qht# := dely*qqw#/delx; + else: qht# := qqw#; qwd# := delx*qqw#/dely; fi; + else: + absdely=-dely; + if delx > absdely: qwd# := qqw#; qht# := absdely*qqw#/delx; + else: qht# := qqw#; qwd# := delx*qqw#/absdely; fi; +fi; + +beginchar(char,qwd#,qht#,0pt#); + +if dely > 0: y0=h; else: y0=0; fi; + +x0=w; +rxa=-arrowlen; rya=0; +rxb=rxa; ryb=arrowht; +rxc=rxa; ryc=-arrowht; +rxd=.5rxa; ryd=.5ryb-arrowcurve; +rxe=rxd; rye=-ryd; + +numeric rlen; +rlen = sqrt(delx*delx + dely*dely); + +%x1= rxa;y1=rya; %%%% replace the following by rotations +x1=(rxa*delx - rya*dely)/rlen + x0; +y1=(rxa*dely+rya*delx)/rlen + y0; + +%x2=rxb; y2=ryb; +x2=(rxb*delx - ryb*dely)/rlen + x0; +y2=(rxb*dely+ryb*delx)/rlen + y0; + +%x3=rxc; y3=ryc; +x3=(rxc*delx - ryc*dely)/rlen + x0; +y3=(rxc*dely+ryc*delx)/rlen + y0; + +%x4=rxd; y4=ryd; +x4=(rxd*delx - ryd*dely)/rlen + x0; +y4=(rxd*dely+ryd*delx)/rlen + y0; + +%x5=rxe; y5=rye; +x5=(rxe*delx - rye*dely)/rlen + x0; +y5=(rxe*dely+rye*delx)/rlen + y0; + +fill z0..z5..z3--z1--z2..z4..z0--cycle +enddef; + +% character code rules, for +% line(x,y): +% 0 < x,y <= 6 : 8*(x-1) + (y-1) +% +% larrow(x,y): +% 0 < x,y <= 4 : 8*(2x-1) + (2y-1) +% y=0 : '33 +% rarrow(x,y): +% 0 < x,y < 3 : 8*(3x-1) + (3y-1) +% 0 < x <= 4, y=3 : 8*(2x-1) + 6 +% 0 < x < 4, y = 4 : 8*(2x) + 7 +% x=3, 0 < y <=4 : 8*6 + (2y-1) +% x = 4, 0 < y < 4 : 8*7 + 2y +% y=0 : 55 +% +% for y < 0: value is 64 + value for (x, |y|) +% +% up arrow: '66 down arrow: '77 + +fontdimen 1: 0,0,0,0,0,0,0,qqs#; % line thickness in points +let cmchar=\; % cmchar should precede each character, for testing purposes + + +font_coding_scheme:= "LaTeX line"; + +cmchar "Character '00"; +line(1,1); +endchar; + +cmchar "Character '11"; +larrow(9,1,1); +endchar; + +cmchar "Character '22"; +rarrow(18,1,1); +endchar; + +cmchar "Character '01"; +line(1,2); +endchar; + +cmchar "Character '13"; +larrow(11,1,2); +endchar; + +cmchar "Character '25"; +rarrow(21,1,2); +endchar; + +cmchar "Character '02"; +line(1,3); +endchar; + +cmchar "Character '15"; +larrow(13,1,3); +endchar; + +cmchar "Character '16"; +rarrow(14,1,3); +endchar; + +cmchar "Character '03"; +line(1,4); +endchar; + +cmchar "Character '17"; +larrow(15,1,4); +endchar; + +cmchar "Character '27"; +rarrow(23,1,4); +endchar; + +cmchar "Character '04"; +line(1,5); +endchar; + +cmchar "Character '05"; +line(1,6); +endchar; + +cmchar "Character '10"; +line(2,1); +endchar; + +cmchar "Character '31"; +larrow(25,2,1); +endchar; + +cmchar "Character '52"; +rarrow(42,2,1); +endchar; + +cmchar "Character '12"; +line(2,3); +endchar; + +cmchar "Character '35"; +larrow(29,2,3); +endchar; + +cmchar "Character '36"; +rarrow(30,2,3); +endchar; + +cmchar "Character '14"; +line(2,5); +endchar; + +cmchar "Character '20"; +line(3,1); +endchar; + +cmchar "Character '51"; +larrow(41,3,1); +endchar; + +cmchar "Character '61"; +rarrow(49,3,1); +endchar; + +cmchar "Character '21"; +line(3,2); +endchar; + +cmchar "Character '53"; +larrow(43,3,2); +endchar; + +cmchar "Character '63"; +rarrow(51,3,2); +endchar; + +cmchar "Character '23"; +line(3,4); +endchar; + +cmchar "Character '57"; +larrow(47,3,4); +endchar; + +cmchar "Character '67"; +rarrow(55,3,4); +endchar; + +cmchar "Character '24"; +line(3,5); +endchar; + +cmchar "Character '30"; +line(4,1); +endchar; + +cmchar "Character '71"; +larrow(57,4,1); +endchar; + +cmchar "Character '72"; +rarrow(58,4,1); +endchar; + +cmchar "Character '32"; +line(4,3); +endchar; + +cmchar "Character '75"; +larrow(61,4,3); +endchar; + +cmchar "Character '76"; +rarrow(62,4,3); +endchar; + +cmchar "Character '34"; +line(4,5); +endchar; + +cmchar "Character '40"; +line(5,1); +endchar; + +cmchar "Character '41"; +line(5,2); +endchar; + +cmchar "Character '42"; +line(5,3); +endchar; + +cmchar "Character '43"; +line(5,4); +endchar; + +cmchar "Character '45"; +line(5,6); +endchar; + +cmchar "Character '50"; +line(6,1); +endchar; + +cmchar "Character '54"; +line(6,5); +endchar; + +cmchar "Character '100"; +line(1,-1); +endchar; + +cmchar "Character '111"; +larrow(73,1,-1); +endchar; + +cmchar "Character '122"; +rarrow(82,1,-1); +endchar; + +cmchar "Character '101"; +line(1,-2); +endchar; + +cmchar "Character '113"; +larrow(75,1,-2); +endchar; + +cmchar "Character '125"; +rarrow(85,1,-2); +endchar; + +cmchar "Character '102"; +line(1,-3); +endchar; + +cmchar "Character '115"; +larrow(77,1,-3); +endchar; + +cmchar "Character '116"; +rarrow(78,1,-3); +endchar; + +cmchar "Character '103"; +line(1,-4); +endchar; + +cmchar "Character '117"; +larrow(79,1,-4); +endchar; + +cmchar "Character '127"; +rarrow(87,1,-4); +endchar; + +cmchar "Character '104"; +line(1,-5); +endchar; + +cmchar "Character '105"; +line(1,-6); +endchar; + +cmchar "Character '110"; +line(2,-1); +endchar; + +cmchar "Character '131"; +larrow(89,2,-1); +endchar; + +cmchar "Character '152"; +rarrow(106,2,-1); +endchar; + +cmchar "Character '112"; +line(2,-3); +endchar; + +cmchar "Character '135"; +larrow(93,2,-3); +endchar; + +cmchar "Character '136"; +rarrow(94,2,-3); +endchar; + +cmchar "Character '114"; +line(2,-5); +endchar; + +cmchar "Character '120"; +line(3,-1); +endchar; + +cmchar "Character '151"; +larrow(105,3,-1); +endchar; + +cmchar "Character '161"; +rarrow(113,3,-1); +endchar; + +cmchar "Character '121"; +line(3,-2); +endchar; + +cmchar "Character '153"; +larrow(107,3,-2); +endchar; + +cmchar "Character '163"; +rarrow(115,3,-2); +endchar; + +cmchar "Character '123"; +line(3,-4); +endchar; + +cmchar "Character '157"; +larrow(111,3,-4); +endchar; + +cmchar "Character '167"; +rarrow(119,3,-4); +endchar; + +cmchar "Character '124"; +line(3,-5); +endchar; + +cmchar "Character '130"; +line(4,-1); +endchar; + +cmchar "Character '171"; +larrow(121,4,-1); +endchar; + +cmchar "Character '172"; +rarrow(122,4,-1); +endchar; + +cmchar "Character '132"; +line(4,-3); +endchar; + +cmchar "Character '175"; +larrow(125,4,-3); +endchar; + +cmchar "Character '176"; +rarrow(126,4,-3); +endchar; + +cmchar "Character '134"; +line(4,-5); +endchar; + +cmchar "Character '140"; +line(5,-1); +endchar; + +cmchar "Character '141"; +line(5,-2); +endchar; + +cmchar "Character '142"; +line(5,-3); +endchar; + +cmchar "Character '143"; +line(5,-4); +endchar; + +cmchar "Character '145"; +line(5,-6); +endchar; + +cmchar "Character '150"; +line(6,-1); +endchar; + +cmchar "Character '154"; +line(6,-5); +endchar; + +%%%Horizontal arrows: + + +cmchar "Character '33"; +larrow(27,1,0); +endchar; + +cmchar "Character '55"; %right arrow +beginchar(45,qqw#,qqw#,0pt#); +x0=w; y0=0; +x1=x0-arrowlen; y1=0; +x2=x1; y2=arrowht; +x3=x1; y3=-y2; +x4=.5[x0,x1]; y4=.5y2-arrowcurve; +x5=x4; y5=-y4; +fill z0..z4..z2--z1--z3..z5..z0--cycle; +endchar; + +%%%vertical arrows + + +cmchar "Character '66"; %up arrow +beginchar(54,qqw#,qqw#,0pt#); +x0=0; y0=w; +y1=y0-arrowlen; x1=0; +y2=y1; x2=arrowht; +y3=y1; x3=-x2; +y4=.5[y0,y1]; x4=.5x2-arrowcurve; +y5=y4; x5=-x4; +fill z0..z4..z2--z1--z3..z5..z0--cycle; +endchar; + + +cmchar "Character '77"; %down arrow +beginchar(63,qqw#,qqw#,0pt#); +x0=0; y0=0; +y1=arrowlen; x1=0; +y2=y1; x2=arrowht; +y3=y1; x3=-x2; +y4=.5y1; x4=.5x2-arrowcurve; +y5=y4; x5=-x4; +fill z0..z4..z2--z1--z3..z5..z0--cycle; +endchar; + +bye diff --git a/Master/texmf-dist/fonts/source/public/latex/line10.mf b/Master/texmf-dist/fonts/source/public/latex/line10.mf new file mode 100644 index 00000000000..5f93014fbad --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/latex/line10.mf @@ -0,0 +1,18 @@ +%% RmS 91/11/14: check that cmbase is NOT loaded +%% RmS 92/03/18: changed message to errmessage +inner bye; +if not unknown cmbase: + errhelp "This font must be generated using the plain base."; + errmessage "You can't use cmbase for this font!"; + expandafter bye fi +font_identifier "LINE"; font_size 10pt#; +font_coding_scheme:="LATEX LINE"; +mode_setup; + +qqs#=.4pt#; %width of lines +qqh#=10pt#; %height of vertical stroke. +qqw#=10pt#; %length of horizontal stroke. + +%arrow dimensions: +arrowlen#=.4*qqw#; arrowht#=.15*qqw#; arrowcurve#=.1*arrowht#; +input line; diff --git a/Master/texmf-dist/fonts/source/public/latex/linew10.mf b/Master/texmf-dist/fonts/source/public/latex/linew10.mf new file mode 100644 index 00000000000..1110232291f --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/latex/linew10.mf @@ -0,0 +1,18 @@ +%% RmS 91/11/14: check that cmbase is NOT loaded +%% RmS 92/03/18: changed message to errmessage +inner bye; +if not unknown cmbase: + errhelp "This font must be generated using the plain base."; + errmessage "You can't use cmbase for this font!"; + expandafter bye fi +font_identifier "LINEW"; font_size 10pt#; +font_coding_scheme:="LATEX LINE"; +mode_setup; + +qqs#=.8pt#; %width of lines +qqh#=10pt#; %height of vertical stroke. +qqw#=10pt#; %length of horizontal stroke. + +%arrow dimensions: +arrowlen#=.6*qqw#; arrowht#=.22*qqw#; arrowcurve#=.1*arrowht#; +input line; diff --git a/Master/texmf-dist/fonts/source/public/latex/sroman.mf b/Master/texmf-dist/fonts/source/public/latex/sroman.mf new file mode 100644 index 00000000000..722937ca371 --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/latex/sroman.mf @@ -0,0 +1,70 @@ +% This is the driver file sroman.mf based on roman.mf in the +% Computer Modern Roman family of fonts (by D. E. Knuth, 1979--1985) +% It differs from roman.mf only in that it has been +% adjusted to call for sromanu.mf with a special uppercase I +% for the SLITeX fonts: lcmss8, lcmssb8, and lcmssi8. +% Written by Pierre A. MacKay, 16 Sept. 1986 + +if ligs>1: font_coding_scheme:="TeX text"; + spanish_shriek=oct"074"; spanish_query=oct"076"; +else: font_coding_scheme:=if ligs=0: "TeX typewriter text" + else: "TeX text without f-ligatures" fi; + spanish_shriek=oct"016"; spanish_query=oct"017"; fi + +mode_setup; font_setup; + +input sromanu; % upper case (majuscules) +input romanl; % lower case (minuscules) +input greeku; % upper case Greek letters +input romand; % numerals +input romanp; % ampersand, question marks, currency sign +input romspl; % lowercase specials (dotless \i, ligature \ae, etc.) +input romspu; % uppercase specials (\AE, \OE, \O) +input punct; % punctuation symbols common to roman and italic text +input accent; % accents common to roman and italic text +if ligs>1: input romlig; fi % letter ligatures +if ligs>0: input comlig; fi % ligatures common with italic text +if ligs<=1: input romsub; fi % substitutes for ligatures + +ligtable "!": "`" =: spanish_shriek; +ligtable "?": "`" =: spanish_query; +font_slant slant; font_x_height x_height#; +if monospace: font_normal_space 9u#; % no stretching or shrinking + font_quad 18u#; + font_extra_space 9u#; +else: font_normal_space 6u#+2letter_fit#; + font_normal_stretch 3u#; font_normal_shrink 2u#; + font_quad 18u#+4letter_fit#; + font_extra_space 2u#; + k#:=-.5u#; kk#:=-1.5u#; kkk#:=-2u#; % three degrees of kerning + ligtable "k": if serifs: "v": "a" kern -u#, fi\\"w": "e" kern k#, + "a" kern k#, "o" kern k#, "c" kern k#; + ligtable "P": "A" kern kk#, + "y": "o" kern k#, "e" kern k#, "a" kern k#, "." kern kk#, "," kern kk#; + ligtable "F": "V": "W": if serifs: "o" kern kk#, "e" kern kk#, "u" kern kk#, + "r" kern kk#, "a" kern kk#, "A" kern kkk#, + else: "o" kern k#, "e" kern k#, "u" kern k#, + "r" kern k#, "a" kern k#, "A" kern kk#, fi + "K": "X": "O" kern k#, "C" kern k#, "G" kern k#, "Q" kern k#; + ligtable "T": "y" kern if serifs: k# else: kk# fi, + "Y": "e" kern kk#, "o" kern kk#, + "r" kern kk#, "a" kern kk#, "A" kern kk#, "u" kern kk#; + ligtable "O": "D": "X" kern k#, "W" kern k#, "A" kern k#, + "V" kern k#, "Y" kern k#; + if serifs: ligtable "h": "m": "n": + "t" kern k#, "u" kern k#, "b" kern k#, "y" kern k#, "v" kern k#, "w" kern k#; + ligtable "c": "h" kern k#, "k" kern k#; fi + ligtable "o": "b": "p": "e" kern -k#, "o" kern -k#, "x" kern k#, + "d" kern -k#, "c" kern -k#, "q" kern -k#, + "a": if serifs: "v" kern k#, "j" kern u#, else: "r" kern k#, fi + "t": "y" kern k#, + "u": "w" kern k#; + ligtable "A": if serifs: "R": fi\\ "t" kern k#, + "C" kern k#, "O" kern k#, "G" kern k#, "U" kern k#, "Q" kern k#, + "L": "T" kern kk#, "Y" kern kk#, "V" kern kkk#, "W" kern kkk#; + ligtable "g": "j" kern -k#; % logjam + ligtable "I": "I" kern -k#; fi % Richard III + % there are ligature/kern programs for |"f"| in the {\tt romlig} file + % and for |"-"|, |"`"|, and |"'"| in the {\tt comlig} file +bye. + diff --git a/Master/texmf-dist/fonts/source/public/latex/sromanu.mf b/Master/texmf-dist/fonts/source/public/latex/sromanu.mf new file mode 100644 index 00000000000..ddc3b215b0b --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/latex/sromanu.mf @@ -0,0 +1,54 @@ +% File: MF Inputs sromanu.mf +% Author: Pierre A. MacKay +% Internet: mackay@cs.washington.edu +% Date: June 25, 1991 +% +% This for the SLITeX fonts: lcmss8, lcmssb8, lcmssi8. +% All characters in romanu.mf except I are generated +% A special I with slab serifs is then substituted for the +% normal, confusing, sans-serif I of cmss* fonts. +% Based on the macros in the METAFONTbook, Appendix E, +% page 307 & 312. Just as in the case of the iff +% macro, this depends on the expectation that every +% character program will end with endchar. + +string currenttitle; +def exclude_I expr t = + currenttitle:= t; + if t = "The letter I" : let next_ = lose_it_ + else: let next_ = use_it_ fi; next_ enddef; +% Add _ to the macro names used by iff to avoid confusion. +def use_it_ = relax; enddef; +def lose_it_ = let endchar = fi; let ; = fix_ semi_ + if false: enddef; +let cmchar = exclude_I; +input romanu +let cmchar=relax; + +% Uppercase I provided by Pierre A. MacKay, in June l986. +% The I has slab serifs based on the proportions of +% the upper and lower horizontals of upper case E. + +cmchar "The letter I"; +beginchar("I",max(6u#,4u#+cap_stem#),cap_height#,0); +italcorr cap_height#*slant-.25u#; +adjust_fit(cap_serif_fit#,cap_serif_fit#); +pickup tiny.nib; pos1(cap_stem,0); pos2(cap_stem,0); +lft x1l=lft x2l=hround(.5w-.5cap_stem); top y1=h; bot y2=0; +filldraw stroke z1e--z2e; % stem +pickup crisp.nib; % arms based on proportions of uppercase E +pos3(slab,90); pos4(slab if not serifs:+2stem_corr fi,-90); +x3=x4=x1; top y3r=h; bot y4r=0; +pos5(hair,0); pos6(hair,0); % top and bottom right arms +rt x5r=rt x6r=hround(w-u); +pos7(hair,180); pos8(hair,180); % top and bottom left arms +lft x7r=lft x8r=hround(u); +y5=y7=good.y(y3l-beak)-eps; % beak in case we ever want a beaked serif! +y6=y8=good.y(y4l+beak)+eps; % watch that this doesn't get too heavy +arm(3,5,a,darkness,jut); arm(3,7,b,darkness,jut); % top left and right arms +arm(4,6,c,darkness,jut); arm(4,8,d,darkness,jut); % bottom left and right +if serifs: dish_serif(1,2,a,1/3,1.05cap_jut,b,1/3,1.05cap_jut); % upper serif + dish_serif(2,1,c,1/3,1.05cap_jut,d,1/3,1.05cap_jut); fi % lower serif +math_fit(0,.5ic#); penlabels(1,2,3,4,5,6,7,8); endchar; + +endinput; |