同じページに複数の表ヘッダーを挿入する長い表

同じページに複数の表ヘッダーを挿入する長い表

長い表では、出力が壊れることがあります。ページの先頭に、最初の表以外のヘッダーが挿入されます。これは非常にまれで、前のページに非常に特定の量のスペースが残っている場合にのみ発生するようです。

号の複製

この出力の原因と回避策について何かアイデアはありますか?

そして、ドキュメント。これは私がなんとか作成できた最も単純な複製です。ただし、原因は \needspace だけではありません。同じ問題が、別の長い表の直後の長い表でも発生し、段落の後に発生することは非常にまれです。

\documentclass[10pt,a4paper,final,twoside]{article}
\usepackage[a4paper,landscape]{geometry}
\usepackage{longtable}
\usepackage{needspace}
\begin{document}
xyz

xyz

xyz

xyz

xyz

xyz

xyz

xyz

xyz

xyz

xyz

xyz

xyz

xyz

xyz

xyz

xyz

xyz

xyz

xyz

xyz\\[30pt]
\needspace{10\baselineskip}
\section*{Header}
\begin{longtable}{l l l l l}
\multicolumn{5}{l}{Data (continued)}\\*
\textbf{Addr} & \textbf{Type} & \textbf{Product} & \textbf{Serial} & \textbf{Location} \\*
\hline
\endhead
\multicolumn{5}{l}{Data}\\*
\textbf{Addr} & \textbf{Type} & \textbf{Product} & \textbf{Serial} & \textbf{Location} \\*
\hline
\endfirsthead
25 & Data & Data & Data & Data \\
26 & Data & Data & Data & Data \\
27 & Data & Data & Data & Data \\
28 & Data & Data & Data & Data \\
29 & Data & Data & Data & Data \\
30 & Data & Data & Data & Data \\
31 & Data & Data & Data & Data \\
32 & Data & Data & Data & Data \\
\end{longtable}

\end{document}

私はこれを、debian wheezy texlive と miktex の両方で pdflatex、xelatex、lualatex でテストしましたが、常に同じ悪い出力が生成されます。

答え1

Longtableは、開始時に出力ルーチンを切り替えるため、少しデリケートな状態にあるため、\needspaceそれを使用するのは勇気がいるかもしれませんが、あなたの例は次のように簡略化できます。

\documentclass[10pt,a4paper,final,twoside,landscape]{article}

\setlength\textwidth{591.5302pt}
\setlength\textheight{418.25368pt}

\usepackage{longtable}

\begin{document}
xyz

xyz

xyz

xyz

xyz

xyz

xyz

xyz

xyz

xyz

xyz

xyz

xyz

xyz

xyz

xyz

xyz

xyz

xyz

xyz

xyz\\[30pt]


%%\clearpage
\section*{Header}
\begin{longtable}{l l l l l}
\multicolumn{5}{l}{Data (continued)}\\*
\textbf{Addr} & \textbf{Type} & \textbf{Product} & \textbf{Serial} & \textbf{Location} \\*
\hline
\endhead
\multicolumn{5}{l}{Data}\\*
\textbf{Addr} & \textbf{Type} & \textbf{Product} & \textbf{Serial} & \textbf{Location} \\*
\hline
\endfirsthead
25 & Data & Data & Data & Data \\
26 & Data & Data & Data & Data \\
27 & Data & Data & Data & Data \\
28 & Data & Data & Data & Data \\
29 & Data & Data & Data & Data \\
30 & Data & Data & Data & Data \\
31 & Data & Data & Data & Data \\
32 & Data & Data & Data & Data \\
\end{longtable}

\end{document}

同じ問題が発生しますが、寄付されたパッケージを使用していないため、責任を負うことができる人の数が限られているため残念です。

通常の回避策は、コメントを解除する\clearpageことです。

一方、エグレッからの慰めの言葉

わかりやすいテストケースをありがとう。後で見てみるよ

関連情報