为什么水平线在超表格和表格中的表现不同?

为什么水平线在超表格和表格中的表现不同?

我在使用 supertabular 包时遇到了问题。基本上,水平线不会在表格末尾停止,而是一直延伸到页面末尾。

这是一张不言自明的截图。第一个是超表格式,第二个是表格

截屏

这是代码。我尝试将其删减,使其尽可能短,但仍能正常工作。我做错了什么?我对 LaTeX 不是很熟悉,所以我可能会遗漏一些东西。

\documentclass[a4paper,12pt]{book}

\usepackage{supertabular}       
\usepackage{array}
\usepackage[]{geometry}
%\newcolumntype{v}[1]{>{\raggedright \arraybackslash\hspace{0pt}}p{#1}}

\begin{document}

\tablehead {%
\hline
0 & 1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 & 10 & 11 \tabularnewline
}
\tabletail{%
}
\label{tab:lead_overview}

\begin{supertabular*}{\textwidth}{ | c | c | c | c | c | c | c | c | c | c | c | c | }
    \hline
    0 & 1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 & 10 & 11 \tabularnewline
    \hline
\end{supertabular*}


\begin{tabular}{ | c | c | c | c | c | c | c | c | c | c | c | c | }
     \hline
    0 & 1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 & 10 & 11  \\ \hline
    0 & 1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 & 10 & 11  \\ \hline
\end{tabular}


\end{document}

答案1

您正在使用supertabular*的方式与 相同tabular*,即,它以宽度作为其第一个参数。

您已将 的宽度指定supertabular*\textwidth,因此 您的\hline将沿着页面的宽度绘制。

从你的问题来看,你似乎更喜欢使用supertabular,它确实不是将宽度作为其第一个参数。 在您的示例上下文中,听起来您想要以下代码:

\begin{supertabular}{ | c | c | c | c | c | c | c | c | c | c | c | c | }
    \hline
    0 & 1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 & 10 & 11 \tabularnewline
    \hline
\end{supertabular}

如需进一步阅读,请先阅读文档

texdoc supertabular

您还可以查看文档booktabs,其中提供了一些有关构建表格的很好的讨论/建议。

相关内容