目录中的间距问题

目录中的间距问题

我是新来的,所以我希望我遵守所有社区规则。

我正在尝试为我想在 LaTex 上记录的一些笔记创建目录。这是我的代码:


    \documentclass[12pt]{article}

\usepackage[margin=0.90in]{geometry} 
\usepackage{amsmath,amsthm,amssymb,scrextend}
\usepackage{fancyhdr}
\usepackage{titlesec}

\makeatletter
\renewcommand\subsection{\addtocontents{toc}{\protect\addvspace{5\p@}}%
  \if@openright\cleardoublepage\else\clearpage\fi
  \thispagestyle{plain}%
  \global\@topnum\z@
  \@afterindentfalse
  \secdef\@subsection\@ssubsection}
\renewcommand\section{\addtocontents{toc}{\protect\addvspace{20\p@}}%
  \@startsection {section}{1}{\z@}%
  {-3.5ex \@plus -1ex \@minus -.2ex}%
  {2.3ex \@plus.2ex}%
  {\normalfont\Large\bfseries}}
\makeatother


    \begin{document}

% --------------------------------------------------------------
%                         Start here
% --------------------------------------------------------------

\lhead{Physics in Medicine}
\chead{}
\rhead{Revision Notes}

\lfoot{} 
\cfoot{Page \thepage \hspace{1pt} of 16}
\rfoot{}

% \maketitle
\title{\textbf{\textit{Physics in Medicine -- Revision Notes}}}
\date{}

\begin{titlepage}
\vspace{100 mm}
\maketitle
\doublespacing
\tableofcontents
\end{titlepage}
\vfill 

\newpage 

\singlespacing
\addcontentsline{toc}{section}{Section 1: X-ray imaging}
\addcontentsline{toc}{subsection}{What are x-rays?}
\section*{Section 1: X-ray imaging}
\vspace{2mm} 
\newline \noindent \textbf{What are x-rays?}

\vspace{3mm} 

\noindent TEXT

\vspace{10mm}
\addcontentsline{toc}{subsection}{Production of x-rays}

\newline \noindent \textbf{Production of x-rays}
\vspace{8mm}
TEXT

\end{document}

但结果如图所示 - 内容行之间的空白太大了。不知道如何解决这个问题,所以请提供建议 :)

在此处输入图片描述

答案1

额外的空间是由\section和的重新定义引起的\subsection。此代码包含行\addtocontents{toc}{\protect\addvspace{20\p@}}(和),每次使用和命令5\p@时,它们分别向目录添加 20pt 和 5pt 的垂直空间。\sectionsubsection

要删除多余的空间,您可以删除重新定义的这一部分(请参阅下面的 MWE)。您也可以删除整个重新定义,因为没有必要,除非您需要对(子)节标题行为进行额外的修改。

\doublespacing(从包中)引入了一些额外的空间setspace,可以将其删除以使目录更紧凑。

梅威瑟:

\documentclass[12pt]{article}
\usepackage{setspace}

\makeatletter
%\renewcommand\subsection{\addtocontents{toc}{\protect\addvspace{5\p@}}%
\renewcommand\subsection{%
  \if@openright\cleardoublepage\else\clearpage\fi
  \thispagestyle{plain}%
  \global\@topnum\z@
  \@afterindentfalse
  \secdef\@subsection\@ssubsection}
%\renewcommand\section{\addtocontents{toc}{\protect\addvspace{20\p@}}%
\renewcommand\section{%
  \@startsection {section}{1}{\z@}%
  {-3.5ex \@plus -1ex \@minus -.2ex}%
  {2.3ex \@plus.2ex}%
  {\normalfont\Large\bfseries}}
\makeatother

\begin{document}
\title{\textbf{\textit{Physics in Medicine -- Revision Notes}}}
\date{}

\begin{titlepage}
\maketitle
\doublespacing
\tableofcontents
\end{titlepage}

\addcontentsline{toc}{section}{Section 1: X-ray imaging}
\addcontentsline{toc}{subsection}{What are x-rays?}
\section*{Section 1: X-ray imaging}

\addcontentsline{toc}{subsection}{Production of x-rays}

\end{document}

结果:

在此处输入图片描述

相关内容