为什么
\documentclass{book}
\usepackage{extarrows}
\usepackage{fontspec}
\setmainfont{Times New Roman}
\begin{document}
$$Q\xLongrightarrow{\text{Maximum}} P$$
\end{document}
产生以下输出:
怎样修复这个问题?
更多细节
和
\documentclass{minimal}
\usepackage{extarrows}
\usepackage{palatino}
\begin{document}
$$Q\xLongrightarrow{Maximum} P$$
\end{document}
没有 palatino 字体。这似乎是个fontspec
bug。
答案1
您必须使用以下no-math
选项fontspec
:
\documentclass{book}
\usepackage{extarrows}
\usepackage[no-math]{fontspec}
\setmainfont{Times New Roman}
\begin{document}
$Q\xLongrightarrow{\text{Maximum}} P$
\end{document}
但结果是有争议的,因为 Computer Modern 数学字体与 Times 结合不佳。
如果没有该no-math
选项,则直立数学系列(系列 0)将更改为使用普通文本字体;等号取自数学系列 0,因此它不会与取自计算机现代数学符号的双箭头结合。
如果您想将 TeX Gyre Termes Math 与 Times New Roman 一起使用作为文本字体,则需要一些解决方法,因为开发人员没有提供与等号组合的双箭头。
\documentclass{book}
\usepackage{extarrows}
\usepackage{unicode-math}
\setmainfont{Times New Roman}
\setmathfont{TeX Gyre Termes Math}
\setmathfont[
range={`=,\Longrightarrow,\Rightarrow,\Longleftarrow,\Leftarrow}
]{Asana Math}
\setmathfont[range=\int]{TeX Gyre Termes Math}
\begin{document}
$Q\xLongrightarrow{\text{Maximum}} P$
$Q\xLongleftarrow{\text{Maximum}} P$
\end{document}
完整的解决方法还包括可扩展的单箭头。
\documentclass{book}
\usepackage{extarrows}
\usepackage{unicode-math}
\setmainfont{Times New Roman}
\setmathfont{TeX Gyre Termes Math}
\setmathfont[
range={
`=,\Longrightarrow,\Rightarrow,\Longleftarrow,\Leftarrow,
\harrowextender,\longrightarrow,\rightarrow,\longleftarrow,\leftarrow
}
]{Asana Math}
\setmathfont[range=\int]{TeX Gyre Termes Math}
\renewcommand{\relbar}{\mathrel{\harrowextender}}
\begin{document}
$Q\xlongrightarrow{\text{Maximum}} P$
$Q\xlongleftarrow{\text{Maximum}} P$
\end{document}
答案2
P
您需要加载与所选文本字体兼容的数学字体。(您正在使用 Computer Modern,这一点可以从字母和的形状中看出Q
。)我建议您加载包unicode-math
并设置\setmathfont{XITS Math}
。
如果您选择这条路线,我还建议您将XITS
(Times Roman 克隆)设置为主文本字体。
% !TEX TS-program = xelatex
\documentclass{book}
\usepackage{extarrows}
\usepackage{fontspec}
\setmainfont{XITS}
\usepackage{unicode-math}
\setmathfont{XITS Math}
\begin{document}
\[Q\xLongrightarrow{\text{Maximum}} P\]
\end{document}
答案3
更改包的顺序:
\documentclass{book}
\usepackage{fontspec}
\usepackage{extarrows}
\setmainfont{Times New Roman}
\begin{document}
\[ Q\xLongrightarrow{\text{Maximum}} P \]
\end{document}