垂直分布于多页

垂直分布于多页

我想将多个元素分布在多个页面上,这些元素之间留有间隙。间隙的高度应大致相同。

例子:

element1

\vspace*{\fill}

element2

\vspace*{\fill}

element3

\vspace*{\fill}

element 4

\vspace*{\fill}

如果第一页只适合显示前三个元素,我会得到如下结果,

+--------+    +--------+
|element1|    |element4|
|        |    |        |
|element2|    |        |
|        |    |        |
|element3|    |        |
|        |    |        |
+--------+    +--------+

但我想要像这样的分布

+--------+    +--------+
|element1|    |element3|
|        |    |        |
|        |    |        |
|element2|    |element4|
|        |    |        |
|        |    |        |
+--------+    +--------+

此外,我希望元素始终分布在偶数页上。

这个问题的背景如下:我想以典型的 filofax 格式打印出我的数字日历 (*.ics),每周两页。每一天都应该有一些空间用于手写笔记,以便添加约会、待办事项等。我有时在一周的开始有更多约会,有时在周末有更多约会,因此在周三和周四之间设置固定的分页符并不是一个好的解决方案。在极少数情况下,一周甚至无法容纳两页,因此最好自动将日期分配到偶数页上。

是否有可能实现类似的东西\multipagevfill,或者 TeX 一次只能关注一页?也许可以像 supertabular 一样进行额外的运行?

答案1

您可以定义tcolorboxes特定的text height(或height fill完全填充可用空间)。text height将独立于框内容固定框高度,因此您可以使用手写文本完成框内容。

\documentclass{article}
\usepackage[most]{tcolorbox}

\tcbset{colback=red!5!white, colframe=red!75!black}

\begin{document}
\begin{tcolorbox}[title=Monday, text height=5cm]
\begin{itemize}
\item Task
\item Task
\end{itemize}
\end{tcolorbox}

\begin{tcolorbox}[title=Tuesday, text height=5cm]
\end{tcolorbox}

\begin{tcolorbox}[title=Wednesday, height fill]
\end{tcolorbox}
\end{document}

在此处输入图片描述

答案2

不确定这是否足够,因为我无法在您的实际条件下尝试。但我创建了一个宏

\PageElements[<min element vertical size>]{<no pages>}{<no elements>}

通过它设置希望分发的页面和元素的期望数量。该宏仅定义一个,\mingap稍后将(与一个一起\vfil)应用于每个元素之后。

在某些情况下可能需要可选参数,但默认为 0pt。

在下面的 MWE 中,我将 4 个元素分布在 2 页上,然后将 6 个元素分布在 2 页上,最后将 6 个元素分布在 3 页上。

\documentclass{article}
\newcommand\element[1]{\leavevmode\framebox(100,100){element#1}\vgap}
\def\mingap{0pt}
\newcommand\vgap{\leavevmode\vspace{\mingap}\vfil\par}
\newcommand\PagesElements[3][0pt]{\def\mingap{%
  \the\dimexpr\textheight/\numexpr#3/#2+1\relax-\dimexpr#1\relax}}
\begin{document}
\PagesElements{2}{4}
\element1
\element2
\element3
\element4
\clearpage

\PagesElements[40pt]{2}{6}
\element1
\element2
\element3
\element4
\element5
\element6
\clearpage

\PagesElements{3}{6}
\element1
\element2
\element3
\element4
\element5
\element6
\clearpage
\end{document}

第 1 页

在此处输入图片描述

全部 7 页

在此处输入图片描述

相关内容