![如何从文章文档的目录中删除某个部分(及其子部分)的页码?](https://linux22.com/image/442249/%E5%A6%82%E4%BD%95%E4%BB%8E%E6%96%87%E7%AB%A0%E6%96%87%E6%A1%A3%E7%9A%84%E7%9B%AE%E5%BD%95%E4%B8%AD%E5%88%A0%E9%99%A4%E6%9F%90%E4%B8%AA%E9%83%A8%E5%88%86%EF%BC%88%E5%8F%8A%E5%85%B6%E5%AD%90%E9%83%A8%E5%88%86%EF%BC%89%E7%9A%84%E9%A1%B5%E7%A0%81%EF%BC%9F.png)
我想从文章文档的目录中删除最后一节及其子节的页码。我对此主题进行了多次问答,最终破坏了我的文档。幸运的是,我早上保存了论文的先前版本。目前我有
Section ............ 1
subsection ....... 2
Section ............ 4
subsection ....... 6
Section ............ 8
subsection ....... 9
在我的目录中,我想要
Section ............ 1
subsection ....... 2
Section ............ 4
subsection ....... 6
Section
subsection
相反。感谢大家的帮助。
答案1
使用该tocloft
包来控制 ToC(以及 LoF 和 LoT)。
% sectocprob.tex SE 623057
\documentclass{article}
\usepackage{tocloft}
\begin{document}
\tableofcontents
\section{First section}
\subsection{A subsection}
\section{Second section}
\subsection{B subsection}
%% add into the ToC
\addtocontents{toc}{\cftpagenumbersoff{sec}} % no section page numbers
\addtocontents{toc}{\cftpagenumbersoff{subsec}} % no subsection page numbers
\section{Third section}
\subsection{C subsection}
\end{document}
答案2
由于您没有在目录中对章节或子章节进行编号,因此我假设您使用以下方式添加它们\addcontentline
因此,您需要为最后一节和小节做两件事
- 隐藏页码,并
- 删除点。
如果你正在使用book
类删除\renewcommand*\l@section{...
\documentclass{article}
% adds dots for section in class article
\makeatletter
\renewcommand*\l@section{\@dottedtocline{1}{0.5em}{2.3em}}
\makeatother
\begin{document}
\tableofcontents
\clearpage
\section*{First}
\addcontentsline{toc}{section}{First}
\subsection*{First subsec}
\addcontentsline{toc}{subsection}{First sub}
\section*{Second}
\addcontentsline{toc}{section}{Second}
\subsection*{Second subsec}
\addcontentsline{toc}{subsection}{Second sub}
% supress page numbers => https://tex.stackexchange.com/a/9294/161015
\renewcommand*{\addcontentsline}[3]{\addtocontents{#1}{\protect\contentsline{#2}{#3}{}}}
% supress the dots => https://tex.stackexchange.com/a/71329/161015
\makeatletter
\addtocontents{toc}{\def\string\@dotsep{100}}
\makeatother
\section*{Third}
\addcontentsline{toc}{section}{Third}
\subsection*{Second subsec}
\addcontentsline{toc}{subsection}{Third sub}
\subsection*{Third sub}
\end{document}
笔记
如果此解决方案对您不起作用,则可能是因为您正在使用另一个类和附加包来修改目录。如果是这种情况,请发布一个带有完整前言的最小可编译示例。(从 \documentclass
到\end{document}
)