`titletoc` を使用して ToC の \part エントリをフォーマットする際の問題

`titletoc` を使用して ToC の \part エントリをフォーマットする際の問題

使い方を理解しようとしておりtitletoc、ToC の章エントリの外観をカスタマイズすることに成功しましたが、\part で失敗しています。何が間違っているのか理解できません。

コードは次のとおりです:

\documentclass{book}

\usepackage{xcolor}
\usepackage{titletoc}

\titlecontents{chapter}[0pt]{\vspace{1em}}{%
  {%
    \rlap{\large\bfseries\color{blue}\thecontentslabel}%
    \hspace*{1.5em}%
  }%
  \large\sffamily\uppercase
}{}{}

\titlecontents{part}[0pt]{\vspace{1em}}{%
  {%
    \rlap{\large\bfseries\color{blue}\thecontentslabel}%
    \hspace*{1.5em}%
  }%
  \large\sffamily\uppercase
}{}{}

\begin{document}

\tableofcontents

\part{First Part}
\chapter{First Chapter}

\end{document}

出力は次のようになります。

出力

ご覧のとおり、章のエントリは希望どおりに見えます (\sffamily\uppercase テキストと色付きの数字)。ただし、\part は機能しません。

\part でも同様のフォーマットを取得するにはどうすればよいですか?

答え1

titlesecドキュメントの § 3.7「その他のパッケージ オプション」に記載されているように、最初にパーツのフォーマットを再定義する必要があります。

標準パーツは、非標準的な方法で toc エントリ番号を書き込みます。newparttoc を使用してこれを変更し、titletoc または同様のパッケージがエントリを操作できるようにすることができます。(これは、\part が再定義されている場合にのみ機能します。)

したがって、\titleformat{\part}...のデフォルトの書式設定を再現するためにを使用しましたbook(もちろん、これを変更することもできます)。

\documentclass{book}

\usepackage{xcolor}
\usepackage[newparttoc]{titlesec}
\usepackage{titletoc}

\titleformat{\part}[display]{\centering\bfseries\Huge}{\huge\partname~\thepart}{2ex}{}

\titlecontents{chapter}[0pt]{\vspace{1em}}{%
  {%
    \rlap{\large\bfseries\color{blue}\thecontentslabel}%
    \hspace*{1.5em}%
  }%
  \large\sffamily\uppercase
}{}{}

\titlecontents{part}[0pt]{\vspace{1em}}{%
  {%
    \rlap{\large\bfseries\color{blue}\thecontentslabel}%
    \hspace*{1.5em}%
  }%
  \large\sffamily\uppercase
}{}{}

\begin{document}

\tableofcontents
\part{First Part}
\chapter{First Chapter}

\end{document} 

ここに画像の説明を入力してください

関連情報