未编号的居中部分:目录中的换行符

未编号的居中部分:目录中的换行符

我正在处理一份 XeLaTeX “书籍”文档,该文档分为两个未编号的部分。这两个部分需要根据“标题/副标题”方案进行命名,标题和副标题之间用换行符分隔(两者都很短)。

因此,我最终这样做是合乎逻辑的(我猜?):

\part*{Title of my part\\Its subtitle}

这就产生了我想要的东西。

然后,为了使我的部分出现在目录中,对于每个带星号的部分,我都添加了相应的 \addcontentsline:

\part*{Title of my part\\Its subtitle}
\addcontentsline{toc}{part}{Title of my part}

在我的目录中,我希望我的部分以某种方式显示,这种方式不涉及页码和居中对齐。这是我在序言中写的内容,使用 titletocs 的 \titlecontents 重新定义目录中标题的外观:

\usepackage{titletoc}
% Part aspect in ToC: vertical spacing before and after, centering, uppercase, no page number:
\titlecontents{part}
[0em]
{\addvspace{\baselineskip}\begin{center}}
{}
{\MakeUppercase}
{}
[\end{center}\addvspace{\baselineskip}]
% (Linebreaks after each argument for readibility)

这个东西完全按照我希望的方式工作,只是我没有找到正确的方法将换行符添加到 \addcontentsline 中而不会导致错误:

\part*{Title of my part\\Its subtitle}
\addcontentsline{toc}{part}{Title of my part\\Its subtitle} % Linebreak doesn't work!

我在这里找到了几种解决方案,可以使其适用于任何章节或部分,但我的部分似乎以不同的方式运行...根据控制台似乎所说的,我相信在目录中 \part 方面的重新定义中使用的居中涉及其中。

关于如何在其中包含有效的换行符,您有什么想法吗?

多谢!

编辑:下面是 MWE!

% Minimal Working Example

\documentclass[12pt, twoside, openright]{book}

\usepackage{titletoc}
% Part aspect in ToC: vertical spacing before and after, centering, uppercase, no page number:
\titlecontents{part}[0em]{\addvspace{\baselineskip}\begin{center}}{}{\MakeUppercase}{}[\end{center}\addvspace{\baselineskip}]

\begin{document}

\part*{Title of my part\\Its subtitle}
\addcontentsline{toc}{part}{Title of my part\\Its subtitle} % Linebreak doesn't work!

\tableofcontents

\end{document}

相关内容