我正在处理一个包含各种字体样式和大小的文档。我使用命令,例如\ss
更改为无衬线字体、\tfa
将字体大小设置为“a”以及\bf
将文本设为粗体。我还使用括号来定义哪些区域采用哪种格式。
我发现这种行为有时是不可预测的。以下是一个例子:
\starttext
{\ss
This is 12pt sans serif text. \crlf
{\tfc This is 20.7pt sans serif text.} \crlf
{\bf
This is 12pt bold sans serif text. \crlf
{\tfc This is 20.7pt bold sans serif text.} \crlf
{\tfc \bf This is 20.7pt bold sans serif text.} \crlf
}
}
This is 12pt serif text.
\stoptext
在此示例中,\ss
第 2 行将括号内的所有文本设置为无衬线,但是,\bf
第 5 行中的命令在第 7 行创建了粗体文本。
为什么第 7 行的文本忽略了\bf
第 5 行的命令?
答案1
和\bf
都是\tf
字体替代品。因此,一次只能激活一个。如果您只想根据a
、b
、c
值进行缩放,请使用:
\unprotect
\unexpanded\def\setbodyfontscale#1%
{\font_helpers_set_current_font_size{#1}\the\everybodyfont}
\protect
\setbodyfontscale{c}