我正在使用 LuaLaTeX 编译以下文档。
\documentclass{scrbook}
\usepackage{fontspec}
\usepackage{unicode-math}
\setmainfont{TeX Gyre Pagella}
\setmathfont{TeX Gyre Pagella Math}
\begin{document}
\begin{equation}
\partial_x f(u),
\quad
\partial_j f^j(u),
\quad
uf
\quad
\partial_x u,
\quad
\partial_j u
\quad
q_j+q_f
\end{equation}
\end{document}
之前的间距f
似乎非常奇怪:符号\partial
和的索引f
重叠。我可以在数学模式下以某种方式增加前面的间距f
,而不改变 的每一个外观f
吗?
答案1
正如您所发现的,TeX Gyre Pagella Math
可能还没有为黄金时段做好准备。我建议您加载newpxtext
和newpxmath
包——它们在 LuaLaTeX 下工作得很好。
\documentclass{scrbook}
\usepackage{mathtools} % optional
\usepackage[no-math]{fontspec}
\usepackage{newpxtext,newpxmath}
\begin{document}
\begin{equation}
\partial_x f(u),
\quad
\partial_j f^j(u),
\quad
uf
\quad
\partial_x u,
\quad
\partial_j u
\quad
q_j+q_f
\end{equation}
\end{document}
答案2
人们可以修补字体,但它也会影响较小的尺寸(下标),而且找到好的值并不容易:
\documentclass{scrbook}
\usepackage{fontspec}
\usepackage{unicode-math}
\usepackage{luacode}
\begin{luacode}
local patch_pagellamath = function (fontdata)
if fontdata.psname == "TeXGyrePagellaMath-Regular"
then
fontdata.characters[119891]["width"]=314380.16 -- 364380.16
fontdata.characters[119891]["commands"]={
{ 'right', 100000 },{'font',0},{ 'char', 119891 }}
end
end
luatexbase.add_to_callback
(
"luaotfload.patch_font",
patch_pagellamath,
"change_pagellamath"
)
\end{luacode}
\setmainfont{TeX Gyre Pagella}
\setmathfont{TeX Gyre Pagella Math}
\begin{document}
\begin{equation}
\partial_x f(u),
\quad
\partial_j f^j(u),
\quad
uf
\quad
\partial_x u,
\quad
\partial_j u
\quad
q_j+q_f
\end{equation}
\end{document}
答案3
这不是最好的解决方案...只是一个修复,而且我不会接受它,因为它似乎是该字体的一个错误。
我的建议是使用Asana Math
... 它确实非常接近,我认为它们的创建者无法识别它们(如果不是只有一个创建者)。您也可以在我的(不推荐的)修复中看到它,它在数学命令中重新定义了 j。
\documentclass{scrbook}
\usepackage{unicode-math}
\setmainfont{TeX Gyre Pagella}
\setmathfont{TeX Gyre Pagella Math}
\def\f{\,f}
\begin{document}
Confirming the same problem for: TeX Gyre Termes Math ,
TeX Gyre Bonum Math. Seems ok: TeX Gyre Schola Math, STIX Math
and Latin Modern Math. And the good news for the end: Asana Math is
almost the same font without that problem. Test it!
\setmainfont{Asana-Math}\selectfont $Non$ TeX Gyre Pagella Test f
\setmainfont{TeX Gyre Pagella}\selectfont $\phantom{Non}$ TeX Gyre Pagella Test f
\setmathfont{Asana Math}\selectfont
\begin{equation}
\partial_x f(u),
\quad
\partial_j f^j(u),
\quad
uf
\quad
\partial_x u,
\quad
\partial_j u
\quad
q_j+q_f
\end{equation}
\setmathfont{TeX Gyre Pagella Math}\selectfont
\begin{equation}
\partial_x \f(u),
\quad
\partial_j \f^j(u),
\quad
u\f
\quad
\partial_x u,
\quad
\partial_j u
\quad
q_j+q_{f}%Here no space needed
\end{equation}
\end{document}
输出: