summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/generic/ofs/txfn.tex
blob: eb17ae6dd1e381b1fa10c7a54b0208249eea9cc8 (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
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
% OFS: TX fonts, declaration
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Apr. 2004                                  Petr Olsak

%% see end of this file for more informations

\protectreading txfn.tex % This is part of OFS package

\ofsputfamlist {^^Jtxfn.tex:}

\ofsdeclarefamily [TXRoman] {% ---------- TX fonts: Times Roman
   \loadtextfam (Upright) txr\fotenc;%
                          txb\fotenc;%
                          txi\fotenc;%
                          txbi\fotenc;8c;%
   \newvariant6 \sl   (Slanted)          txsl\fotenc;8c;%
   \newvariant7 \bsl  (BoldSlanted)      txbsl\fotenc;8c;%
   \newvariant8 \csc  (Cap+SmallCap)     txsc\fotenc;8c;%
   \newvariant9 \bcsc (BoldCap+SmallCap) txbsc\fotenc;8c;%
   \def\TeX{T\kern-.1667em\lower.3333ex\hbox{E}\kern-.125emX}%
}
\registerenc: 8t

\ofsdeclarefamily [TXSans] {% ---------- TX fonts: Helvetica
   \loadtextfam (Upright)     txss\fotenc;%
                              txbss\fotenc;%
                (Slanted)     txsssl\fotenc;%
                (BoldSlanted) txbsssl\fotenc;8c;%
   \newvariant8 \csc  (Cap+SmallCap)     txsssc\fotenc;8c;%
   \newvariant9 \bcsc (BoldCap+SmallCap) txbsssc\fotenc;8c;%
   \def\TeX{T\kern-.12em\lower.4ex\hbox{E}\kern-0.09emX}%
}
\registerenc: 8t

\ofsdeclarefamily [TXTypewriter] {% ------ TX fonts: Typewriter
   \loadtextfam (Upright)     txtt\fotenc;%
                              txbtt\fotenc;%
                (Slanted)     txttsl\fotenc;%
                (BoldSlanted) txbttsl\fotenc;8c;%
   \newvariant8 \csc  (Cap+SmallCap)     txttsc\fotenc;8c;%
   \newvariant9 \bcsc (BoldCap+SmallCap) txbttsc\fotenc;8c;%
   \let\TeX=\origTeX
}
\registerenc: 8t

\registertfm txr8t    - t1xr   %
\registertfm txb8t    - t1xb   %
\registertfm txi8t    - t1xi   %
\registertfm txbi8t   - t1xbi  %
\registertfm txsl8t   - t1xsl  %
\registertfm txbsl8t  - t1xbsl %
\registertfm txsc8t   - t1xsc  %
\registertfm txbsc8t  - t1xbsc %

\registertfm txss8t     - t1xss    %
\registertfm txbss8t    - t1xbss   %
\registertfm txsssl8t   - t1xsssl  %
\registertfm txbsssl8t  - t1xbsssl %
\registertfm txsssc8t   - t1xsssc  %
\registertfm txbsssc8t  - t1xbsssc %

\registertfm txtt8t     - t1xtt    %
\registertfm txbtt8t    - t1xbtt   %
\registertfm txttsl8t   - t1xttsl  %
\registertfm txbttsl8t  - t1xbttsl %
\registertfm txttsc8t   - t1xttsc  %
\registertfm txbttsc8t  - t1xbttsc %

\registertfm txr8c    - tcxr   %
\registertfm txb8c    - tcxb   %
\registertfm txi8c    - tcxi   %
\registertfm txbi8c   - tcxbi  %
\registertfm txsl8c   - tcxsl  %
\registertfm txbsl8c  - tcxbsl %
\registertfm txsc8c   - tcxr   %
\registertfm txbsc8c  - tcxb   %

\registertfm txss8c    - tcxss    %
\registertfm txbss8c   - tcxbss   %
\registertfm txsssl8c  - tcxsssl  %
\registertfm txbsssl8c - tcxbsssl %
\registertfm txsssc8c  - tcxss    %
\registertfm txbsssc8c - tcxbss   %

\registertfm txtt8c    - tcxtt    %
\registertfm txbtt8c   - tcxbtt   %
\registertfm txttsl8c  - tcxttsl  %
\registertfm txbttsl8c - tcxbttsl %
\registertfm txttsc8c  - tcxtt    %
\registertfm txbttsc8c - tcxbtt   %

\def\loadTXnormalmath{%
  \loadmathfam 0[/txr]%                    Roman font
  \defaultskewchar=128
  \loadmathfam 1[/txmi]%                   Math Italic font
  \defaultskewchar=48
  \loadmathfam 2[/txsy]%                   Standard symbols
  \defaultskewchar=-1
  \noindexsize\loadmathfam 3[/txex]%       Standard extra symbols
  \chardef\itfam    4 
  \loadmathfam \itfam [/txi]%              Text Italic
  \chardef\bffam    5
  \loadmathfam \bffam [/txb]%              Bold font
  \chardef\bifam   6 
  \loadmathfam \bifam    [/txbi]%          Bold Italic
  \chardef\msamfam  7
  \loadmathfam \msamfam  [/txsya]%         MSAM, symbols from ASMTeX
  \chardef\msbmfam  8
  \loadmathfam \msbmfam  [/txsyb]%         MSBM, symbols from AMSTeX
  \chardef\txsycfam 9
  \loadmathfam \txsycfam [/txsyc]%         New symbols from TX fonts
  \chardef\txmiafam 10
  \loadmathfam \txmiafam [/txmia]%         Upright math italic
  \chardef\txexafam 11
  \loadmathfam \txexafam [/txexa]%         Extra extra symbols
  \let\slfam\undefined  \let\ttfam\undefined
  \lastfam =11 % four families for user
}
\def\loadTXboldmath{%
  \loadmathfam 0[/txb]%                     Roman font
  \defaultskewchar=127
  \loadmathfam 1[/txbmi]%                   Math Italic font
  \defaultskewchar=48
  \loadmathfam 2[/txbsy]%                   Standard symbols
  \defaultskewchar=-1
  \noindexsize\loadmathfam 3[/txbex]%       Standard extra symbols
  \chardef\itfam    4 
  \loadmathfam \itfam [/txbi]%              Text Italic
  \chardef\msamfam  7
  \loadmathfam \msamfam  [/txbsya]%         MSAM, symbols from ASMTeX
  \chardef\msbmfam  8
  \loadmathfam \msbmfam  [/txbsyb]%         MSBM, symbols from AMSTeX
  \chardef\txsycfam 9
  \loadmathfam \txsycfam [/txbsyc]%         New symbols from TX fonts
  \chardef\txmiafam 10
  \loadmathfam \txmiafam [/txbmia]%         Upright math italic
  \chardef\txexafam 11
  \loadmathfam \txexafam [/txbexa]%         Extra extra symbols
  \chardef\bffam=0 \let\bifam=\itfam
  \let\slfam\undefined  \let\ttfam\undefined
  \lastfam =11 % needs to be the same as in normalmath
}
\def\loadPXnormalmath{%
  \loadmathfam 0[-rm/]%                    Roman font
  \loadmathfam 1[-it/]%                    Math Italic font
  \defaultskewchar=48
  \loadmathfam 2[/txsy]%                   Standard symbols
  \defaultskewchar=-1
  \noindexsize\loadmathfam 3[/txex]%       Standard extra symbols
  \chardef\mifam    4 
  \loadmathfam \mifam [/txmi]%             Math Italic (greek symbols)
  \chardef\bffam    5
  \loadmathfam \bffam [-bf/]%              Bold font
  \chardef\bifam    6 
  \loadmathfam \bifam    [-bi/]%           Bold Italic
  \chardef\msamfam  7
  \loadmathfam \msamfam  [/txsya]%         MSAM, symbols from ASMTeX
  \chardef\msbmfam  8
  \loadmathfam \msbmfam  [/txsyb]%         MSBM, symbols from AMSTeX
  \chardef\txsycfam 9
  \loadmathfam \txsycfam [/txsyc]%         New symbols from TX fonts
  \chardef\txmiafam 10
  \loadmathfam \txmiafam [/txmia]%         Upright math italic
  \chardef\txexafam 11
  \loadmathfam \txexafam [/txexa]%         Extra extra symbols
  \chardef\rmsyfam  12
  \loadmathfam \rmsyfam  [/txr]%           TX Roman font (for uppercase greek)
  \let\slfam\undefined  \let\ttfam\undefined
  \lastfam =12 % three families for user
}
\def\loadPXboldmath{%
  \loadmathfam 0[-bf/]%                     Roman font
  \loadmathfam 1[-bi/]%                     Math Italic font
  \defaultskewchar=48
  \loadmathfam 2[/txbsy]%                   Standard symbols
  \defaultskewchar=-1
  \noindexsize\loadmathfam 3[/txbex]%       Standard extra symbols
  \chardef\mifam    4 
  \loadmathfam \mifam [/txbmi]%             Math Italic (greek symbols)
  \chardef\msamfam  7
  \loadmathfam \msamfam  [/txbsya]%         MSAM, symbols from ASMTeX
  \chardef\msbmfam  8
  \loadmathfam \msbmfam  [/txbsyb]%         MSBM, symbols from AMSTeX
  \chardef\txsycfam 9
  \loadmathfam \txsycfam [/txbsyc]%         New symbols from TX fonts
  \chardef\txmiafam 10
  \loadmathfam \txmiafam [/txbmia]%         Upright math italic
  \chardef\txexafam 11
  \loadmathfam \txexafam [/txbexa]%         Extra extra symbols
  \chardef\rmsyfam  12
  \loadmathfam \rmsyfam  [/txb]%            TX Roman font (for uppercase greek)
  \chardef\bffam=0 \chardef\bifam=1
  \let\slfam\undefined  \let\ttfam\undefined
  \lastfam =12 % needs to be the same as in normalmath
}
\def\setTXmathchars{%
  \mathencread ofs-ams;%
  \mathencread ofs-tx;%
}
\def\setPXmathchars{%
  \mathencread ofs-px;%
  \mathencread ofs-ams;%
  \mathencread ofs-tx;%
  \addcmd \mathcharsback {\mathencread ofs-cm;}%
}
\endinput

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

After:

\input txfn

the new text families TXRoman, TXSans and TXTypewriter
are declared and new math encodings TX and PX are declared.

TXRoman: the same as Times, but more variants \sl, \bsl, \csc and 
         \bcsc are defined and extension font is used from TXfonts 
         (all text-companion symbols are available).
TXSans:  the same as Helvetica, but more variants \csc and \bcsc
         are defined and extension font is used from TXfonts.
TXTypewriter: Special typewriter-like family from TXfonts.

TX: TXfonts will be used in all families of math fonts.
PX: fam0 (roman) will be the same as current text roman variant,
    fam1 (math-italic) will be the same as current text italic,
    other math symbols will be used from TXfonts.

Control sequences of all TX symbols (many hunderds) are available 
in math mode after \setmath[//] if \def\fomenc{TX} or
\def\fomenc{PX} is used. See TX documentation for more information
about names of these sequences and symbols shapes.

Not all possible math alphabets are allocated. For example, typewriter
and slanted variants are not allocated by default in order to keep the
space of math families. You can add math alphabets by hand:

* Sans serif bold slanted variant for math (usable for vectors):

\addcmd\mathfonts {\newmathfam\vecfam \loadmathfam\vecfam [/txbsssl]}
\addcmd\mathchars {\def\vec##1{{\fam\vecfam##1}}}

* \sl variant for math (I don't know how it is usable):

\addcmd\mathfonts {\def\tmpa{bold}%
   \ifx\mathversion\tmpa \def\tmpa{b}\else\def\tmpa{}\fi
   \newmathfam\slfam \loadmathfam\slfam [/tx\tmpa sl]}

* \tt variant for math (I don't know how it is usable):

\addcmd\mathfonts {\def\tmpa{bold}%
   \ifx\mathversion\tmpa \def\tmpa{b}\else\def\tmpa{}\fi
   \newmathfam\ttfam \loadmathfam\ttfam [/tx\tmpa tt]}

See end of amsfn.tex file for more examples of math alphabets 
(Euler Fraktur, Euler Script etc.).