在 \DeclareMathOperator 内使用 \acs,字体加粗

在 \DeclareMathOperator 内使用 \acs,字体加粗

我想acronym在数学运算符的定义中使用包中定义的首字母缩写词。数学运算符应以粗体显示。但是,这不起作用,因为该\acs命令不关心周围的\mathbf命令。

梅威瑟:

\documentclass{scrreprt}

\usepackage{amsmath}
\usepackage{hyperref}
\usepackage{acronym}

\DeclareMathOperator{\df}{\mathbf{\acs{DF}}}
\DeclareMathOperator{\dfnoacs}{\mathbf{DF}} % how it should look like

\begin{document}

\begin{acronym}
\acro{DF}{discount factor}
\end{acronym}

\begin{align*}
\df(...) &= ... \\
\dfnoacs(...) &= ...
\end{align*}

\end{document}

平均能量损失

在我看来,使用另一个参数来\acs喜欢\acs{DF}{...}{discount factor}不是一个选择,因为我不想在首字母缩略词列表中使用另一种样式。

答案1

只需使用\textbf而不是\mathbf

示例输出

\documentclass{scrreprt}

\usepackage{amsmath}
\usepackage{hyperref}
\usepackage{acronym}

\DeclareMathOperator{\df}{\textbf{\acs{DF}}}
\DeclareMathOperator{\dfnoacs}{\mathbf{DF}} % how it should look like

\begin{document}

\begin{acronym}
\acro{DF}{discount factor}
\end{acronym}

\begin{align*}
\df(\dots) &= \dots \\
\dfnoacs(\dots) &= \dots
\end{align*}

\end{document}

但是也可以使用无衬线字体

\DeclareMathOperator{\df}{\textbf{\sffamily\acs{DF}}}

将更好地匹配文本中的外观:

文字版本

新数学版本

相关内容