我发现我想要使用的漂亮字体不包含图表ǎ ě ǐ ǒ ǔ ǚ,这是我在文本模式下进行拼音罗马化所需要的。下面的讨论需要ā为例。
使用图形ǎ
作为文字文本或 Unicode 代码点^^^^01ce
会产生空白;正常的 caron-composition 宏\v{a}
等也会产生空白。当然,这三种情况都是因为字体缺少复合图形的字形而产生的。
\textasciicaron
字体中确实存在表示“alone”的字形:
我可以创建一个可接受的渲染ā手动使用
`\rlap{\textasciicaron}\kern.7pt a` :
问题是它无法正确呈现粗体或斜体(后者的字距调整为 .1pt):
和
我认为这是因为\textasciicaron
,无论是单独的还是叠加的,都不会受到这些过程的影响,至少在标准语法中不会。FakeSlant
并且FakeBold
同样对 也没有影响\textasciicaron
。
有人可以建议另一种方法来使这些字形变得粗体和斜体吗?
编辑:我最初的帖子涉及字体 TeX Gyre Termes;发帖后不久,我意识到我的字体版本已经过时,新版本有我讨论的字形。所以我删除了关于字体的讨论,但留下了我的问题,因为我认为这是一个我无法自己解决的有效问题。
答案1
使用 XeTeX 的 Plain 示例:
\font\termes="TeX Gyre Termes"
\font\bftermes="TeX Gyre Termes/B"
\font\ittermes="TeX Gyre Termes/I"
\def\caron#1{{\accent"02C7 #1}}
\termes
W\caron ass\caron{a}p?
\bftermes
W\caron ass\caron{a}p?
\ittermes
W\caron ass\caron{a}p?
\bye