取消表格前的分页符

取消表格前的分页符

我有一个横跨多页的大型水平表格。LaTeX 在表格前放置了分页符,但我并不想使用分页符。我希望文本填满表格前的页面。我试过 \nopagebreak,但它不起作用。我怎样才能不允许在表格前放置分页符并用文本填满表格前的页面?这是一个小例子:

\documentclass{article}

\usepackage{longtable}
\usepackage{threeparttablex}
\usepackage{lscape}
\usepackage{tabu}

\begin{document}

I do not want a page break here
\nopagebreak

\begin{landscape}
  \begin{ThreePartTable}
    \begin{longtabu}{X[l] X[l] X[l]} \hline 
    Column1 & Column2 & Column3   
    \end{longtabu}
  \end{ThreePartTable}
\end{landscape}

I want this text to go before the table

\end{document}

答案1

longtables 不会像table这样浮动,通常它们会出现在放置的文本流中,并且表格之后的文本从未设置过。

但是,您可以使用\afterpage将表延迟一定量,您可以将整个表包含在参数中,\afterpage但如果表真的很长,最好将其放在外部文件中,如下所示:

\begin{filecontents}{lt1}
\begin{landscape}
  \begin{ThreePartTable}
    \begin{longtabu}{X[l] X[l] X[l]} \hline 
    Column1 & Column2 & Column3   
    \end{longtabu}
  \end{ThreePartTable}
\end{landscape}
\end{filecontents}
\documentclass{article}

\usepackage{longtable}
\usepackage{threeparttablex}
\usepackage{lscape}
\usepackage{tabu}
\usepackage{afterpage}

\begin{document}

I do not want a page break here

\afterpage{\input{lt1}}

I want this text to go before the table

\end{document}

在此处输入图片描述

相关内容