blob: 0ad8e42444ee5d23fe8bdb88ae58a64c9b035d28 (
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
106
107
108
109
110
111
112
113
114
115
|
% File: kmtcsc10.mf
% Based on: cmrctz10.mf
% Modified by: Oliver Corff
% Date: June 1998, Ulaanbaatar
%
% Computer Modern Typewriter Caps and Small Caps 10 point
if unknown cmbase: input cmbase fi
font_identifier:="KMTCSC"; 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#:=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?
% now come replacements used to set the lowercase caps
lower.u#:=21/36pt#; % unit width
lower.width_adj#:=0pt#; % width adjustment for certain characters
lower.cap_serif_fit#:=0pt#; % extra sidebar near uppercase serifs
lower.letter_fit#:=3/36pt#; % extra space added to all sidebars
lower.body_height#:=190/36pt#; % height of tallest characters
lower.cap_height#:=170/36pt#; % height of caps
lower.x_height#:=120/36pt#; % height of lowercase without ascenders
lower.bar_height#:=62/36pt#; % height of crossbar in lowercase e
lower.comma_depth#:=38/36pt#; % depth of comma below baseline
lower.flare#:=30/36pt#; % diameter of bulbs or breadth of terminals
lower.cap_hair#:=25/36pt#; % uppercase hairline breadth
lower.stem#:=25/36pt#; % lowercase stem breadth
lower.cap_stem#:=25/36pt#; % uppercase stem breadth
lower.cap_curve#:=25/36pt#; % uppercase curve breadth
lower.cap_ess#:=25/36pt#; % breadth in middle of uppercase s
lower.cap_jut#:=26/36pt#; % protrusion of uppercase serifs
lower.beak_jut#:=0pt#; % horizontal protrusion of beak serifs
lower.beak#:=26/36pt#; % vertical protrusion of beak serifs
lower.slab#:=22/36pt#; % serif and arm thickness
lower.cap_bar#:=22/36pt#; % uppercase bar thickness
lower.cap_band#:=22/36pt#; % uppercase thickness above/below lobes
lower.cap_notch_cut#:=24/36pt#; % max breadth above/below uppercase notches
lower.o#:=3/36pt#; % amount of overshoot for curves
lower.apex_o#:=2/36pt#; % amount of overshoot for diagonal junctions
lower.fudge:=0.85; % factor applied to weights of heavy characters
generate mcyccsc; % switch to the driver file
|