O novo ambiente Latex empurra o título do ambiente para o final da página quando o conteúdo é longo

O novo ambiente Latex empurra o título do ambiente para o final da página quando o conteúdo é longo

Estou tentando descobrir por que \newenvironmentempurra o título do ambiente para a parte inferior da página sempre que o conteúdo do ambiente tem mais de 1 página. O seguinte é um exemplo. Gostaria que o título no longabstractambiente se comportasse como o do shortabstract(ou seja, título e conteúdo permanecessem na mesma página).

\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}

Qualquer ajuda é muito apreciada.

Longo

Responder1

Eu acho que longabstracté suposto ter mais de uma página, então centralizá-lo em uma página não faz sentido.

As definições dos ambientes devem constar no preâmbulo. Evite comandos que você não conhece, como \null, e use comandos LaTeX padrão.

Aqui o breve resumo é centralizado verticalmente; remova o entrelinha \vspace*{\fill}se quiser que fique alinhado com a margem superior.

\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}

insira a descrição da imagem aqui

Responder2

Graças aos comentários do @UlrikeFischer, agora descobri a resposta: basta excluir o \vfill inicial nesses ambientes.

\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}

informação relacionada