目录中段落级分节标题后的换行问题

目录中段落级分节标题后的换行问题

如何解决段落页码显示在相关章节标题下方的问题?

\documentclass[12pt]{report}
\usepackage{tocloft}
\renewcommand{\cftsecaftersnum}{.} 
\begin{document}
\subsubsection{Le néphron}
\paragraph{Le corpuscule rénal \\}
\end{document}

答案1

问题是由换行符指令 ( \\)引起的

\paragraph{Le corpuscule rénal \\}

考虑删除它。如果你必须在段落级分节标题后换行,我建议你写

\paragraph[Le corpuscule rénal]{Le corpuscule rénal\\}

这样,换行符就不会出现在目录中。


完整的 MWE:

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[french]{babel}
\setcounter{secnumdepth}{4}
\setcounter{tocdepth}{4}
\renewcommand{\thesection}{\Roman{section}}

\begin{document}
\tableofcontents

\setcounter{page}{14} % just for this example

\section{\dots}
\setcounter{subsection}{2}
\subsection{Structure du parenchyme rénal}
\subsubsection{Le néphron}
\paragraph[Le corpuscule rénal]{Le corpuscule rénal\\}
bla bla bla
\end{document} 

附录: 正如 @cfr 和 @DavidCarlisle 在评论中指出的那样,解决 OP 问题的另一种方法是修改宏\paragraph,以便在所有 -level 节标题的末尾自动插入换行符paragraph。如果文档包含的说明不止几条,那么这种解决方案肯定是更好的选择\paragraph

为了实现这个解决方案,只需在序言中插入以下代码 - 并删除\\指令参数末尾的指令\paragraph

\usepackage{etoolbox}
\makeatletter
\patchcmd\paragraph{3.25ex \@plus1ex \@minus.2ex}{-3.25ex \@plus -1ex \@minus -.2ex}{}{}
\makeatother
\patchcmd\paragraph{-1em}{1em}{}{}

相关内容