如何在没有任何包的情况下在章节标题前添加垂直空格

如何在没有任何包的情况下在章节标题前添加垂直空格

我认为使用软件包来解决文档中的所有问题会导致编译时间过长,并且加载太多软件包会导致一些意外错误。所以,我不想使用不必要的软件包。

问题 1:我想在新页面上开始的部分标题前添加垂直空间。解决方案是什么? 在此处输入图片描述 问题2:另外,如何TOC在没有任何包装的情况下减少序言中项目之间的空间?

这是我的 MWE:

\documentclass[14pt,a4paper]{extbook}
\usepackage[left=1in, right=1.2in, top=1.35in, bottom=1.2in, headsep=.25in, footskip=.3in,
showframe]{geometry}
\usepackage{lipsum}
\renewcommand\baselinestretch{1.2}
\makeatletter
\setlength\parskip{7.2\p@ \@plus \p@}
\makeatother

\begin{document}
    \tableofcontents
    \chapter{First chapter}
\section{First section}
\subsection{First subsection}
\lipsum[1]
\section{Second section}
\subsection{Second subsection}
\lipsum[1-2]
    \chapter{second chapter}
\section{First section} 
\subsection{First subsection} 
\lipsum[1]
\section{Second section}
\subsection{Second subsection}
\lipsum[1-2]
\end{document}

您推荐以下技巧吗?(\vspace*{-15pt}

\makeatletter
    \renewcommand\section{\vspace*{-15pt}\@startsection {section}{1}{\z@}%
                                       {-3.5ex \@plus-1ex \@minus-.2ex}%
                                       {1ex \@plus.2ex}%
                                       {\normalfont\fontsize{16}{19.2}\selectfont\bfseries}}
\makeatother

答案1

一个简单的解决方案如下:

\newcommand{\mysection}[1]{\vspace*{20pt}\section{#1}}

并在文档内部使用\mysection而不是。\section

相关内容