强制格式不被环境覆盖

强制格式不被环境覆盖

我定义了以下宏

\newcommand\ve[1]{\ensuremath{\mathrm{\textbf{#1}}}}

在数学模式下生成粗体非斜体字母。ensuremath 确保它在数学模式和文本模式下的行为相同。问题是当我在定理中使用它时:定理中的文本通常是斜体的,出于某种原因

\ve{t}

也是斜体。是否有任何\doNotChangeFormat命令可以定义

\newcommand\ve[1]{\doNotChangeFormat{\ensuremath{\mathrm{\textbf{#1}}}}}

并确保我定义的格式在任何情况下都适用?

答案1

 \ensuremath{\mathrm{\textbf{#1}}}}

是相同的

 \textbf{#1}

\ensuremath你进入数学模式但又\textbf让你退出。

数学字体命令不能像文本字体命令那样组合。我认为你只是想

 \ensuremath{\mathbf{#1}}

它将始终提供粗体直立的数学字体。

相关内容