summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/fonts/source/public/lxfonts/lmsbm8.mf
blob: fd56dc715505c2fb10310058ea5e7bbeace233a0 (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
98
99
100
101
102
103
104
105
%% This is file LMSMB8 copied and modified from MSAM10 by American Mathematical
%% Society, so as to change all the parameters and see what happens with the slides-font 
%% parameters; hopefully a new font is obtained that better matches the slides fonts
% with their characteristic large x-height and small ascender height; with math symbols
% this should not be so important, but ...
%%
%% Claudio Beccari 2007
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
if unknown cmbase: input cmbase fi

font_identifier:="LMSBM"; font_size 8pt#;

u#:=20/36pt#;                           % unit width
width_adj#:=0/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#:=0/36pt#;                         % amount erased at top or bottom of serifs
bracket#:=00/36pt#;                     % vertical distance from serif base to tangent
jut#:=0/36pt#;                          % protrusion of lowercase serifs
cap_jut#:=0/36pt#;                      % protrusion of uppercase serifs
beak_jut#:=0/36pt#;                     % horizontal protrusion of beak serifs
beak#:=00/36pt#;                        % 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#:=0/36pt#;                   % 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:=.25;                             % tilt ratio $(\Delta x/\Delta y)$
fudge:=.95;                             % factor applied to weights of heavy characters
math_spread:=.4;                        % 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:=false;                       % 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 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#+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.99pt#-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

def diagonal (suffix ne, sw)= draw z.ne--z.sw enddef;

generate lamsyb                       % switch to the driver file