这个问题与我的另一个在那个问题中,我描述了我尝试用另一种框架绘制技术进行替换tcolorbox
,这种技术不会引入下面描述的问题,但会产生新的问题(尽管对于高级 TeX 用户来说可能更容易解决)。
问题
当tcolorbox
需要打破时,其内部内容的垂直粘连不会拉伸,导致页面布局不均匀。如何解决?我尝试了多种方法,但都失败了。
代码
\documentclass{report}
\usepackage[utf8]{inputenc}
\usepackage[many]{tcolorbox}
\usepackage{tikz}
\flushbottom
\newcommand{\object}{\par\tikz[]{\draw (0,0) rectangle (\textwidth,3); \node at (\textwidth/2,1.5) {Content}}}
\tcbset{my-frame/.style={
breakable,
before skip=\medskipamount,
after skip=\medskipamount
}}
\begin{document}
\begin{tcolorbox}[my-frame]
\object
\medskip % not stretched
\object
\end{tcolorbox}
% stretched too much
\begin{tcolorbox}[my-frame]
\object
\medskip % not stretched
\object
\medskip % not stretched
\object
\medskip % not stretched
\object
\medskip % not stretched
\object
\end{tcolorbox}
\end{document}
插图
如下图所示,vspace
盒子之间被拉伸,而vspace
盒子内部则没有:
预期结果
我认为我所问的问题无法用 tcolorbox 实现,因为它在底层使用了一些类似 minipage 的东西。我很高兴听到其他不会引发此类问题的框绘制方法。我不需要任何花哨的功能,我只想能够在一些跨越多页的段落(如定理和证明)下绘制彩色背景。