如何在跨页 paracol 环境之后恢复“标准”文本流?

如何在跨页 paracol 环境之后恢复“标准”文本流?

我使用 paracol 在对开页上分列打印文本。文本打印在跨页 paracol 环境占用的第一页的剩余部分上,但不打印在第二页上。如何在这样的环境之后在两页上打印文本,以便恢复人们可能期望的从背面到正面的流向?

梅威瑟:

\documentclass[twoside]{scrbook}

\usepackage{paracol}
\usepackage{blindtext}

\begin{document}

\leavevmode\thispagestyle{empty}\newpage%simply to illustrate the use of paracol on facing pages

\begin{paracol}[2]*{4}

text below

\switchcolumn

text below

\switchcolumn

no text below

\switchcolumn

text on following page --> :-(

\end{paracol}

\blindtext[5]

\end{document}

我的完整文档在 paracol 之后有一个非分页的新章节,但我将其从 MWE 中删除,因为看起来 paracol 的行为在没有它的情况下也是一样的。此外,paracol 中的文本比 MWE 中的文本复杂得多,因此无法用其他环境替换它。

答案1

首先,您需要将两页文本存储到保存框中,然后在另一个 paracol 中一次拆分一页。

\documentclass[twoside]{scrbook}

\usepackage{paracol}
\usepackage{lipsum}

\newlength{\remains}
\newsavebox{\twopagebox}

\begin{document}

\leavevmode\thispagestyle{empty}\newpage%simply to illustrate the use of paracol on facing pages

\begin{paracol}[2]*{4}

text below \thecolumn

\switchcolumn

text below  \thecolumn

\switchcolumn

no text below \thecolumn

\switchcolumn

text on following page \thecolumn

\end{paracol}

\setlength{\remains}{\dimexpr \pagegoal-\pagetotal}% space remaining on page
\setbox\twopagebox=\vbox{\lipsum[1-12]}% two pages of text
\begin{paracol}[1]*{2}
\setbox0=\vsplit\twopagebox to \remains
\unvbox0
\switchcolumn
\setbox0=\vsplit\twopagebox to \remains
\unvbox0
\end{paracol}
\unvbox\twopagebox% print leftovers

\end{document}

相关内容