如何删除图表列表前的空格

如何删除图表列表前的空格

如何删除“图表列表”页面中“图表列表”前的空格。我正在使用报告类。

谢谢

答案1

负责放置 LoF 标题的宏是\@makeschapterhead,这与打印带星号的章节时所涉及的宏相同(\chapter*)。

因此,实现目标的一种方法是\@makeschapterhead在之前进行修补\listoffigures以删除间距,然后再进行修补以稍后恢复原始行为。

执行此操作的代码如下(需要etoolbox):

\let\oldlistoffigures\listoffigures
\makeatletter
\renewcommand{\listoffigures}{%
  \patchcmd{\@makeschapterhead}{\vspace*{50\p@}}{\relax}{}{}%
  \oldlistoffigures%
  \patchcmd{\@makeschapterhead}{\relax}{\vspace*{50\p@}}{}{}%
}  
\makeatother

完成 MWE:

\documentclass{report}

\usepackage{showframe} % just for the example

\usepackage{etoolbox}

\let\oldlistoffigures\listoffigures
\makeatletter
\renewcommand{\listoffigures}{%
  \patchcmd{\@makeschapterhead}{\vspace*{50\p@}}{\relax}{}{}%
  \oldlistoffigures%
  \patchcmd{\@makeschapterhead}{\relax}{\vspace*{50\p@}}{}{}%
}  
\makeatother

\begin{document}

\listoffigures

\chapter*{Test}

\end{document} 

输出:

在此处输入图片描述

相关内容