我一直在尝试使用包定义自己的定理环境mdframed
。现在我遇到了分页符问题——如果我在页面底部附近启动定理环境,有时分页符会变得非常尴尬,因为只有定理名称会显示在上一页,而其他所有内容都会被推回到第二页。
MWE 包括一个好的例子和一个坏的例子:
\documentclass{article}
\usepackage{amsmath, amsfonts, amsthm}
\usepackage[framemethod=TikZ]{mdframed}
\usepackage{lipsum}
\usepackage{geometry}
\geometry{top=1cm,left=2cm,right=2cm,bottom=3cm}
\newenvironment{issue}[1][]{%
\mdfsetup{%
frametitle={%
\tikz[baseline=(current bounding box.east),outer sep=0pt]
\node[anchor=east,rectangle,fill=cyan!20]
{\strut ~#1};}}%
\mdfsetup{innertopmargin=10pt,linecolor=cyan!40,%
linewidth=2pt,topline=true
}
\begin{mdframed}[]\hspace{16pt}\relax%
\label{#1}}{\end{mdframed}}
\begin{document}
\par This is working fine.
\begin{issue}[This is working fine]
There is no awkward page break here.
\end{issue}
\vspace{19cm}
\par Below is the issue.
\begin{issue}[Having Issue with Page Break]
This is on the second page. \lipsum[2]
\end{issue}
\end{document}
我只想确保前一页至少显示 2 或 3 行。这样看起来会更好。如果空间不够显示两行,那么我想将所有内容推到第二页。有什么方法可以实现这一点吗?
谢谢。