Question

Comment puis-je encourager / faire Latex composěe une partie du texte de sorte que cela va apparaître sur une même page consécutive, deux impairs pages de pages?

Avec tâtonnement, \nopagebreak peut être cajolé en faisant cela, mais est-il une stratégie qui fonctionne tout simplement? Quelque chose comme un environnement de samepage serait idéal, mais qui:

  1. forcera un saut de page sur les pages impaires si cela est nécessaire pour obtenir tout le texte des pages en regard;
  2. Permet jusqu'à un saut de page partout dans le corps de l'environnement, et ne si ce grand bruit ne peut être garantie.
Était-ce utile?

La solution

Vous pouvez mettre en place un environnement tel que

\newenvironment{twopage}{%
  \begingroup\setbox0\vbox\bgroup
}{%
  \egroup
  \ifdim\ht0>\textheight
    \setbox1\vsplit0 to \textheight
    \cleardoublepage\unvbox1\clearpage
    \ifdim\ht0>\textheight
      \PackageWarning{twopage}{Overflow in twopage environment}%
    \fi
    \unvbox0\clearpage
  \else
    \clearpage\unvbox0\clearpage
  \fi\endgroup
}

Si vous voulez un échec plus bruyant, le changement \PackageWarning en \PackageError, Les \unvboxes devraient permettre des notes / flotteurs pour fonctionner correctement - si vous n'avez pas besoin, vous pouvez envisager de les changer tous \boxes au lieu (bien que je suis peu rouillé sur le comportement des \vsplit par rapport à des profondeurs de la boîte et skips, de sorte que peut produire un comportement drôle, mais il garantirait que vous ne preniez deux pages en faisant couler quelque chose de plus le fond de la deuxième page).

Autres conseils

Il est une distinction entre \clearpage et \cleardoublepage. En utilisant \cleardoublepage juste avant les choses que vous voulez sur le côté gauche et \clearpage avant les choses que vous voulez sur le côté droit vous pouvez forcer la mise en page que vous cherchez.

Bien sûr, l'option twoside est indispensable.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top