在使用前需要导入包:\usepackage{longtable}
。
注意事项
- 使用:
\begin{longtable}
...
\end{longtable}
- 在外层不能包裹
\begin{table}
...
\end{table}
- 添加标题、标签后需要加
\\
。
\begin{longtable}
...
\caption{...}
\label{...}\\
...
\end{longtable}
- longtable目前只能在单栏中使用,不能在双栏或者多栏中使用。因此在双栏使用时需要在前面添加
\onecolumn
,之后通过\twocolumn
恢复双栏。 - longtable在双栏中使用
\onecolumn
会令剩余的空间留白,可以通过调整表格高度撑满一页。
\onecolumn
\begin{center}
\footnotesize %set font-size
\renewcommand\arraystretch{1.2} % set the table hight
\begin{longtable}
...
\end{longtable}
\end{center}
\twocolumn
使用
- 让跨页的表格每页都有相应的表头表尾,可以使用下面的语法。
% 这里写第一页表头的内容
\endfirsthead
% 这里写之后每一页的表头的内容,可选
\endhead
% 这里写第一页表尾的内容,可选
\endfoot
% 这里写最后一页表尾的内容,可选
\endlastfoot
- 若只需要在最后一页添加表格Note,可以使用
ThreePartTable
。
\begin{center}
\begin{ThreePartTable}
\begin{TableNotes}
\footnotesize
\item[] \textbf{Note:} 内容。
\end{TableNotes}
\begin{longtable}
\caption{title}
\label{example} \\
\toprule
...
\end{longtable}
\end{ThreePartTable}
\end{center}
- 若表格太宽,可以使用以下命令调整:
\setlength{\tabcolsep}{1pt}
% Adjust margins
\setlength\LTleft{-1in plus 1 fill}
\setlength\LTright{-1in plus 1 fill}
\begin{longtable}
...
\end{longtable}
- 可以使用
landscape
调整表格方向。
\begin{landscape}
\begin{center}
\begin{longtable}
...
\end{longtable}
\end{center}
\end{lanscape}
目前表格留白没啥好的解决方案,若有好的解决方案可以评论区告知一下!