我尝试在表格中列出一些方程式。我找到了一个可行的解决方案这里和这里供使用tabular
(如下面 MWE 中的第一个)。
但是,如果我尝试对 进行同样的操作tabularray
,数字就会变得混乱,可能是因为tblr
多次执行了内容代码。有人知道防止此问题的方法吗?我尝试添加[expand=\Eq]
到tblr
,但这显然没有效果。
\documentclass{article}
\usepackage{tabularray}
\UseTblrLibrary{amsmath}
\newcommand{\Eq}{\refstepcounter{equation}(\theequation)}
\begin{document}
\noindent\begin{tabular}{lXr}
Caption 1 & $E = mc^2$ & \Eq\label{eq:1} \\
Caption 2 & $E = mc^2$ & \Eq\label{eq:2} \\
Caption 3 & $E = mc^2$ & \Eq\label{eq:3} \\
Caption 4 & $E = mc^2$ & \Eq\label{eq:4} \\
\end{tabular}
\noindent\begin{tblr}{lXr}
Caption 1 & $E = mc^2$ & \Eq\label{eq:5} \\
Caption 2 & $E = mc^2$ & \Eq\label{eq:6} \\
Caption 3 & $E = mc^2$ & \Eq\label{eq:7} \\
Caption 4 & $E = mc^2$ & \Eq\label{eq:8} \\
\end{tblr}
\end{document}
答案1
对于这种情况,需要tabularray
添加库“counter”进行封装:
\documentclass{article}
\usepackage{tabularray}
\UseTblrLibrary{amsmath, counter}
\newcommand{\Eq}{\refstepcounter{equation}(\theequation)}
\begin{document}
\begin{tblr}{lXr}
Caption 1 & $E = mc^2$ & \Eq\label{eq:5} \\
Caption 2 & $E = mc^2$ & \Eq\label{eq:6} \\
Caption 3 & $E = mc^2$ & \Eq\label{eq:7} \\
Caption 4 & $E = mc^2$ & \Eq\label{eq:8} \\
\end{tblr}
or
\begin{tblr}{lX[c]r}
Caption 1 & $E = mc^2$ & \Eq\label{eq:5} \\
Caption 2 & $E = mc^2$ & \Eq\label{eq:6} \\
Caption 3 & $E = mc^2$ & \Eq\label{eq:7} \\
Caption 4 & $E = mc^2$ & \Eq\label{eq:8} \\
\end{tblr}
\end{document}