Alterando o espaço antes do capítulo sem o pacote titlesec

Alterando o espaço antes do capítulo sem o pacote titlesec

Lamento se esta é uma pergunta repetida, não consegui encontrar nada semelhante na pesquisa do fórum.

Como ajustar o espaçoanteso título do capítulo sem usar titleseco pacote.

Eu tentei este código, mas sem sorte:

\renewcommand*{\chapterheadstartvskip}{\vspace*{-\topskip}}

Diz que \chapterheadstartvskipnão está definido.

Responder1

Você não forneceu a documentclass que está usando. Então vou deixar escapar meu palpite de que é book. Aqui o espaço padrão acima é definido por \vspace*{50\p@}. Isso pode ser corrigido como neste código:

\documentclass{book}
\usepackage{blindtext,showframe}   %% just for demo
\usepackage{xpatch}
\makeatletter
\xpatchcmd{\@makechapterhead}{\vspace*{50\p@}}{\vspace*{20\p@}}{}{}
\xpatchcmd{\@makeschapterhead}{\vspace*{50\p@}}{\vspace*{20\p@}}{}{}
\makeatother
\begin{document}
  \tableofcontents
  \Blinddocument
\end{document}

Ajuste 20como \vspace*{20\p@}desejar.

Responder2

Consegui encontrar a resposta. A classe que estou usando é \documentclass{abntex2}baseada na \documentclass{memoir}classe

a correção para o espaço do capítulo foi combinar a métrica \beforechapskipcom a redefinição do comando \chapterheadstartque de alguma forma se perdeu dentro do pacote abntex2.

\renewcommand{\chapterheadstart}{\vspace*{\beforechapskip}}
\setlength\beforechapskip{20mm}
\setlength\afterchapskip{20mm}

informação relacionada