我正在使用 Hoefler Text 的 OS X 发行版中的 XeLaTeX 排版一些文档。不幸的是,该字体自古以来就有一个严重的错误:其默认连字符的格式为大写字母,而不是小写字母。该字体有一个正确的连字符字形(字形 16,准确名称为“连字符”)。
似乎1这个字形没有“链接” 2到任何 Unicode 点,阻止我使用建议的解决方案使用 Xe(La)TeX 的装饰性连字字符。
我该如何使用这个字形进行连字?自动、手动,还是两者兼而有之?
- 在 Font Book.app 中,此字符的工具提示中没有出现 Unicode 点。
- 如果还有任何疑问,我不知道字体文件是什么样子的。
答案1
当然,这确实应该在字体中修复。但是,如果您使用 XeTeX 或 LuaTeX,则可以访问字体中所谓的未编码字形(如果您知道它们的字形 ID)。
在 XeTeX 中,符号为\XeTeXglyph16
。对于 LuaTeX,你需要几行代码,如下所示这个答案来自@1010011010。
使用示例xelatex
:
\documentclass{article}
\usepackage{fontspec}
\setmainfont{Hoefler Text}
\newcommand{\lowhyphen}{\XeTeXglyph16}
\begin{document}
H-H
a-a
a\lowhyphen a
\end{document}
结果:
这仅适用于手动使用。我没有用这个未编码的字形替换自动连字符的解决方案。我试过了此解决方案由@Steven B. Segletes 提供,但对于自动连字符,它对我来说不起作用,只适用于手动输入的连字符。