我正在寻找一个具有像 这样的高度的 tcolorbox \vfill
。
我有一个带有 es 的页面tcolorbox
。
如果页面上还剩下一些空间,我想扩展页面中间一个框的高度。该框的高度应为\vfill
。
已经有一个非常好的功能,这个选项height fill
完全符合我的要求,但只针对页面上的最后一个框。
如果该解决方案也适用于像示例中的栅格,那就太好了。
\documentclass{article}
\usepackage{tcolorbox}
\tcbuselibrary{raster}
\tcbuselibrary{breakable}
\begin{document}
other
\clearpage
\begin{tcolorbox}a\\a\\a\\a\\a\\a\\a\\a\\a\\a\\a\end{tcolorbox}
\begin{tcbraster}[%
raster columns=2,
raster rows=1,
raster height=6cm, % manual adjustment :-(
%raster height=\vfill,% I would like to have the hight like \vfill
%height fill,% Nice, but only working at the end of the page :-(
]
\begin{tcolorbox}
Here we will have a plot that is nice to extend if there is some space left on the page.
\end{tcolorbox}
\begin{tcolorbox}
Here we will have a plot that is nice to extend if there is some space left on the page.
\end{tcolorbox}
\end{tcbraster}
\begin{tcolorbox}a\\a\\a\\a\\a\\a\\a\\a\\a\\a
\end{tcolorbox}
\clearpage
other
\end{document}
@cfr
按照您的建议,我已将所有框放入栅格中。第一个和最后一个框应该是natural height
。您能告诉我如何扩展中间的两个框以填满页面吗?
\documentclass{article}
\usepackage{tcolorbox}
\tcbuselibrary{raster}
\tcbuselibrary{breakable}
\begin{document}
other
\clearpage
\begin{tcbraster}[%
raster columns=1,
raster rows=3,
raster height=\textheight,
]
\begin{tcolorbox}[reset,natural height]
a\\a\\a\\a\\a\\a\\a\\a\\a\\a\\a
\end{tcolorbox}
\begin{tcbraster}[%
raster columns=2,
raster rows=1,
raster height=6cm,% how to extend the height to fill the page?
]
\begin{tcolorbox}
Here we will have a plot that is nice to extend if there is some space left on the page.
\end{tcolorbox}
\begin{tcolorbox}
Here we will have a plot that is nice to extend if there is some space left on the page.
\end{tcolorbox}
\end{tcbraster}
\begin{tcolorbox}[reset,natural height]
a\\a\\a\\a\\a\\a\\a\\a\\a\\a
\end{tcolorbox}
\end{tcbraster}
\clearpage
other
\end{document}
答案1
这需要一些手动操作。在我的代码中,顶部和底部框的高度由equal height groups
名称topbox
和保存bottombox
。现在,中间框的高度设置为\textheight-\topboxheight-\bottomboxheight-4mm
框2mm
之间的空间。
tcolorbox
3.80 (2015/11/27)
这个答案需要版本或更新版本。
\documentclass{article}
\usepackage{tcolorbox}
\tcbuselibrary{raster}
\tcbuselibrary{breakable}
\begin{document}
other
\clearpage
%-------------------
\begin{tcolorbox}[equal height group=topbox,
before skip=0mm,after skip=2mm]a\\a\\a\\a\\a\\a\\a\\a\\a\\a\\a\end{tcolorbox}
\begin{tcbraster}[%
raster columns=2,
raster rows=1,
code={%
\tcbheightfromgroup\topboxheight{topbox}%
\tcbheightfromgroup\bottomboxheight{bottombox}%
},
raster height=\textheight-\topboxheight-\bottomboxheight-4mm]
\begin{tcolorbox}
Here we will have a plot that is nice to extend if there is some space left on the page.
\end{tcolorbox}
\begin{tcolorbox}
Here we will have a plot that is nice to extend if there is some space left on the page.
\end{tcolorbox}
\end{tcbraster}
\begin{tcolorbox}[equal height group=bottombox,
before skip=2mm,after skip=0mm]a\\a\\a\\a\\a\\a\\a\\a\\a\\a
\end{tcolorbox}
%-------------------
\clearpage
other
\end{document}