如何在公式编号中插入单词

如何在公式编号中插入单词

我想生成方程式,其右侧的数字采用 (eqn 1) 而不是 (1) 的形式。我该怎么做呢?大概是使用用户定义的命令,但我遇到了麻烦。

例子

x + y = 2 (公式 1)

y = 5 + 4 (方程式 2)

答案1

你可以用一个简单的方法

\renewcommand{\theequation}{eqn \arabic{equation}}

或者用更花哨的方法(见如何将 amsmath 方程标签移至 LHS 边缘?以激励自己)

\documentclass{article}
\usepackage{amsmath}
\usepackage{etoolbox}

\makeatletter
% detach \eqref processing from \tag processing
\let\tagform@ref\tagform@
\let\maketag@@@ref\maketag@@@
\patchcmd{\eqref}{\tagform@}{\tagform@ref}{}{}
\patchcmd{\tagform@ref}{\maketag@@@}{\maketag@@@ref}{}{}
% redefine \tagform@ to have “eqn” in front of the number
\def\tagform@#1{%
  \maketag@@@{(\ignorespaces eqn #1\unskip\@@italiccorr)}%
}
\makeatother

\begin{document}

We reference equation~\eqref{a} which follows
\begin{align}
x + y &= 2 \label{a}\\
y     &= 5 + 4
\end{align}
\end{document}

在此处输入图片描述

答案2

使用\tag命令amsmath 包. 在其普通形式中,它会在标签周围加上括号,而在星号形式中则不会。

\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{align}
x + y &= 2 \tag{eqn 1} \\
y     &= 5 + 4 \tag*{(eqn 2)}
\end{align}
\end{document}

标签

或者,如果您想在所有方程编号之前放置“eqn”,您可以重新定义\theequation

\documentclass{article}
\usepackage{amsmath}
\makeatletter
\renewcommand\theequation{eqn \@arabic\c@equation}
\makeatother
\begin{document}
\begin{align}
x + y &= 2 \\
y     &= 5 + 4
\end{align}
\end{document}

相关内容