修改两行内容条目的目录页码位置

修改两行内容条目的目录页码位置

我正在编写一本书(使用课程book),其中每一章都是由不同的作者撰写的。因此每一章都会有文本行,目录中的每个条目也是如此。默认情况下,LaTeX 将页码置于右对齐位置,并位于第二目录中条目 (在我的情况下是作者) 的行。

我希望它位于条目右侧(不右对齐)并位于第一行(即紧挨着章节标题)。像这样:

**Contents**

Chapter 1 title blah blah   5
Author 1

Chapter 2 title blah   11
Author 2

etc...

以下是 MWE:

\documentclass[twoside,10pt]{book}
\usepackage[hidelinks]{hyperref}

\usepackage{pdfpages}

\begin{document}

\cleardoublepage
\phantomsection %
\pdfbookmark[0]{\contentsname}{toc} % Adds a PDF bookmark for the TOC.

{\pagestyle{plain}
\tableofcontents
\cleardoublepage}

\chapter[Chapter 1 title Blah Blah \\{\normalfont Author 1}]{Chapter 1 title Blah Blah \\ {\normalfont Author 1}} 

Chapter 1 text.

....

\chapter[Chapter 2 title Blah \\ {\normalfont Author 2}]{Chapter 2 title Blah \\ {\normalfont Author 2}} 

Chapter 2 text ..
....

\end{document}

先谢谢您的帮助。

答案1

我建议使用不同的输入。定义一些类似的东西,\chapterauthor{<title>}{<author>}分别指定章节标题和作者。然后,你就可以在 TeX 工作流中管理这些组件了。这就是我下面所做的:

在此处输入图片描述

\documentclass{book}

\usepackage{lipsum}
\usepackage[hidelinks]{hyperref}

% \chapterauthor{<title>}{<author>}
\newcommand{\chapterauthor}[2]{%
  \chapter[#1]{#1 \\ \normalfont #2}% \chapter{<title>}
  \addtocontents{toc}{% Add author entry to ToC
    \nobreak\par{\normalfont #2\par}\nobreak}%
}

\begin{document}

\sloppy % For this example

\tableofcontents

\chapterauthor{First chapter}{Author 1}\lipsum[1-5]
\section{A section}\lipsum[1-5]

\chapterauthor{Second chapter}{Author 2}\lipsum[1-5]
\section{Another section}\lipsum[1-5]

\end{document}

作者也印在章节标题中:

在此处输入图片描述

相关内容