自訂表格列表以包含“table”一詞

自訂表格列表以包含“table”一詞

我正在自訂報告類文件中的表格列表和圖形列表。我正在嘗試產生這樣開始的清單:「表 1:一些資訊」等等,而不是預設以節號開頭的清單(「1.2 一些資訊」)。我無法做兩件事:1.在表格/圖後面加上“:”,2.抑制不同章節的表格/圖之間的額外垂直空間,即我希望列表中的項目之間的距離相等他們屬於哪一章。

以下是僅用於表格清單的程式碼:

\documentclass{report}
\usepackage{chngcntr}  
\usepackage{tocloft}
\usepackage{hyperref}

\renewcommand{\cfttabpresnum}{Table }
\newlength{\mylen}
\settowidth{\mylen}{\cfttabpresnum\cfttabaftersnum}
\addtolength{\cfttabnumwidth}{\mylen}

\begin{document}
\listoftables

\chapter{Test one}
\section{Test one one}

\begin{table}
\caption{Test table one}
\end{table}

\begin{table}
\caption{Test table one}
\end{table}

\begin{table}
\caption{Test table one}
\end{table}

\begin{table}
\caption{Test table one}
\end{table}

\begin{figure}
  \caption{Test figure one}
\end{figure}

\chapter{Test two}
\section{Test two two}

\begin{table}
\caption{Test table two}
\end{table}

\begin{figure}
\caption{Test figure two}
\end{figure}

\end{document}

答案1

對於任何tableofcontents類似命令(ToCLoTLoF)的自定義,我喜歡titletoc包,因為它提供了與該包相同的友好用戶介面titlesec

下面程式碼中的重要部分是

\titlecontents{table}
[0pt]                                               % left margin
{\addvspace{.5cm}\itshape}%                         % above code (e.g vertical space)
{\contentsmargin{0pt} \bfseries                     % numbered entry format
    TABLE~\thecontentslabel:\enspace%
    \large}
{\contentsmargin{0pt}\large}                        % unnumbered entry format
{\titlerule*[.5pc]{.}\contentspage}                 % filler-page format (e.g dots)
[\addvspace{.5pc}]                                  % below code (e.g vertical space)

我使用的間距命令比您要求的要多,但您可以調整它們以適合您的口味。特別是,您可以更改\enspace\hspace{}您喜歡的任何命令。

% arara: pdflatex
% !arara: indent: {overwrite: true}

\documentclass{report}
\usepackage{titletoc}
\usepackage{hyperref}

\titlecontents{table}
[0pt]                                               % left margin
{\addvspace{.5cm}\itshape}%                         % above code (e.g vertical space)
{\contentsmargin{0pt} \bfseries                     % numbered entry format
    TABLE~\thecontentslabel:\enspace%
    \large}
{\contentsmargin{0pt}\large}                        % unnumbered entry format
{\titlerule*[.5pc]{.}\contentspage}                 % filler-page format (e.g dots)
[\addvspace{.5pc}]                                  % below code (e.g vertical space)


\begin{document}

\listoftables
\chapter{Test one}
\section{Test one one}

\begin{table}
    \caption{Test table one}
\end{table}

\begin{table}
    \caption{Test table one}
\end{table}

\begin{table}
    \caption{Test table one}
\end{table}

\begin{table}
    \caption{Test table one}
\end{table}

\begin{figure}
    \caption{Test figure one}
\end{figure}

\chapter{Test two}
\section{Test two two}

\begin{table}
    \caption{Test table two}
\end{table}

\begin{figure}
    \caption{Test figure two}
\end{figure}

\end{document}

相關內容