summaryrefslogtreecommitdiff
path: root/systems/knuth/local/cm/cmsytt10.mf
blob: 1a28aefc6b044a37673b1cafc73f166c1d9f1bfb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
% Computer Modern Math Symbols 10 point Typewriter
if unknown cmbase: input cmbase fi

font_identifier:="CMSYTT"; font_size 10pt#;

u#:=21/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#:=250/36pt#;  % height of tallest characters
asc_height#:=220/36pt#;    % height of lowercase ascenders
cap_height#:=220/36pt#;    % height of caps
fig_height#:=220/36pt#;    % height of numerals
x_height#:=155/36pt#;    % height of lowercase without ascenders
math_axis#:=110/36pt#;    % axis of symmetry for math symbols
bar_height#:=79/36pt#;    % height of crossbar in lowercase e
comma_depth#:=50/36pt#;    % depth of comma below baseline
desc_depth#:=80/36pt#;    % depth of lowercase descenders

crisp#:=22/36pt#;    % diameter of serif corners
tiny#:=22/36pt#;    % diameter of rounded corners
fine#:=21/36pt#;    % diameter of sharply rounded corners
thin_join#:=21/36pt#;    % width of extrafine details
hair#:=25/36pt#;    % lowercase hairline breadth
stem#:=25/36pt#;    % lowercase stem breadth
curve#:=25/36pt#;    % lowercase curve breadth
ess#:=22/36pt#;      % breadth in middle of lowercase s
flare#:=32/36pt#;    % diameter of bulbs or breadth of terminals
dot_size#:=36/36pt#;    % diameter of dots
cap_hair#:=25/36pt#;    % uppercase hairline breadth
cap_stem#:=25/36pt#;    % uppercase stem breadth
cap_curve#:=25/36pt#;    % uppercase curve breadth
cap_ess#:=25/36pt#;    % breadth in middle of uppercase s
rule_thickness#:=25/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#:=34/36pt#;      % protrusion of lowercase serifs
cap_jut#:=34/36pt#;    % protrusion of uppercase serifs
beak_jut#:=0pt#;    % horizontal protrusion of beak serifs
beak#:=34/36pt#;    % vertical protrusion of beak serifs
vair#:=22/36pt#;    % vertical diameter of hairlines
notch_cut#:=25/36pt#;    % maximum breadth above or below notches
bar#:=22/36pt#;      % lowercase bar thickness
slab#:=22/36pt#;    % serif and arm thickness
cap_bar#:=22/36pt#;    % uppercase bar thickness
cap_band#:=22/36pt#;    % uppercase thickness above/below lobes
cap_notch_cut#:=25/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#:=10/36pt#;    % extra width at diagonal junctions

o#:=4/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?

% the following font parameters are explained in {\sl The \TeX book}, Appendix G
% I've copied them from cmsy10 (maybe a bad idea, but for today it's OK...)

subs:=7/10;  % subscripts to 10pt will normally be in 7pt type
rth#:=.4pt#;  % assume that rules will come from cmex10
fontdimen 8:  % parameters $\sigma_8$ through $\sigma_{22}$ will now be listed
 math_axis#+3.51rth#+54/36pt#+subs*desc_depth#,      % num1
 math_axis#+1.51rth#+30/36pt#,          % num2
 math_axis#+1.51rth#+48/36pt#,          % num3
 -(math_axis#-3.51rth#-subs*fig_height#-124/36pt#),    % denom1
 -(math_axis#-1.51rth#-subs*fig_height#-30/36pt#),    % denom2
 8.99pt#-subs*asc_height#,          % sup1
 8.49pt#-subs*asc_height#,          % sup2
 104/36pt#,              % sup3
 54/36pt#,              % sub1
 -(8.49pt#-2subs*asc_height#-3.1rth#),        % sub2
 subs*asc_height#-36/36pt#,          % sup\_drop
 18/36pt#,              % sub\_drop
 23.9pt#,              % delim1
 10.1pt#,              % delim2
 math_axis#;              % axis\_height

generate mathsy      % switch to the driver file