假设我有以下文档,
\documentclass[a4paper,12pt]{article}
\usepackage{amsmath}
\begin{document}
\begin{align} f_{n} + f_{n-1} = f_{n-2} \label{eq:f} \end{align}
\end{document}
{align} 环境生成一个带有标签“(1)”的方程。但是,我希望在“(1)”后面有一个下标“n”。此外,我希望这个方程的编号是自动的,即,如果我在 eq:f 之前添加另一个方程,那么 eq:f 将被标记为“(2)”,下标为“n”,等等。
此外,当我引用 eq:f 时,我希望能够在下标中使用任意数字,即不仅仅是“n”,而是可能是“4”或“n+2”。
非常感谢并对任何格式错误表示歉意,我是 TeX 论坛的新手。
答案1
\documentclass[a4paper,12pt]{article}
\usepackage{amsmath}
\makeatletter
\def\maketag@@@#1{\hbox{\m@th\normalfont#1$^{\nlab}$}}
\makeatother
\DeclareRobustCommand\nlab{n}
\begin{document}
aaa
\begin{align} f_{n} + f_{n-1} = f_{n-2} \label{eq:f} \end{align}
aaa
\begin{align} f_{n} + f_{n-1} = f_{n-2} \label{eq:ff} \end{align}
see \eqref{eq:f} or its special case {\renewcommand\nlab{4}\eqref{eq:f}}.
\end{document}
或者如果你只想要一个一次性的方程式
\documentclass[a4paper,12pt]{article}
\usepackage{amsmath}
\DeclareRobustCommand\nlab{n}
\begin{document}
bbb\begin{equation}0=1\end{equation}
aaa
\refstepcounter{equation}
\begin{align} f_{n} + f_{n-1} = f_{n-2} \label{eq:f} \tag*{(\theequation)$^{\nlab}$} \end{align}
aaa
\begin{align} f_{n} + f_{n-1} = f_{n-2} \label{eq:ff} `w\end{align}
see \ref{eq:f} or its special case {\renewcommand\nlab{4}\ref{eq:f}}.
\end{document}