我的问题似乎与之前的帖子有关:
括号不同(XeLaTeX、fontspec、newtxmath、libertine)
但我的看起来更简单。我的问题是,当我编译一个简单的 beamer 演示文稿并使用 fontspec 或 mathspec 包时,括号的间距很差。作为一名 MWE,当我使用 XeLaTeX 编译以下内容时:
\documentclass{beamer}
%\usepackage{fontspec}
\begin{document}
\frame{
Hello! $f(x)=x^2$
}
\end{document}
我得到了我想要的:
但是,当我取消注释 fontspec 位时,
\documentclass{beamer}
\usepackage{fontspec}
\begin{document}
\frame{
Hello! $f(x)=x^2$
}
\end{document}
我看到以下内容:
有人知道是什么原因造成的吗?我在文档中没有看到括号的提及。
答案1
XeTeX 无法在数学中设置正确的斜体校正(http://tug.org/pipermail/xetex/2011-March/020318.html) 使用开放式字体时。我建议对字母使用普通的 T1 编码字体_
\documentclass{beamer}
\usepackage{fontspec}
\AtBeginDocument{%
\DeclareSymbolFont{pureletters}{T1}{lmss}{\mddefault}{it}%
}
\begin{document}
$f(x)$
\end{document}
编辑2017
使用新的 latex 格式(默认情况下使用 opentype 字体)和 xelatex,如果不使用任何外部包,您将得到错误的间距,例如fontspec
:
\documentclass{beamer}
%\AtBeginDocument{%
% \DeclareSymbolFont{pureletters}{T1}{lmss}{\mddefault}{it}%
% }
\begin{document}
\begin{frame}
\[f(x)\]
\end{frame}
\end{document}