LaTeX: показывать блок, только если осталось достаточно места - PullRequest
5 голосов
/ 22 июня 2010

Привет энтузиастам LaTeX и программистам TeX!

В настоящее время я разрабатываю одностраничный класс документов для листовок, которые должны генерироваться автоматически.К сожалению, ограниченное количество места не позволяет отображать все на странице, поэтому мне нужно полностью пропустить некоторые статьи (я не хочу, чтобы только одна половина статьи была напечатана на флаере).

В псевдокоде это команда, которую я ищу:

\if_sufficient_vspace_left
    {<big block/minipage with an article>}
    {<otherwise do nothing or something else>}

И варианты использования:

  • Если на следующей статье осталось достаточно места для следующей статьистраница, распечатайте статью полностью.В противном случае добавьте только заголовок в список »Другие статьи«.
  • Если осталось достаточно места по вертикали, добавьте большое рекламное объявление, в противном случае добавьте меньшее или не делайте ничего.Я совершенно уверен, что будет способ получить это.Например, команда TeX \leaders, которая работает в вертикальном и горизонтальном режимах, вставляет лидер только при наличии достаточного места.К сожалению, я не хочу повторять что-либо, и действие else может быть также отличным.

    Будем благодарны за любые ключевые слова и советы по полезным командам.Вам не нужно публиковать полные решения (но вы можете, конечно).

    Большое спасибо,Christoph

1 Ответ

1 голос
/ 22 июня 2010

Пакет «Необходимое пространство» может дать вам то, что вы ищете, хотя, если недостаточно места, он вставляет разрыв страницы:

http://ctan.org/pkg/needspace

Вы могли бы использовать это что-токак это:

\needspace{5\BaseLineSkip}    %  assume you need 5 lines for minipage
    {<big block/minipage with an article>}

Если вы не хотите разрывать страницу, когда не хватает места, вместо этого хотите больше контента, но с сохранением мини-страницы до следующей страницы, то вам нужно будет изучить, как LaTeXручки "плавает":

http://en.wikibooks.org/wiki/LaTeX/Floats,_Figures_and_Captions

...