返回ConTeXt 字体 本篇分享内的 ConTeXt 代码已上传至Gitee - font_3_style.texConTeXt 在安装时会附带一些英文字体,在不指明使用其他字体的情况下,会使用 Latin Modern 12pt 作为默认字体样式显示文字。以下是默认字体 Latin Modern serif 和其他附带字体的显示效果。见代码示例 - 1。
字体风格
对于 Latin Modern 和 DejaVu 字体,支持 3 种风格,rm,ss 和 tt。在 ConTeXt 中,定义了 5 种风格,只要字体具有对应的风格,可以使用命令来转换。
Style风格 |
使用命令 |
说明 |
Roman |
\rm, \serif, \roman, \regular |
衬线体
易读性高,适合连续性的阅读 |
Sans Serif |
\ss, \sans, \sansserif, \support |
无衬线体
字号较小的话容易串行,不适合需要长时间阅读的内容 |
Monospaced |
\tt, \teletype, \mono |
等宽字体
等宽字体,字符宽度相同。常用于显示编程代码 |
Handwritten |
\hw, \handwritten |
手写体,需要字体支持 |
Calligraphic |
\cg, \calligraphic |
同样是手写体,需要字体支持 |
字体样式
大部分英文字体支持以下样式。每个样式每次激活一种,不能同时应用在字体样式上。比如使用了\bold,那么之前使用的字体样式会失效,只有bold加粗样式生效。如果需要加粗和斜体样式同时出现,可以使用\bolditalic或者\boldslanted
样式 |
命令 |
常规样式 |
\tf |
加粗 |
\bold 或 \bf |
斜体 |
\italic 或 \it |
粗斜体 |
\bolditalic 或 \bi |
斜体 |
\slanted 或 \sl |
粗斜体 |
\boldslanted 或 \bs |
slanted 的斜体是正常字体样式加上轻微的倾斜角度,italic 的斜体在有些字体中是专门设计的斜体样式。大多数字体的 slanted 和 italic 没有区别。
以下是 3 种字体的不同每个样式效果,见代码示例 - 2。
字体大小
字体主要通过单位 pt 磅来说明字号,字号可用范围根据使用的命令而不同(见下面)。同时可以通过 tf 或 bf + 字母,基于当前字号放大或缩小一定的系数。
命令 |
调整系数 |
12pt 调整后 |
xx |
0.6 |
8pt |
x |
0.8 |
10pt |
tf |
1 |
12pt |
a |
1.2 (1.2^1) |
14.4pt |
b |
1.44 (1.2^2) |
17.3pt |
c |
1.728 (1.2^3) |
20.7pt |
d |
2.074 (1.2^4) |
24.9pt |
\setupbodyfont[12pt] %设置默认字号为12pt
{\tfxx \getbuffer[line]}
{\tfx \getbuffer[line]}
{\getbuffer[line]}
{\tfa \getbuffer[line]}
{\tfb \getbuffer[line]}
{\tfc \getbuffer[line]}
{\tfd \getbuffer[line]}
字体,样式和大小的更改
全文的字体字号(包括页眉页脚等)设置通过\setupbodyfont[字体名,字号]来设置,字体名和字号都是可选项。当字体缺失不设置时,默认使用 Latin Modern serif,当字号缺失不设置时,默认使用 12 pt。
字体名可以是 ConTeXt 已经预安装的字体名,也可以是自己安装定义的字体名。字号支持 4-12 pt, 12.4 pt,17.3 pt。
举例:
\setupbodyfont[14pt] : 使用 Latin Modern serif 字体 12 号字
\setupbodyfont[dejavu,ss,14pt] :使用 DejaVu sans 字体 14 号字
\setupbodyfont[dejavu,tt] :使用 DejaVu mono 字体 12 号字
通常情况下,\setupbodyfont在 tex 文件中只使用一次。余下的字体更改使用\switchtobodyfont[字体名,字号]。这个命令可以使用任意数字的字号,而不像\setupbodyfont那样只能使用固定数字。并且不影响页眉页脚的字体变化。
当字体缺失不设置时,默认使用 Latin Modern serif, 当字号缺失不设置时,默认沿用当前的字号大小。 见代码示例 - 4。
小段文字或临时的样式和字号更改可以使用快捷命令,并用大括号包裹样式命令和文字来使样式仅应用在括号内的文字。样式命令可以自由组合,叠加生效。
{\ss\bf The quick brown fox jumps over} % sans 加粗 (\bf=\bold)
{\ss\it The quick brown fox jumps over} % sans 斜体
{\tt The quick brown fox jumps over} % teletype 样式
{\tt\tfb The quick brown fox jumps over} % teletype 样式,字号*1.44
{\tt\bfb The quick brown fox jumps over} % teletype 样式,加粗,字号*1.44