我开始使用\mathsf{}
人们通常使用的 for 来表示事物\operatorname{}
,因为它与非数学文本有更好的区别。但是,我读到它的\operatorname{}
间距更好。
有没有办法可以改变所使用的字体,\operatorname
以便我可以继续使用该字体,但使用不同的字体?
答案1
在unicode-math
,您可以使用命令
\setoperatorfont\mathsf
否则,您可以使用代码就像 egreg 在这里设置\operator@font
为\sfdefault
:
\documentclass{article}
\usepackage{amsmath}
\DeclareSymbolFont{sansops}{OT1}{\sfdefault}{m}{n}
\SetSymbolFont{sansops}{bold}{OT1}{\sfdefault}{b}{n}
\makeatletter
\renewcommand\operator@font{\mathgroup\symsansops}
\makeatother
\begin{document}
\[ f(t) = a \sin (-t) + b \cos(-t) + c \sinh(t) + d \cosh (t) + k \exp (t) \]
\end{document}
对于大多数文档,OT1
编码都可以使用。如果您需要带重音符号的拉丁字母,但不需要大写希腊字母,则可以将旧编码从 更改为OT1
。T1
如果您需要小写希腊字母,则需要找到编码中附带的无衬线字体OML
。
答案2
如果你使用 pdfLaTeX 和“标准” LaTeX 文档类之一 -- article
、report
和book
-- 来编译文档,你可以运行
\makeatletter
\renewcommand\operator@font{\sf}
\makeatother
以便为操作员姓名使用默认的无衬线字体。
完整的 MWE:
\documentclass{article}
\makeatletter
\renewcommand\operator@font{\sf}
\makeatother
\begin{document}
$\sin \cos \det \ln \exp$
\end{document}
答案3
如果你的目标是将文本和数学背景区分开来,你可以考虑为后者使用独特而专用的数学字体。为什么不呢尤拉姆结合数学公式
与 MWE
\documentclass{article}
\usepackage{mathptmx, eulervm}
\begin{document}
The standard deviation $\sigma_{n-1}$ of the sample was computed as
\begin{equation}
\sigma_{n - 1} = \sqrt{ \frac{1}{n - 1} \sum^n_{i = 1} (x_i - \bar{x})^2}
\end{equation}
\end{document}
答案4
其他答案都很好,但就我的目的而言,最简单,最灵活的解决方案是简单地结合\operatorname{}
和\mathsf{}
,然后写例如
\newcommand{\sflim}{\operatorname{\mathsf{lim}}}.
这样做的好处是,我可以在同一个文档中使用具有不同字体样式的“操作符名称”。