![如何使标题使用内衬数字但不改变正文?](https://linux22.com/image/475367/%E5%A6%82%E4%BD%95%E4%BD%BF%E6%A0%87%E9%A2%98%E4%BD%BF%E7%94%A8%E5%86%85%E8%A1%AC%E6%95%B0%E5%AD%97%E4%BD%86%E4%B8%8D%E6%94%B9%E5%8F%98%E6%AD%A3%E6%96%87%EF%BC%9F.png)
我遇到了这个问题,我知道如何指定字体功能。但我不知道如何将其限制为仅文档的标题部分。以下是代码:
\definefontfamily [brill] [rm] [Brill]
\definefontfeature[default][default][lnum=yes]
\setupbodyfont[brill]
\setuphead [title]
[indentnext=yes,
style=\tfc\sc,
page=no]
\starttext
\head{example}
\stoptext
答案1
我不明白您是想将其放在页面标题中,还是想将其放在您定义的标题中。此外,\head
这不是有效的宏。您可以尝试下面的方法。
\definefontfamily [brill] [rm] [Brill]
\definefontfeature
[myfeature]
[default]
[lnum=yes,
smcp=yes]
\setupbodyfont[brill]
\setuphead
[title]
[indentnext=yes,
style={\feature[+][myfeature]\tfc},
page=no]
\setupheader
[style={\feature[+][myfeature]}]
\setupheadertexts
[title]
\starttext
\starttitle
[title=Example 0123]
0123
\stoptitle
\stoptext
这导致
答案2
更一般地,您可以设置它,以便小写字母始终使用内衬数字,方法是\adaptfontfeature
:
\definefontfamily [brill] [rm] [Brill]
\adaptfontfeature[f:smallcaps][lnum=yes]
\setupbodyfont[brill]
\setuphead[title][style=\tfc\sc]
\startTEXpage[width=3in, offset=1em]
\title{Test 1234567890 aAaA}
Test 1234567890 aAaA
\smallcaps{Test 1234567890 aAaA}
\stopTEXpage