答案1
该类的memoir
使用\addcontentsline{toc}{part}{\partnumberline{\thepart}...}
——重新定义\thepart
将改变整个文档中各部分的编号。
\thepart
如果在中只使用了的方式ToC
,则\thepart
必须在包含的组内重新定义\addcontentsline
,就像在补丁中所做的那样!
hyperref
补丁完成后必须加载!
\documentclass{memoir}
\usepackage{xpatch}
\makeatletter
\xpatchcmd{\@part}{%
\addcontentsline{toc}{part}{\protect\partnumberline{\thepart}\f@rtoc}%
}{%
\begingroup
\let\@Roman\@arabic%
\addcontentsline{toc}{part}{\protect\partnumberline{\thepart}\f@rtoc}%
\endgroup
}{}{}
\makeatother
\usepackage{hyperref}
\begin{document}
\tableofcontents*
\part{First part}
\chapter{First chapter}
\chapter{Second chapter}
\part{Second part}
\chapter{First chapter}
\chapter{Second chapter}
\end{document}