当内容很长时,Latex 新环境会将环境标题推送到页面末尾

当内容很长时,Latex 新环境会将环境标题推送到页面末尾

我想弄清楚为什么\newenvironment当环境内容超过 1 页时,环境标题会下移到页面底部。以下是示例。我希望环境中的标题longabstract表现得像shortabstract(即标题和内容保持在同一页面上)。

\documentclass[12pt]{book}
\usepackage{setspace}
\usepackage{lipsum}
\begin{document}
\clearpage
\newenvironment{shortabstract}%
    {\cleardoublepage\thispagestyle{empty}\null\vfill\begin{center}%
    \bfseries \LARGE Short Abstract \end{center}}%
    {\vfill\null}
    \setstretch{1.5}
      \begin{shortabstract} 
      \lipsum[1]
       \end{shortabstract}
\newenvironment{longabstract}%
    {\cleardoublepage\null\vfill\begin{center}%
    \bfseries \LARGE Long Abstract\end{center}}%
    {\vfill\null}
        \begin{longabstract}
      \lipsum[2-5]
       \end{longabstract}
\end{document}

任何帮助深表感谢。

长的

答案1

我猜测它的longabstract长度应该超过一页,因此将其放在页面中央是没有意义的。

环境的定义应该放在前言中。避免使用您不了解的命令(例如),\null而应使用标准 LaTeX 命令。

此处的简短摘要垂直居中;\vspace*{\fill}如果希望它与顶部边距齐平,请删除前导。

\documentclass[12pt]{book}
\usepackage{setspace}
\usepackage{lipsum}

\newenvironment{shortabstract}
 {\cleardoublepage\thispagestyle{empty}\vspace*{\fill}\begin{center}%
  \bfseries \LARGE Short Abstract\end{center}}%
 {\vspace*{\fill}\cleardoublepage}

\newenvironment{longabstract}
 {\cleardoublepage\begin{center}%
  \bfseries \LARGE Long Abstract\end{center}}%
 {\cleardoublepage}

\setstretch{1.5}

\begin{document}

\begin{shortabstract} 
\lipsum[1]
\end{shortabstract}

\begin{longabstract}
\lipsum[2-5]
\end{longabstract}

\end{document}

在此处输入图片描述

答案2

感谢@UlrikeFischer 的评论,我现在找到了答案:只需在这些环境中删除开头的 \vfill 即可。

\documentclass[12pt]{book}
\usepackage{setspace}
\usepackage{lipsum}
\begin{document}
\clearpage
\newenvironment{shortabstract}%
    {\cleardoublepage\thispagestyle{empty}\null\begin{center}%
    \bfseries \LARGE Short Abstract \end{center}}%
    {\vfill\null}
    \setstretch{1.5}
      \begin{shortabstract} 
      \lipsum[1]
       \end{shortabstract}
\newenvironment{longabstract}%
    {\cleardoublepage\null\begin{center}%
    \bfseries \LARGE Long Abstract\end{center}}%
    {\vfill\null}
        \begin{longabstract}
      \lipsum[2-5]
       \end{longabstract}
\end{document}

相关内容