使用 LuaLaTeX 进行字距调整的问题

使用 LuaLaTeX 进行字距调整的问题

我在使用 LuaLaTeX 时遇到了字距调整问题。在我的示例中,“AT”对渲染效果不佳。通过比较 LuaLaTeX 输出与 XeLaTeX 输出可以清楚地看出这一点,后者使用相同的代码正确渲染了该对。在此图中,LuaLaTeX 输出位于左侧:

字距调整

对于小型大写字母,问题似乎只在我将它们放在 内时才会出现\mbox,如我的示例最后一行所示。(这可能与连字符有关吗?没有连字符保护的单词会以良好的字距呈现。)

我一直在尝试找出问题的根源,但却毫无头绪。(我是 LaTeX 新手。)

我的系统配备了 TeX Live 2011,只安装了尽可能少的软件包。

使用的代码:

\documentclass{article}
\usepackage{fontspec}
\setmainfont{Minion Pro}

\begin{document}

\mbox{}\newline
\huge FOUNDATIONS\newline
\huge \textsc{foundations}\newline
\huge \textsc{\mbox{foundations}}

\end{document}

答案1

这类事情很难调试。问题在于存在很多潜在的问题来源:luatex 引擎、用于加载和操作字体的 lua 代码(此处luaotfload基于上下文中的代码)、使用的模式(基础或节点)以及字体。

我可以看到不同的字距调整。在下面的例子中,当使用 mode=node 时,在连字符点处缺少 A + T 之间的字距调整。“ATT”没问题,mode=base 也很好。

\documentclass{article}
\usepackage{luaotfload}
\begin{document}
{\font\test="name:MinionPro:mode=node:+kern" at 20pt \test ATT DATUM FOUNDATIONS}

{\font\test="name:MinionPro:mode=base:+kern" at 20pt \test ATT DATUM FOUNDATIONS}
\end{document}

由于字体加载器基于上下文代码,因此我也尝试了上下文。在那里我根本没有得到任何字距调整。但这可能是因为我不知道如何在上下文中使用低级命令调用字体(上下文的文档在背景信息方面非常稀少)。我认为你应该在上下文邮件列表中询问你的字距调整问题是否可以重现。

相关内容