-
Notifications
You must be signed in to change notification settings - Fork 18
/
chapter04.tex
443 lines (394 loc) · 23.6 KB
/
chapter04.tex
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
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
% -*- coding: utf-8 -*-
% Translated by [email protected]
% Date of translated: 2018-05-11
\documentclass{book}
\input{preamble}
\setcounter{chapter}{3}
\begin{document}
%\chapter{Fonts}\label{font}
\chapter{字体}\label{font}
%In text mode \TeX\ takes characters from a `current font'.
%This chapter describes how \indexterm{fonts} are identified to \TeX,
%and what attributes a font can have.
在文本模式下,\TeX 会从「当前字体」中取用字符。本章讨论 \TeX 是如何识别不同\emph{字体}的,以及字体都有哪些属性。
\label{cschap:font}\label{cschap:fontname}\label{cschap:nullfont}\label{cschap:hyphenchar}\label{cschap:defaulthyphenchar}\label{cschap:fontdimen}\label{cschap:char47}\label{cschap:noboundary}
\begin{inventory}
%\item [\cs{font}]
% Declare the identifying control sequence of a font.
\item [\cs{font}] 该命令可声明一个用于指定字体的控制序列。
%\item [\cs{fontname}]
% The external name of a font.
\item [\cs{fontname}] 字体的外部名字。
%\item [\cs{nullfont}]
% Name of an empty font that \TeX\ uses in emergencies.
\item [\cs{nullfont}] 在特殊情况下,\TeX 会使用空字体。这是空字体的名字。% (Liam0205)意译:紧急情况 -> 特殊情况
%\item [\cs{hyphenchar}]
% Number of the hyphen character of a font.
\item [\cs{hyphenchar}] 字体中连字符的序号。
%\item [\cs{defaulthyphenchar}]
% Value of \cs{hyphenchar} when a font is loaded.
% Plain \TeX\ default:~\verb>`\->.
\item [\cs{defaulthyphenchar}] 字体装载时 \cs{hyphenchar} 的默认值。在 plain \TeX 中,默认是 \verb.`\-.(即 \n{-} 的字符编码)。
%\item [\cs{fontdimen}]
% Access various parameters of fonts.
\item [\cs{fontdimen}] 该命令可访问多种字体参数。
%\item [\cs{char47}]
% Italic correction.
\item [\cs{/}] 倾斜校正原语。
%\item [\cs{noboundary}]
% Omit implicit boundary character.
\item [\cs{noboundary}] 忽略隐式边界字符。
\end{inventory}
%%\point Fonts
%\section{Fonts}
%\point Fonts
\section{字体}
%In \TeX\ terminology a font is the set of characters that
%is contained in one external font file.
%During processing, \TeX\ decides from
%what font a character should be taken. This decision is
%taken separately for text mode and math mode.
在 \TeX 语境下,字体(font)这一术语指的是保存在外部文件中的一系列字符的集合。\TeX 在运行时,会决定从哪一个字体中选取字符。而具体决策方式在文本模式和数学模式中又是不同的。
%When \TeX\ is processing ordinary text, characters are taken
%from the `current font'.
%External font file names are coupled to control sequences
%by statements such as
\TeX 处理普通文本时会从「当前字体」中选取字符。通过字体声明,\TeX 会将外部字体文件与字体选择命令联系起来。例如,下列声明会使 \TeX 装载名为 \n{myfont10.tfm} 的字体文件。
\begin{verbatim}
\font\MyFont=myfont10
\end{verbatim}
%which makes \TeX\ load the file \n{myfont10.tfm}.
%Switching the current font to the font described in that file
%is then done by
此后,通过下列命令,我们就可以选择使用该文件定义的字体了。
\begin{verbatim}
\MyFont
\end{verbatim}
%The status of the current font
%can be queried: the sequence
当前字体的状态是可查的:下列命令会产生当前字体对应的控制序列。
\begin{verbatim}
\the\font
\end{verbatim}
%produces the control sequence for the current font.
%Math mode completely ignores the current font. Instead
%it looks at the `current family', which can contain
%three fonts: one for text style, one for script style,
%and one for scriptscript style. This is treated
%in Chapter~\ref{mathchar}.
数学模式下,\TeX 会忽略当前字体;转而考察当前「字族」,其中有三个字体:正文字体(text style),角标字体(script style),双重角标字体(scriptscript style)。详见第~\ref{mathchar}~章。
%See \cite{S} for a consistent terminology of fonts and typefaces.
关于字体(font)与字形(typeface)的一贯术语,请参阅~\cite{S}。
%With `virtual fonts' (see~\cite{K:virt}) it is possible that
%what looks like one font to \TeX\ resides in more than
%one physical font file.
%\alt
%See further page~\pageref{virtual:fonts}.
从不同物理字体文件中分别选取部分字符,可以组成的「虚拟字体」(见~\cite{K:virt})。在 \TeX 看来,这种虚拟字体就像是真实字体一样。更多相关内容详见第~\pageref{virtual:fonts}~页。
%%\point Font declaration
%\section{Font declaration}
%\point Font declaration
\section{字体声明}
%Somewhere during a run of \TeX\ or \IniTeX\
%\cstoidx font\par
%the coupling between an internal identifying control sequence
%and the external file name of a font has to be made.
%The syntax of the command for this is
\TeX 或 \IniTeX 在执行时,必然在某处会建立内部字体选择命令与外部字体文件名的联系。\cstoidx font\par 字体声明的语法如下:
\begin{disp}
\cs{font}\gr{control sequence}\gr{equals}\gr{file name}\gr{at clause}
\end{disp}
这里,\gr{at clause} 指的是:
\begin{disp}
\gr{at clause} $\longrightarrow$ \n{at} \gr{dimen} $|$ \n{scaled} \gr{number} $|$ \gr{optional spaces}
\end{disp}
%Font declarations are local to a group.
注意,字体声明仅在当前分组内生效。
%By the \gr{at clause} the user specifies that some
%magnified version of the font is wanted. The \gr{at clause} comes
%in two forms: if the font is given \n{scaled}~{\italic f\/} \TeX\
%multiplies all its font dimensions for that font by~$f/1000$;
%if the font
%has a design size~{\italic d\/}\n{pt} and
%the \gr{at clause} is \n{at}~{\italic p\/}\n{pt}
%\TeX\ multiplies all font data by~$p/d$.
%The presence of an \gr{at clause} makes no difference for
%the external font file (the \n{.tfm} file)
%that \TeX\ reads for the font; it just multiplies
%the font dimensions by a constant.
用户可以通过 \gr{at clause} 指定字体的放大版本。\gr{at clause} 有两种形式:如果指定缩放比例 \n{scaled}~{\itshape f\/},则 \TeX 会将该字体中的所有字符尺寸倍乘 $f/1000$;如果指定目标大小 \n{at}~{\itshape f\/}\n{pt},而字体本身的设计大小是 {\itshape d\/}\n{pt},则 \TeX 会将该字体中的所有字符尺寸倍乘 $f/d$。注意,\gr{at clause} 不会影响 \TeX 从外部字体文件(\n{.tfm} 文件)中读入字体的过程;它只是在尺寸上乘了一个固定的倍数。
%After such a font declaration, using the defined control sequence
%will set the current font to the font of the
%control sequence.
这样声明字体后,使用定义得到的控制序列会将当前字体设置为控制序列相应的字体。
%%\spoint Fonts and \n{tfm} files
%\subsection{Fonts and \n{tfm} files}
%\spoint Fonts and \n{tfm} files
\subsection{字体与 \n{tfm} 文件}
%The external file needed for the font is a \n{tfm}
%(\TeX\ font metrics) file,
%which is taken independent of any \gr{at clause}
%in the \cs{font} declaration. If the \n{tfm}
%file has been loaded already (for instance by \IniTeX\
%when it constructed the format),
%an assignment of that font file can be reexecuted
%without needing recourse to the \n{tfm} file.
\TeX 所需的外部字体文件是 \n{tfm} 文件(\TeX 字体尺寸文件,\TeX\ Font Metrics File),这些文件不受 \cs{font} 声明中 \gr{at clause} 的影响。如果 \n{tfm} 事先已装载好(比如在构造格式文件时由 \IniTeX 装载),则再次声明同一字体时,不依赖且无需重复载入 \n{tfm} 文件。
%Font design sizes are given in the font metrics files.
%The \n{cmr10} font, for instance, has a design size
%of 10~point. However, there is not much in the font
%that actually has a size of 10~points: the opening and closing
%parentheses are two examples, but capital
%letters are considerably smaller.
字体本身的设计大小由字体尺寸文件给出。例如,字体 \n{cmr10} 的设计大小是 10 点(point)。但实际上,字体中没有多少字符大小是 10 点:左右圆括号恰好是 10 点,但大写字母明显会小一点。
%%\spoint Querying the current font and font names
%\subsection{Querying the current font and font names}
%\spoint Querying the current font and font names
\subsection{查询当前字体及字体名}
%It was already mentioned above that the control sequence
%which set the current font can be retrieved by the
%command \verb>\the\font>. This is a special case of
前文提到过,当前字体的字体选择命令可通过 \verb.\the\font. 得到。这是下列语法的一个特例。
\begin{Disp}\cs{the}\gr{font}\end{Disp}
%where
此处,\gr{font} 表示:
\begin{disp}
\gr{font} $\longrightarrow$ \cs{font} $|$ \gr{fontdef token} $|$ \gr{family member}\nl
\gr{family member} $\longrightarrow$ \gr{font range}\gr{4-bit number}\nl
\gr{font range} $\longrightarrow$ \cs{textfont} $|$ \cs{scriptfont} $|$ \cs{scriptscriptfont}
\end{disp}
%A \gr{fontdef token} is a control sequence defined by \cs{font},
%or the predefined control sequence \cs{nullfont}.
%The concept of \gr{family member} is only
%relevant in math mode.
\gr{fontdef token} 是由 \cs{font} 定义的控制序列,或是预定义的 \cs{nullfont}。至于 \gr{family member} 的概念,则只与数学模式有关。
%Also, the
%\cstoidx fontname\par
%external name of fonts can be retrieved:
此外,外部字体文件名可用以下方式取得:
\cstoidx fontname\par
\begin{Disp}\cs{fontname}\gr{font}\end{Disp}
%gives a sequence of character tokens of category~12\index{category!12}
%(but space characters get category~10\index{category!10}) that spells the font file
%name, plus an \gr{at clause} if applicable.
该命令以字符串的形式(其中的字符记号分类码均为 12\index{category!12},而空格记号的分类码为 10\index{category!10})给出当前字体的文件名;若有相应的 \gr{at clause} 则也一并给出。
\begin{example}
%After
在如下声明之后,
\begin{verbatim}
\font\tenroman=cmr10 \tenroman
\end{verbatim}
%the calls
%\verb>\the\font> and \verb>\the\tenroman> both give \cs{tenroman}.
%The call \verb>\fontname\tenroman> gives \n{cmr10}.
\verb.\the\font. 和 \verb.\the\tenroman. 会给出 \cs{tenroman};\verb.\fontname\tenroman. 则给出 \n{cmr10}。
\end{example}
%%\spoint \cs{nullfont}
%\subsection{\cs{nullfont}}
%\spoint \cs{nullfont}
\subsection{\cs{nullfont}}
%\TeX\ always knows a font that has no characters: the \csidx{nullfont}.
%If no font has been specified, or if in math mode a family member
%is needed that has not been specified,
%\TeX\ will take its characters from the nullfont.
%This control sequence qualifies as a \gr{fontdef token}:
%it acts like any other control sequence that stands for a font;
%it just does not have an associated \n{tfm} file.
\TeX 将没有任何字符的字体与定义为 \csidx{nullfont}。如果没有指定任何字体,或是在数学模式中某一所需的字族成员未定义,则 \TeX 会从空字体中取用字符。该控制序列属于 \gr{fontdef token}:它与其它字体选择命令的行为类似;但不与任何外部 \n{tfm} 文件相关联。
%%\point Font information
%\section{Font information}
%\point Font information
\section{字体信息}
%During a run of \TeX\ the main information needed about the
%\index{\n{tfm} files}%
%font consists of the dimensions of the characters.
%\TeX\ finds these in the font metrics files, which usually have
%extension \n{.tfm}. Such files
%contain
\TeX 执行时所需的主要字体信息包括尺寸与字符。\index{\n{tfm} files}\TeX 会在字体尺寸文件中寻找这些信息,这些文件的扩展名通常是 \n{.tfm}。此类文件包含
\begin{itemize}
% \item global information: the \cs{fontdimen}
%parameters, and some other information,
\item 全局信息:主要是 \cs{fontdiem} 参数,还有其他一些信息
%\item dimensions and the italic corrections of characters, and
\item 字符的尺寸以及倾斜校正(italic corrections)
%\altt
%\item ligature and kerning programs for characters.
\item 字符的连字(ligature)及挤压(kerning)指令
\end{itemize}
%Also, the design size of a font is specified in the \n{tfm} file;
%see above. The definition of the \n{tfm} format can be found
%in~\cite{Knuth:TeXprogram}.
字体的设计大小也由 \n{tfm} 文件指定。\n{tfm} 文件格式的定义,参见~\cite{Knuth:TeXprogram}。
%%\spoint[font:dims] Font dimensions
%\subsection{Font dimensions}
%\label{font:dims}
%\spoint[font:dims] Font dimensions
\subsection{字体尺寸参数}
\label{font:dims}
%Text fonts need to have at least seven \csidx{fontdimen} parameters
%to describe \indextermsub{font}{dimensions}
%(but \TeX\ will take zero for unspecified parameters);
%math symbol and math extension fonts have more
%(see page~\pageref{fam23:fontdims}).
%For text fonts the minimal set of seven comprises the following:
文本字体至少得有 7 个 \cs{fontdimen} 参数来描述\cindextermsub{字体}{尺寸}(对于未指定的参数,\TeX 会以零作为默认值);数学符号以及数学扩展字体还有更多的参数(详见第~\pageref{fam23:fontdims}~页)。文本字体的 7 个参数描述如下:
\begin{enumerate}
% \item the slant per point; this dimension is used
% for the proper horizontal positioning of accents;
\item 每点倾斜(slant per point);该参数用于确定重音符号正确的水平位置。
%\item the interword space: this is used unless the user
% specifies an explicit \cs{spaceskip};
% see Chapter~\ref{space};
\item 词间空距(interword space):如果用户没有显式设定 \cs{spaceskip},则该参数会被当做词间空距的默认值;参见第~\ref{space}~章。
%\item interword stretch: the stretch component of the interword
% space;
\item 词间拉伸(interword stretch):该参数是词间距离的拉伸值部分。
%\item interword shrink: the shrink component of
% the interword space;
\item 词间收缩(interword shrink):该参数是词间距离的收缩值部分。
%\item the x-height: the value of
% the \gr{internal unit} \n{ex}, which is usually about the
% height of the lowercase letter~`x';
\item x-高度(x-height):该参数是 \TeX 内部单位(\gr{internal unit})\n{ex} 的值,通常是小写字母「x」的高度。
%\item the quad width:
% the value of the \gr{internal unit} \n{em}, which is
% approximately the width of the capital letter~`M'; and
\item 方块铅空\liamfnote{英文单词「quad」是传统铅印术中的术语,它来自意大利语单词「quadratone」,意思是「大方块」。}宽度(quad width):该参数是 \TeX 内部单位 \n{em} 的值,它大约是大写字母「M」的宽度。
%\item the extra space: the space added to the interword space
%at the end of sentences (that is, when \cs{spacefactor}${}\geq2000$)
%unless the user specifies an explicit \cs{x\-space\-skip}.
\item 额外空距(extra space):如果用户没有显式设定 \cs{x\-space\-skip},则该参数是在句子末尾处加在词间空距之上的额外空距(当 \cs{spacefactor}${}\geqslant2000$)。
\end{enumerate}
%Parameters 1 and~5 are purely information about the font
%and there is no point in varying them.
%The values of other parameters can be changed in order to
%adjust spacing; see Chapter~\ref{space} for examples
%of changing parameters 2, 3, 4, and~7.
第 1 个和第 5 个参数纯粹是字体的信息,因此改变它们没什么意义。其余参数则可以用来调整相关空距;第~\ref{space}~章有关于第 2, 3, 4, 7 个参数的相关示例。
%Font dimensions can be altered in a \gr{font
% assignment}\index{assignment!font}, which is a \gr{global
% assignment}\index{assignment!global} (see
%page~\pageref{global:assign}):
字体尺寸参数可用字体赋值语句(\gr{font assignment}\index{assignment!font})来修改,这种赋值语句属于全局赋值语句(\gr{global assignment}\index{assignment!global},参见第~\pageref{global:assign}~页):
\begin{Disp}\cs{fontdimen}\gr{number}\gr{font}\gr{equals}\gr{dimen}\end{Disp}
\gr{font} 的定义可见上文。
%%\spoint Kerning
%\subsection{Kerning}
%\spoint Kerning
\subsection{字符挤压}
%Some combinations of characters should be moved closer
%together than would be the case if their bounding boxes
%were to be just abutted. This fine spacing is called \indexterm{kerning},
%and a proper kerning is as essential to a font as the
%design of the letter shapes.
通常,每个字符的边界盒子(bounding box)彼此邻接。但对于部分字符组合来说,它们之间的距离应该比边界盒子邻接的情况更近一些。这种情况称为\indexterm{字符挤压}(\emph{kerning})。对于字体来说,字符挤压的设计与字符形状的设计同等重要。
%Consider as an example\message{Kerning!}
举个例子:
\begin{Disp} 有字符挤压的效果:Vo \quad 没有字符挤压的效果:V\hbox{}o\end{Disp}
%Kerning in \TeX\ is controlled by information in the
%\n{tfm} file, and is therefore outside the influence of the
%user. The \n{tfm} file can be edited, however (see Chapter~\ref{TeXcomm}).
在 \TeX 中,字符挤压由 \n{tfm} 文件中的字体信息控制,因此不受用户的影响。不过,\n{tfm} 文件是可以修改的,详情参见第~\ref{TeXcomm}~章。
%The \cs{kern} command has (almost) nothing to do with the
%phenomenon of kerning; it is explained in Chapter~\ref{glue}.
\cs{kern} 命令与字符挤压现象没什么关系;它将在第~\ref{glue}~章中介绍。
%%\spoint Italic correction
%\subsection{Italic correction}
%\spoint Italic correction
\subsection{倾斜校正}
%The primitive control symbol \verb-\/- inserts the
%\indexterm{italic correction}\cstoidx /\par
%of the previous character or ligature.
%Such a correction may be necessary owing to the definition
%of the \indextermbus{bounding}{box} of a character. This box always
%has vertical sides, and the width of the character as \TeX\
%perceives it is the distance between these sides.
%However, in order to achieve proper spacing for slanted or
%italic typefaces, characters may very well project outside their
%bounding boxes. The italic correction is then needed if
%such an overhanging character is followed by a
%character from a non-slanting typeface.
\TeX 原语 \cs{/} 会向前一个字符或连字后面插入\indexterm{倾斜校正}(\emph{italic correction})\cstoidx /\par。考虑到\cindextermbus{边界}{盒子}(\emph{bounding box})的定义,这种修正是很有必要的:边界盒子总是有竖直的边,并且 \TeX 将两条竖直边之间的距离当做是字符的宽度。然而,为了在斜体或意大利体中得到恰当的空距,字符会显著突出其边界盒子。当这种向外突出的字符后边紧跟着一个非倾斜的字符时,就需要插入倾斜校正。
%Compare for instance\message{Visible italic correction!}
对比以下两例:
\begin{Disp}
无倾斜校正:{\italic\TeX} has\quad 有倾斜校正:{\italic\TeX\/} has
\end{Disp}
%where the second version was typed as
这里,有倾斜校正的版本的代码如下。
\begin{verbatim}
{\italic\TeX\/} has
\end{verbatim}
%The size of the italic correction of each character
%is determined by font information
%in the font metrics file; for the Computer Modern fonts it is
%approximately half the `overhang' of the characters;
%see~\cite{K:partE}.
%Italic correction is not the same as \cs{fontdimen1}, slant
%per point. That font dimension is used only for positioning
%accents on top of characters.
各个字符倾斜校正的具体值由字体尺寸文件中的字体信息决定;对于 Computer Modern 字体来说,该值大约是字符向外突出边界盒子距离的一半(详见~\cite{K:partE})。倾斜校正与每点倾斜(\cs{fontdimen1})是不一样的;后者仅用于放置重音符号。
%An italic correction can only be inserted if the previous item
%processed
%by \TeX\ was a character or ligature. Thus the
%following solution for roman text inside an italic passage
%does not work:
倾斜校正仅在 \TeX 刚处理完一个字符或者连字时才会插入其后。因此,由于在下例中,在遇到倾斜校正原语之前 \TeX 刚处理完行间胶水(而不是字符或者连字),下面对罗马字族文本做的倾斜校正是不会生效的。
\begin{verbatim}
{\italic Some text {\/\roman not} emphasized}
\end{verbatim}
%The italic correction has no effect here,
%because the previous item is glue.
%%\spoint Ligatures
%\subsection{Ligatures}
%\spoint Ligatures
\subsection{连字}
%Replacement of character sequences by \indexterm{ligatures} is controlled
%by information in the \n{tfm} file of a font.
%Ligatures are formed from \gr{character} commands:
%sequences such as \n{fi} are replaced by `fi' in some fonts.
将字符序列替换为\indexterm{连字}(\emph{ligatures})的过程是由字体 \n{tfm} 文件中的信息控制的。连字由字符(\gr{character})命令组成:在某些字体里,诸如 \n{fi} 的字符序列会替换为「fi」。
%Other ligatures traditionally in use are
%between \n{ff}, \n{ffi}, \n{fl}, and \n{ffl};
%in some older works \n{ft} and \n{st} can be found,
%and similarly to the \n{fl} ligature \n{fk} and \n{fb}
%can also occur.
传统上,还有其它的连字,比如 \n{ff}, \n{ffi}, \n{fl} 以及 \n{ffl};在更古老的字体里,可能还有 \n{ft} 以及 \n{st},以及类似 \n{fl} 的连字:\n{fk} 和 \n{fb}。
%Ligatures in \TeX\ can be formed between explicit character
%tokens, \cs{char} commands, and \gr{chardef token}s.
%For example,
%the sequence \verb-\char`f\char`i- is replaced by the
%`fi' ligature, if such a ligature is part of the font.
在 \TeX 中,连字可由显式字符记号、\cs{char} 命令以及 \gr{chardef token} 组成。例如,如果字体里有这样的连字定义,\verb-\char`f\char`i- 会被替换成连字「\char`f\char`i」。
%Unwanted ligatures can be suppressed in a number of ways:
%the unwanted ligature `\hbox{halflife}' can
%for instance be prevented by
我们有多种方式来限制不希望出现的连字。例如 \hbox{halflife} 中不希望出现的连字可以这样避免:
\begin{disp}
\verb>half{}life>, \verb>half{l}ife>, \verb>half\/life>, 以及 \verb>half\hbox{}life>\end{disp}
%but the solution using italic correction is not equivalent
%to the others.
注意,使用倾斜校正原语避免不希望出现的连字的方案与其它方案的机理不完全一样。
%%\spoint Boundary ligatures
%\subsection{Boundary ligatures}
%\spoint Boundary ligatures
\subsection{边界连字(Boundary ligatures)}
%Each word is surrounded by a left and a right
%boundary character (\TeX3 only).
%This makes phenomena possible
%such as the two different sigmas in Greek:
%one at the end of a word, and one for every other position.
%This can be realized through a ligature with the
%boundary character. A~\csidx{noboundary} command immediately
%before or after a word suppresses the boundary character
%at that place.
在 \TeX3 中还有单词边界的概念:每个单词都由左右两个边界字符界定。这样的设定使 \TeX 能够实现一些语言中特殊的现象\liamfnote{这里指的是通过边界连字来实现一些语言中特殊的现象。},例如在希腊语中位于词尾的西格玛($\sigma$)和位于其他位置的西格玛是不一样的。在单词的前后添加 \csidx{noboundary} 命令,可以抑制相应的边界连字机制。
%In general, the ligature mechanism has become more complicated
%with the transition to \TeX\ version~3; see~\cite{K:TeX23}.
大致上,\TeX 3 的连字机制比 \TeX 2 要复杂得多;参见~\cite{K:TeX23}。
%\endofchapter
%%%%% end of input file [fontfam]
\endofchapter
%%%% end of input file [fontfam]
\end{document}