分页符:带标题的枚举

分页符:带标题的枚举

在我的文档中,我创建了一个名为 的新环境examples。基本上,它是一个标题为“示例”的枚举。

我们的想法是得到类似的东西:

例子

  1. 示例 1
  2. 示例 2
  3. 示例 3

问题是,有时标题“示例”位于一页上,而枚举却从下一页开始:

在此处输入图片描述

代码

\documentclass{article}

\usepackage{enumitem}

\usepackage{blindtext}


\newenvironment{examples}
{%
    %\begin{samepage}
    \textbf{Examples} % HEADLINE
    \begin{enumerate}[leftmargin=4em,label={\alph*)},labelsep=4em]
    \setlength{\itemsep}{1em}
    \setlength{\parskip}{0.5em}
    \setlength{\parsep}{0pt}
}
{%
    \end{enumerate}
    %\end{samepage}
}

\begin{document}

    \blindtext[4]
    Lorem ipsum. Lorem ipsum. Lorem ipsum. Lorem ipsum. Lorem ipsum. Lorem ipsum. Lorem ipsum. Lorem ipsum. Lorem ipsum. Lorem ipsum. Lorem ipsum. Lorem ipsum. Lorem ipsum. Lorem ipsum. Lorem ipsum.

    \begin{examples}
    \item \blindtext[1]
    \item \blindtext[2]
    \end{examples}

\end{document}

我尝试使用samepage-environment,但是这个环境正如它的名字所说的那样:它不会在枚举项之间中断:

在此处输入图片描述

代码

\documentclass{article}

\usepackage{enumitem}

\usepackage{blindtext}


\newenvironment{examples}
{%
    \begin{samepage}
    \textbf{Examples} % HEADLINE
    \begin{enumerate}[leftmargin=4em,label={\alph*)},labelsep=4em]
    \setlength{\itemsep}{1em}
    \setlength{\parskip}{0.5em}
    \setlength{\parsep}{0pt}
}
{%
    \end{enumerate}
    \end{samepage}
}

\begin{document}

    \blindtext[2]

    \begin{examples}
    \item \blindtext[1]
    \item \blindtext[2]
    \end{examples}

\end{document}

所以我想要的是,标题“示例”之后没有分页符,但项目应该正常分页。

答案1

您可以使用 beginpenalty:

\documentclass{article}

\usepackage{enumitem}

\usepackage{blindtext}


\newenvironment{examples}
{%
 \par\medskip\noindent    
    \textbf{Examples} % HEADLINE
    \begin{enumerate}[leftmargin=4em,label={\alph*)},labelsep=4em,beginpenalty=10000]
    \setlength{\itemsep}{1em}
    \setlength{\parskip}{0.5em}
    \setlength{\parsep}{0pt}
}
{%
    \end{enumerate}
}

\begin{document}

    \blindtext[2]

    \begin{examples}
    \item \blindtext[1]
    \item \blindtext[2]
    \end{examples}

\end{document}

使用 koma-class 我会使用 \minisec 来打印标题:

\documentclass{scrartcl}

\usepackage{enumitem}

\usepackage{blindtext}


\newenvironment{examples}
{%
    \minisec{Examples} % HEADLINE
    \begin{enumerate}[leftmargin=4em,label={\alph*)},labelsep=4em]
    \setlength{\itemsep}{1em}
    \setlength{\parskip}{0.5em}
    \setlength{\parsep}{0pt}
}
{%
    \end{enumerate}
}

\begin{document}

    \blindtext[2]

    \begin{examples}
    \item \blindtext[1]
    \item \blindtext[2]
    \end{examples}

\end{document}

相关内容