LaTeX:仅在剩余空间时显示块

时间:2010-06-22 16:30:18

标签: latex tex pdflatex

Hi LaTeX爱好者和TeX程序员!

我正在为某种传单开发一个单页文档类,应该自动生成。不幸的是,有限的空间不能显示页面上的所有内容,因此我需要完全跳过一些文章(我不希望传单上只打印一半文章)。

在伪代码中,这就是我要找的命令:

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

用例是:

  • 如果页面上留下了足够的垂直空间,请完整打印文章。否则只将标题添加到“其他文章”列表中。
  • 如果剩余足够的垂直空间,请添加大型广告,否则添加较小的广告或不执行任何操作。

我很确定会有办法获得这个。例如,在垂直和水平模式下工作的TeX命令\leaders仅在剩余足够空间时才插入领导者。不幸的是,我不想重复任何事情,其他行动也可能很棒。

任何有用命令的关键字和提示都将受到赞赏。您不必发布完整的解决方案(但您当然可以)。

非常感谢,
克里斯托弗

1 个答案:

答案 0 :(得分:1)

'needspace'软件包可以为您提供所需的内容,但如果没有足够的空间,它会插入分页:

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