如何在数学环境中设置文本的字体?如果我使用 \setmathsfont(Latin){FontName},我可以更改数学环境中单个字母的字体,但不能更改 \sin 等函数的字体。(这些也不受“符号”集的控制。)
以下是 MWE:
\documentclass[a4paper,12pt]{article}
\usepackage[MnSymbol]{mathspec}
\usepackage[no-sscript]{xltxtra}
\defaultfontfeatures{Mapping=tex-text}
\setmainfont{Times}
\setmathsfont(Digits){Times}
\setmathsfont(Latin){Times}
%\setmathsfont(Symbols){Times}
\begin{document}
Some text digits 1, 2, 3 and some math digits $1, 2, 3$.
Some italic text \textit{text}, and some math text $text$.
But, we have \textit{sin x} and $\sin x$. Or, \textit{arctan x} and $\arctan x$.
\end{document}
答案1
你必须这样做\setmathrm
;在这里我使用 TeX Gyre Termes,但你使用的字体无关紧要。
\documentclass[a4paper,12pt]{article}
\usepackage{mathspec}
\defaultfontfeatures{Ligatures=TeX}
\setmainfont{TeX Gyre Termes}
\setmathsfont(Digits){TeX Gyre Termes}
\setmathsfont(Latin){TeX Gyre Termes}
\setmathrm{TeX Gyre Termes}
\begin{document}
Some text digits 1, 2, 3 and some math digits $1, 2, 3$.
Some italic text \textit{text}, and some math text $text$.
Also $\sin x$ and $\arctan x$.
\end{document}
如果您拥有最新更新的 TeX Live,您还可以使用新的 TG Termes Math 字体unicode-math
:
\documentclass[a4paper,12pt]{article}
\usepackage{unicode-math}
\defaultfontfeatures{Ligatures=TeX}
\setmainfont{TeX Gyre Termes}
\setmathfont{TG Termes Math}
\begin{document}
Some text digits 1, 2, 3 and some math digits $1, 2, 3$.
Some italic text \textit{text}, and some math text $text$.
Also $\sin x$ and $\arctan x$.
\end{document}
这实际上比要好得多mathspec
,因为数学字体具有在公式中使用的正确参数。