我需要在几页文本块后绘制一个矩形(或一个框架框)。矩形必须在\linewidth
文本后水平跨越整个页面,在垂直方向上跨越到该页面文本区域的末尾。还必须根据之前的文本量动态调整高度以适应可用空间。我尝试使用蒂克兹包,但老实说,这远远超出了我的 tex 知识。
平均能量损失
\documentclass[]{article}
\usepackage{lipsum}
\begin{document}
\section{Section 1}
\lipsum[1]
% Draw rectangle here with linewidth and that spans vertically
% until the end of the area text of this page
\newpage
\lipsum[2]
% Draw rectangle here with linewidth and that spans vertically
% until the end of the area text of this page
\end{document}
答案1
这是一个解决方案tikz
\documentclass[]{article}
\usepackage{tikzpagenodes}
\usepackage{lipsum}
\newcommand{\bfill}{%
\noindent
\begin{tikzpicture}[remember picture, overlay]
\fill[color = blue!30] (0, 0) rectangle (current page text area.south east);
\end{tikzpicture}
}
\begin{document}
\section{Section 1}
\lipsum[1]
\bfill
\newpage
\lipsum[2]
\bfill
\end{document}
答案2
您可以使用tcolorbox
它的height fill
选项——它将用给定颜色的框填充页面的剩余文本部分。
用途和一些选项以及一些空内容。这些选项\filltobottom
在这里至关重要,同时也是为了强制框使用线宽(而不是“实际”内容)\NewTotalTCBox
breakable,height fill
tcbox width=forced center,width=\linewidth
\documentclass[]{article}
\usepackage{lipsum}
\usepackage[most]{tcolorbox}
\usepackage{showframe}
\usepackage[verbose,bmargin=2cm]{geometry}
\NewTotalTCBox{\filltobottom}{O{}}{breakable, enhanced,colback=yellow,sharp corners,height fill,tcbox width=forced center,width={\linewidth},#1}{}
\begin{document}
\section{Section 1}
\lipsum[1]
\filltobottom[colback=green]
\clearpage
\lipsum[2]
\filltobottom
\end{document}