我正在尝试生成一个编号表。我使用了回答这里,将其放入@{\stepcounter{rowcount}}
表格的第一行。
但是,当我尝试使用包booktabs
,甚至是纯表格格式时,这似乎会中断。我怀疑问题是由于\stepcounter
它很脆弱,但我不知道如何解决这个问题。
我还想将第一行设为标题,不带数字。
这是 MWE
\documentclass{article}
\usepackage{booktabs}
\newcounter{rowcounter}
\setcounter{rowcounter}{0}
\begin{document}
\begin{tabular}{@{\stepcounter{rowcounter}\arabic{rowcounter}}ll}
header row & text0\\
first row & text1\\
second row & text1\\
third row & text2
\end{tabular}
\end{document}
答案1
如果你不使用array
你需要的\protect
命令
\documentclass{article}
\usepackage{booktabs}
\newcounter{rowcounter}
\setcounter{rowcounter}{0}
\begin{document}
\begin{tabular}{@{\protect\stepcounter{rowcounter}\protect\arabic{rowcounter} }ll}
header row & text0\\
first row & text1\\
second row & text1\\
third row & text2
\end{tabular}
\end{document}
如果您想从 0 开始,那么您可以将其初始化为 -1 而不是 0,或者在@{}
增加计数器之前而不是之后使用它。
答案2
在序言中你需要添加array
包:
\documentclass{article}
\usepackage{array, % <-- added
booktabs}
\newcounter{rowcounter}
\setcounter{rowcounter}{0}
\begin{document}
\begin{tabular}{@{\stepcounter{rowcounter}\arabic{rowcounter}\ }ll}
header row & text0\\
first row & text1\\
second row & text1\\
third row & text2
\end{tabular}
\end{document}