如果不合适,请将引文放在新页面

如果不合适,请将引文放在新页面

我有一个\begin{quote} ... \end{quote}不想被分成不同页面的页面。因此,如果它位于页面末尾且空间不足,它将自动进入新页面。可以实现这一点吗?我四处寻找,到目前为止没有找到任何线索。

显然,我并不是在寻求\newpage解决方案。我想要的是自动化的东西。

答案1

您可以将引文包装在 中{minipage},这样它就不会跨页。

\documentclass{article}

\usepackage{lipsum}% some blind text

\begin{document}
\lipsum[1-4]
\begin{quote}
    \begin{minipage}{\linewidth}
        \lipsum[1-2]
    \end{minipage}
\end{quote}
\lipsum[1-4]
\end{document}

请注意,必须{minipage}在 内,{quote}并且环境具有指定 宽度的强制参数{minipage},在本例中应该是\linewidth。请参阅步调一致的回答如下有关\parskip退税

答案2

Tobi 的解决方案有一个小缺点:minipage环境的 为0pt,因此使用 的环境\parskip中段落中断可能不被注意。补救措施:在 内保存 的值,但在启动 之前,然后在 内恢复它。quoteminipage\parskipquoteminipageminipage

\documentclass{article}

\usepackage{lipsum}% some blind text

\begin{document}
\lipsum[1-4]
\begin{quote}
    \edef\normalparskip{\the\parskip}
    \begin{minipage}{\linewidth}
        \setlength{\parskip}{\normalparskip}
        \lipsum[1-2]
    \end{minipage}
\end{quote}
\lipsum[1-4]
\end{document}

相关内容