如何删除目录中图表列表和表格列表的点和页码

如何删除目录中图表列表和表格列表的点和页码

嘿呀!

我需要将前几页添加到目录中,但不包含页码。我该如何实现?\listoffigures 和 \listoftables 会在目录中生成虚线和页码,我想删除它们。我搜索了很多问题,但总是找到删除目录中页码的答案,我已经这样做了。

我的目录应该是这样的:

ABSTRACT
LIST OF FIGURES
LIST OF TABLES
CONTENTS
CHAPTER 1...................................6
CHAPTER 2...................................7

最小工作示例:

% docmentclass
\documentclass[12pt]{article}

% table of contents package 
\usepackage{tocloft}        

% package to enable commands after pages
\usepackage{afterpage}      

% dots to TOC
\AtBeginDocument{                                               
    \renewcommand{\cftsecleader}{\cftdotfill{\cftsecdotsep}}    
    \renewcommand\cftsecdotsep{\cftdot}                         
    \renewcommand\cftsubsecdotsep{\cftdot}                      
    \renewcommand{\cftfigleader}{\cftdotfill{\cftsecdotsep}}
    \renewcommand{\cfttableader}{\cftdotfill{\cftsecdotsep}}
    }

%remove incremental number from TOC
\let\oldsection\section 
\newcommand{
    \abstractsection}[1]{ 
      \newpage
      \oldsection*{#1}
      \addcontentsline{toc}{section}{#1}
    }

%for captions to show up in lof and lot
\usepackage{caption}

\begin{document}

%frontcover
\begin{center}
    \vspace*{5cm}
    \normalsize{Tuomas-Matti Soikkeli} \\
    \large{Front Cover}
    \vfill{}
\end{center} 

%abstract
\abstractsection{ABSTRACT}
Some abstract content
\newpage

%list of figures and list of tables
\listoffigures
\addcontentsline{toc}{section}{LIST OF FIGURES}
\listoftables
\addcontentsline{toc}{section}{LIST OF TABLES}
\newpage

%ToC
\tableofcontents 
\addcontentsline{toc}{section}{CONTENTS}
\newpage

%contents
\section{FIRST CHAPTER}
\begin{figure}[H]
  figure
  \caption[EXAMPLE FIGURE]{example figure}
\end{figure}

\section{SECOND CHAPTER}
\begin{table}[h]
table
\caption[EXAMPLE TABLE]{example table}
\end{table}

\end{document}

最终结果是:

目录.png

答案1

您应该使用tocloft。不要使用\addcontentsline{<file>}{<type>}{<title>},而要使用\cftaddtitleline{<file>}{<type>}{<title>}{<page>}。使用后者允许您使用空<page>参数:

在此处输入图片描述

\documentclass{article}

% Table of Contents package 
\usepackage{tocloft}        

% dots to TOC
\AtBeginDocument{                                               
  \renewcommand{\cftsecleader}{\cftdotfill{\cftsecdotsep}}    
  \renewcommand\cftsecdotsep{\cftdot}                         
  \renewcommand\cftsubsecdotsep{\cftdot}                      
  \renewcommand{\cftfigleader}{\cftdotfill{\cftsecdotsep}}
  \renewcommand{\cfttableader}{\cftdotfill{\cftsecdotsep}}
}

%remove incremental number from TOC
\newcommand{\abstractsection}[1]{%
  \clearpage
  \section*{#1}
  \cftaddtitleline{toc}{section}{#1}{}%
}

\begin{document}

\addtocontents{toc}{\protect\renewcommand{\protect\cftsecleader}{\hfill}}

%abstract
\abstractsection{ABSTRACT}

Some abstract content

\clearpage

% List of Figures and List of Tables
\listoffigures
\cftaddtitleline{toc}{section}{LIST OF FIGURES}{}%
\listoftables
\cftaddtitleline{toc}{section}{LIST OF TABLES}{}%

\clearpage

% Table of Contents
\tableofcontents 
\cftaddtitleline{toc}{section}{CONTENTS}{}%

\clearpage

\addtocontents{toc}{\protect\renewcommand{\protect\cftsecleader}{\protect\cftdotfill{\protect\cftsecdotsep}}}

%contents
\section{FIRST CHAPTER}
\begin{figure}[ht]
  figure
  \caption[EXAMPLE FIGURE]{example figure}
\end{figure}

\section{SECOND CHAPTER}
\begin{table}[ht]
  table
  \caption[EXAMPLE TABLE]{example table}
\end{table}

\end{document}

此外,您必须(非常有策略性地)将条目插入 ToC 文件中以删除领导者。我已经这样做了,并在上面注释了这些位置。该.toc文件现在应该类似于:

\renewcommand {\cftsecleader }{\hfill }
\contentsline {section}{ABSTRACT}{}
\contentsline {section}{LIST OF FIGURES}{}
\contentsline {section}{LIST OF TABLES}{}
\contentsline {section}{CONTENTS}{}
\renewcommand {\cftsecleader }{\cftdotfill {\cftsecdotsep }}
\contentsline {section}{\numberline {1}FIRST CHAPTER}{5}
\contentsline {section}{\numberline {2}SECOND CHAPTER}{5}

这种调整目录相关内容的方式是必要的,因为在设置文档的其余部分之前,目录是作为一个整体处理的。您必须在文档中插入与目录中的顺序相对应的调整。

相关内容