将“Part”字符串添加到目录中的“\part”列表

将“Part”字符串添加到目录中的“\part”列表

接下来是我之前的问题这里,现在我想将字符串“Part”添加到目录中。

使用经过修改的论文样式,并\documentclass{report}规定目录的显示方式。我尝试过其他问题中提出的其他解决方案,但这些似乎不起作用。

我目前正在使用:

\usepackage{fmtcount} \renewcommand{\thepart}{\Numberstring{part}}

将编号更改\part为数字字符串“One”“Two”等。我希望字符串“Part”出现在目录中。而不是:

这里有一些标题

有没有办法让目录列表如下:

第一部分 这里有一些标题

??

答案1

假设“修改后的论文风格”与你之前的问题因此不会改变“ ”的定义part,并且您的文档使用的是\@part来自的原始定义report.sty

\def\@part[#1]#2{\ifnum \c@secnumdepth >-2\relax
        \refstepcounter{part}%

        \addcontentsline{toc}{part}{\thepart
        \hspace{1em}#1}\else

        \addcontentsline{toc}{part}{#1}\fi
   \markboth{}{}%
   {\centering
    \interlinepenalty \@M
    \ifnum \c@secnumdepth >-2\relax
      \huge\bf \partname~\thepart
    \par
    \vskip 20\p@\fi
    \Huge \bf
    #2\par}\@endpart}

然后包括

\makeatletter
\def\@part[#1]#2{\ifnum \c@secnumdepth >-2\relax
        \refstepcounter{part}%

        \addcontentsline{toc}{part}{Part \thepart
        \hspace{1em}#1}\else

        \addcontentsline{toc}{part}{#1}\fi
   \markboth{}{}%
   {\centering
    \interlinepenalty \@M
    \ifnum \c@secnumdepth >-2\relax
      \huge\bf \partname~\thepart
    \par
    \vskip 20\p@\fi
    \Huge \bf
    #2\par}\@endpart}
\makeatother

在您的文档中就可以了。

我举了一个例子来说明这是如何工作的写LaTeX(第 284-299 行)

输出

答案2

您也可以使用 来做到这一点titlesec/titletoc

具体来说,对于 的情况\part,它需要使用 重新定义其格式并在加载时\titleformat选择选项。newparttoctitlesec

以下是一个例子:

\documentclass{book}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}

\usepackage[english]{babel}
\usepackage[newparttoc,explicit, clearempty]{titlesec}%
\usepackage{titletoc}
\usepackage{chngcntr}
\usepackage{fmtcount}
\counterwithin*{chapter}{part}
\usepackage{etoolbox} 

\def\partname{Part}

\renewcommand\thepart{\NUMBERstring{part}}%
\titleformat{\part}[display]{\bfseries\filcenter}{\huge\partname~\thepart}{20pt}{\Huge #1}[\thispagestyle{empty}]%

\titlecontents{part}[0em]{\large\bfseries\protect\addvspace{25pt}\titlerule\addvspace{1.5ex}}%
{\contentslabel[\rlap{\partname~\thecontentslabel}]{0em}\hphantom{\partname~\thecontentslabel\quad}}{}%
{,\quad\contentspage}[\addvspace{1ex}\titlerule\addvspace{1ex}]%

\begin{document}

\tableofcontents

\part{A First Part}
\chapter{Chapter the First}
\section{Section 1.1}
\section{Section 1.2}

\chapter{Chapter the Second}
\section{Section 2.1}
\section{Section 2.2}

\part{Another Part} \label{part-2}

\chapter{Chapter the First}
\section{Section 1.1}
\section{Section 1.2}

\chapter{Chapter the Second}
\section{Section 2.1}
\section{Section 2.2}

\end{document} 

在此处输入图片描述

相关内容