![将 `kerncharacters` 传递给 `defineframedtext`](https://linux22.com/image/418615/%E5%B0%86%20%60kerncharacters%60%20%E4%BC%A0%E9%80%92%E7%BB%99%20%60defineframedtext%60.png)
我正在使用 ConTeXt 设计 Word 搜索网格。我使用等宽字体,但附加字距有助于阅读网格。我想知道如何定义一些带有每个字母之间附加字距的框架文本。
编辑:我在第一个 MWE 中发现了一个错误,这让我kerncharacters
在 wiki 上发现了该命令。我该如何传递\kerncharacters
给defineframedtext
?
\defineframedtext [Grille]
[style={\ttb},
bodyfont=14pt,
width=fit,
location=left]
\starttext
ABCD
\startGrille
\kerncharacter[0.25]
ABCD\par
EFGH
\stopGrille
\stoptext
答案1
要将\kerncharacters
命令应用于整个环境上下文,framedtext
您可以将其作为参数传递给style
键。
\defineframedtext
[Grille]
[style={\tt\kerncharacters[1]},
bodyfont=20pt,
width=fit,
location=left]
\starttext
\startGrille
ABCD\\
EFGH\\
\stopGrille
\stoptext
增加字母之间距离的另一种方法是改变字符本身的宽度,这可以通过dimension
字体功能实现。
\definefontfeature [equalwidth] [dimensions={1.5,*,*}]
\definefont [EqualWidth] [MonoBold*default,equalwidth]
\defineframedtext
[Grille]
[style=EqualWidth,
bodyfont=20pt,
width=fit,
location=left]
\starttext
\startGrille
ABCD\\
EFGH\\
\stopGrille
\stoptext