答案1
使用tocloft
。摘自其手册:
一个样品:
\documentclass{article}
\usepackage{tocloft}
\usepackage{blindtext}
\cftpagenumbersoff{section}
\cftpagenumbersoff{subsection}
\cftpagenumbersoff{subsubsection}
\begin{document}
\tableofcontents
\Blinddocument
\end{document}
现在想知道如何仅发布目录,但这可能是另一个问题。
假设您的 .tex 文件的名称为 myfile.tex,其内容如下:
\documentclass{article}
\usepackage{blindtext} % for demo only
\begin{document}
\tableofcontents
\Blinddocument
\end{document}
编译此文件 2-3 次。这将生成一个名为 的辅助文件myfile.toc
。
现在准备另一个 .tex 文件名mytoc.toc
,例如,包含以下内容:
\documentclass{article}
\begin{document}
\input{myfile.toc}
\end{document}
编译它以仅获取 myfile.tex 的目录。
答案2
ToC
(和LoF
等LoT
)的条目是用 完成的\addcontentsline
,更准确地说:
\def\addcontentsline#1#2#3{%
\addtocontents{#1}{\protect\contentsline{#2}{#3}{\thepage}}}
如果\thepage
被从通话中移除\contentsline
,全部页码将被删除。
如果应删除特定结构级别的页码,请使用tocloft
及其\cftpagenumbersoff{section}
命令等。(正如 Harish Kumar 在他的回答中所展示的那样)
\documentclass{book}
\usepackage{xpatch}
\xpatchcmd{\addcontentsline}{\thepage}{}{}{}
\usepackage{blindtext}
\begin{document}
\tableofcontents
\blinddocument
\end{document}