更改 \sin、\tan、\lim 中的字体…

更改 \sin、\tan、\lim 中的字体…

在 LaTeX 中,当我在数学模式下输入符号时\tan\inf它们会使用普通文本字体,而我希望它们使用 Times 字体,而不更改文本的主字体和数学字体,因为它们都不是 Times。我该怎么做?

答案1

这真的很简单。添加

\makeatletter
\DeclareSymbolFont{timesoperators}{OT1}{ztmcm}{m}{n}
\def\operator@font{\mathgroup\symtimesoperators}
\makeatother

到文档前言部分。然后查看丑陋的输出并删除这四行。;-)

答案2

一些巫术,因为有人刚刚告诉我他们在这里查找了解决方案,但对他们不起作用fontspec。(因为 egreg 使用了传统的字体编码,只要你坚持使用不带重音的拉丁字母和数字,这些编码就非常容易移植,它不支持fontspec缩放命令。)

当使用fontspec或 时unicode-math,对数类运算符的默认字体是\mathrm,您可以使用 进行更改,例如:

\documentclass{article}
\usepackage{fontspec}

\defaultfontfeatures{Scale=MatchLowercase}
\setmainfont{TeX Gyre Heros}
\setmathrm{TeX Gyre Termes}

\begin{document}
The sine is \(\sin x\) and the infinimum is \(\inf S\).
\end{document}

TeX Gyre Heros + TeX Gyre Termes 示例

如果你想要改变仅有的操作员字体并不管\mathrmunicode-math有一个\setoperatorfont命令:

\documentclass{article}
\usepackage{unicode-math}

\defaultfontfeatures{Scale=MatchLowercase}
\setmainfont{TeX Gyre Heros}
\newfontface\timesfont{TeX Gyre Termes}[Ligatures={Common,TeX}]
\setoperatorfont\timesfont

\begin{document}
The sine is \(\sin x\) and the infinimum is \(\inf S\).
\end{document}

TeX Gyre Heros + TeX Gyre Termes 示例

相关内容