我正在尝试在横向模式下使用 longtable。我得到了一个编译错误(我使用 XeLaTex),我不知道问题出在哪里。代码如下:
\begin{landscape}
\begin{longtable}{ccccccc}
\caption{My table.}
\label{tab:table} \\
\toprule
\multicolumn{1}{c}\textbf{} & \multicolumn{1}{c}\textbf{A} & \multicolumn{1}{c}\textbf{B} & \multicolumn{1}{c}\textbf{C} & \multicolumn{1}{c}\textbf{D} & \multicolumn{1}{c}\textbf{E} & \multicolumn{1}{c}\textbf{F}\\
\midrule
\endfirsthead
\multicolumn{7}{l}{\footnotesize\itshape\tablename~\thetable: continue from previous page} \\
\toprule
\multicolumn{1}{c}\textbf{} & \multicolumn{1}{c}\textbf{A} & \multicolumn{1}{c}\textbf{B} & \multicolumn{1}{c}\textbf{C} & \multicolumn{1}{c}\textbf{D} & \multicolumn{1}{c}\textbf{E} & \multicolumn{1}{c}\textbf{F}\\
\midrule
\endhead
\midrule
\multicolumn{7}{r}{\footnotesize\itshape\tablename~\thetable: continue to next page} \\
\endfoot
\bottomrule
\multicolumn{7}{r}{\footnotesize\itshape\tablename~\thetable: end} \\
\endlastfoot
% table body
\textbf{1} & 2 & 3 & 4 & 5 & 6 & 7\\
\midrule
\textbf{1} & 2 & 3 & 4 & 5 & 6 & 7\\
\midrule
\textbf{1} & 2 & 3 & 4 & 5 & 6 & 7 \\
\midrule
\textbf{1} & 2 & 3 & 4 & 5 & 6 & 7 \\
\midrule
\textbf{1} & 2 & 3 & 4 & 5 & 6 & 7 \\
\midrule
\textbf{1} & 2 & 3 & 4 & 5 & 6 & 7 \\
\midrule
\textbf{1} & 2 & 3 & 4 & 5 & 6 & 7 \\
\midrule
\textbf{1} & 2 & 3 & 4 & 5 & 6 & 7 \\
\midrule
\textbf{1} & 2 & 3 & 4 & 5 & 6 & 7 \\
\midrule
\textbf{1} & 2 & 3 & 4 & 5 & 6 & 7 \\
\midrule
\textbf{1} & 2 & 3 & 4 & 5 & 6 & 7 \\
\midrule
\textbf{1} & 2 & 3 & 4 & 5 & 6 & 7 \\
\midrule
\textbf{1} & 2 & 3 & 4 & 5 & 6 & 7 \\
\midrule
\textbf{1} & 2 & 3 & 4 & 5 & 6 & 7 \\
\bottomrule
\end{longtable}
\end{landscape}
错误是:
Package longtable Error: Column widths have changed in table 2.1
See the longtable package documentation for explanation.
Type H <return> for immediate help.
...
l.901 \end{longtable}
有任何想法吗?
答案1
这不是错误。再次编译,直到问题消失:longtable
使用之前的运行来调整列宽,以使它们在所有页面上的大小相同。
如果你加载包长桌使用选项暂停后,信息性消息确实会变成错误;如果您正在使用它,请省略该选项。