编辑

编辑

section在这段代码中,我希望我的、subsection和标题前后的间距subsubsection完全一致,1.5cm而不管字体大小或行距如何。我怎样才能做到这一点?
我知道这个问题在这个网站上已经被问过好几次了,但是我想要一个无包装的解决方案。

\documentclass[a4paper]{book}
\usepackage{lipsum}
\begin{document}
\chapter{A Chapter}
\lipsum[2]
\section{Foo}
\lipsum[2]
\subsection{Bar}
\lipsum[2]
\subsubsection{Foo Bar}
\lipsum[2]
\end{document}

编辑

我知道,比如说,章节标题之前的间距是由下面的代码控制的,但是当我输入-1.5cm而不是 时-3.25ex,标题之前的垂直间距在输出上不会正好变成 1.5 厘米。为什么?

\makeatletter
\newcommand\section{\@startsection {section}{1}{\z@}%
                                   {-3.5ex \@plus -1ex \@minus -.2ex}%
                                   {2.3ex \@plus.2ex}%
                                   {\normalfont\Large\bfseries}}
\makeatother 

答案1

无包解决方案,仅使用另一个文档类;-)

\documentclass[a4paper,emulatestandardclasses]{scrbook}
\usepackage{lipsum}
\RedeclareSectionCommands[%
    beforeskip=-1.5cm,%
    afterskip=1.5cm%
]{section,subsection,subsubsection}
\begin{document}
\chapter{A Chapter}
\lipsum[2]
\section{Foo}
\lipsum[2]
\subsection{Bar}
\lipsum[2]
\subsubsection{Foo Bar}
\lipsum[2]
\end{document}

相关内容