我想为单个方程式制作一个 2 行方程式标签。我使用 \tag 命令,只要我不为方程式存储标签,它就可以工作。一旦我存储标签,LaTeX 就会向我发出警报。换句话说,此代码失败:
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{equation}
\label{mylabel}
\tag{\parbox[c][3em][c]{4em}{1st tag \\ 2nd tag}}
x = y^2
\end{equation}
\end{document}
但这段代码可以工作:
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{equation}
%\label{mylabel}
\tag{\parbox[c][3em][c]{4em}{1st tag \\ 2nd tag}}
x = y^2
\end{equation}
\end{document}
有任何想法吗?
答案1
的值\label
已写入.aux
文件中,因此您需要\protect
脆弱的\parbox
:
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{equation}
\label{mylabel}
\tag{\protect\parbox[c][3em][c]{4em}{1st tag \\ 2nd tag}}
x = y^2
\end{equation}
\end{document}
Atabular
至少修复了右侧的空白处:
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{equation}
\label{mylabel}
\tag{\protect\begin{tabular}{@{}l@{}}1st tag \\ 2nd tag\protect\end{tabular}}
x = y^2
\end{equation}
\end{document}
但我会避免使用两个行标签,因为仍然存在太多问题:
- 让读者感到困惑:一个等式有两个标签。
- 括号太小。
- 两行引用看起来不太好。
因此我会使用一行,例如:
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{equation}
\label{mylabel}
\tag{1st tag/2nd tag}
x = y^2
\end{equation}
\end{document}