更改 LuaTeX 中数学符号的边界框

更改 LuaTeX 中数学符号的边界框

我尝试Garamond-Math在 LuaTeX 中使用该字体(尽管文档说我只能在 XeTeX 中使用它 :-)。除了一些不合适的字形组合(主要是在内联数学的末尾,例如“ where $T$ is the period”)外,它在 LuaTeX 中运行得或多或少都还不错。

我曾经\fbox绘制过字形的边界框,并注意到 LuaTeX 中的边界框是不同的:

在此处输入图片描述

在 XeTeX 中:

在此处输入图片描述

在 XeTeX 中,字形几乎完全适合边界框,但在 LuaTeX 中,它超出范围太多。

我不是字体专家,所以我不知道为什么会发生这种情况。我以为边界框是字体的一个属性,所以在我的想象中结果应该是一样的。因此第一个问题是:实际上边界框是否不同?

标题中的第二个问题是:我可以更改特定字形的边界框(使用 LuaTeX)以便输出看起来更像 XeTeX 吗?

我尝试手动在字形后添加一些间距,但这看起来很丑陋,如果我碰巧更改字体或引擎,就会付诸东流,所以我真的很想不是这样做。我也尝试过使用斜体校正,\/但它似乎对数学没有影响。

以下是生成上述图片的代码:

\documentclass{standalone}
\usepackage{unicode-math}
\setmathfont{Garamond-Math.otf}
\begin{document}
\fboxrule=1sp
\fboxsep=0pt
In Lua\TeX{} this \fbox{$T$} looks horrible, but the \fbox{$X$} looks OK. \Huge\fbox{$T$}\quad.
\end{document}

我正在使用 TL 2018:

This is LuaTeX, Version 1.07.0 (TeX Live 2018)  (format=lualatex 2019.3.29)  13 APR 2019 12:43
 restricted system commands enabled.
**test.tex
(./test.tex
LaTeX2e <2018-12-01>
Lua module: luaotfload-main 2019-02-14 2.96 luaotfload entry point

答案1

问题是你位于数学的末尾,而 luatex 不会在数学和文本之间的边界插入斜体校正。你可以通过插入一些不可见的字符来避免这个问题,但目前还不清楚哪个字符是最佳选择,在聊天中我们讨论过几次,建议是 \Uchar"200B 和

相关内容