![Adobe Garamond Pro 的字距调整问题:是 XeTeX 还是字体文件造成的?](https://linux22.com/image/246229/Adobe%20Garamond%20Pro%20%E7%9A%84%E5%AD%97%E8%B7%9D%E8%B0%83%E6%95%B4%E9%97%AE%E9%A2%98%EF%BC%9A%E6%98%AF%20XeTeX%20%E8%BF%98%E6%98%AF%E5%AD%97%E4%BD%93%E6%96%87%E4%BB%B6%E9%80%A0%E6%88%90%E7%9A%84%EF%BC%9F.png)
我在使用 Adobe Garamond Pro 字体和 XeTeX 时遇到了一个奇怪的字距调整问题,仅限于德语字母对 Wä。除了那对字母之外,文档看起来很棒。但请自己看看:
使用 XeTeX 进行字距调整:
使用相同的字体文件,使用 LibreOffice 进行字距调整:
我可以在不同的机器上重现奇怪的相同结果,包括 mac osx 和 ms windows。我对此感到很困惑,如果您能分享您对 XeTeX 结果的看法,我将不胜感激。有没有可能让它工作,即无需手动操作 Wä 每次出现的字距?
答案1
在问题解决之前,您可以使用基于 XeTeX 字符类的解决方法(手动的):
\documentclass{article}
\usepackage{lmodern}
\XeTeXinterchartokenstate=1
\newXeTeXintercharclass \Wclass
\newXeTeXintercharclass \aeclass
\XeTeXcharclass `\W \Wclass
\XeTeXcharclass `\ä \aeclass
\XeTeXinterchartoks \Wclass \aeclass = {\kern -3pt}
\begin{document}
Wa Wä
\end{document}
答案2
这似乎是字体特有的字距调整问题。下图:Calluna、Warnock、Sabon,使用 XeLateX:
Minion 和 Caslon 也出现了 W + ä 重叠的情况。我猜你可以用 fontspec 禁用字距调整,但我不知道如何只对一对字体进行禁用。