如何使零件名称在目录中居中?
我想要打印目录:
Partie I - First part
第 1 章
第 2 章
相反,我有:
第一部分-第一部分
第 1 章
第 2 章
这是一个最小的代码:
\documentclass[12pt,a4paper]{book}
% Part name in TOC
\usepackage{tocloft}
\usepackage{xpatch}
\renewcommand\cftpartpresnum{\centering}
\renewcommand\cftpartleader{}
\addtocontents{toc}{\cftpagenumbersoff{part}}
\renewcommand{\thepart}{ Partie \Roman{part} --\hspace{-.4cm}}
\renewcommand\cftchappresnum{Chapitre\ }
\renewcommand\cftchapaftersnum{\hfill--\hfill}
\renewcommand\cftchapnumwidth{3.2cm}
\renewcommand\cftdotsep{2}
%\renewcommand{\cftpartleader}{\cftdotfill{\cftdotsep}} %Si on veut mettre des pointillés
%\renewcommand{\cftchapleader}{\cftdotfill{\cftdotsep}}
\newcommand\Bpart[1]{\part{\texorpdfstring{}{}#1}}
\newcommand\Bchapter[1]{\chapter{\texorpdfstring{}{Chapitre \arabic{chapter} -- }#1}}
\begin{document}
\tableofcontents
\part{First part}
\chapter{First chapter}
\chapter{Second chapter}
\end{document}
事实上,我完全不知道如何将零件名称居中,所以我尝试了各种方法,centering
但没有成功。
我该如何修复它?
谢谢。
答案1
你可以这样做
\renewcommand\cftpartpresnum{\hfil}
\renewcommand\cftpartleader{\hfil}
完整代码
\documentclass[12pt,a4paper]{book}
% Part name in TOC
\usepackage{tocloft}
\usepackage{xpatch}
\renewcommand\cftpartpresnum{\hfil}
\renewcommand\cftpartleader{\hfil}
\addtocontents{toc}{\cftpagenumbersoff{part}}
\renewcommand{\thepart}{ Partie \Roman{part} --\hspace{-.4cm}}
\renewcommand\cftchappresnum{Chapitre\ }
\renewcommand\cftchapaftersnum{\hfill--\hfill}
\renewcommand\cftchapnumwidth{3.2cm}
\renewcommand\cftdotsep{2}
%\renewcommand{\cftpartleader}{\cftdotfill{\cftdotsep}} %Si on veut mettre des pointillés
%\renewcommand{\cftchapleader}{\cftdotfill{\cftdotsep}}
\newcommand\Bpart[1]{\part{\texorpdfstring{}{}#1}}
\newcommand\Bchapter[1]{\chapter{\texorpdfstring{}{Chapitre \arabic{chapter} -- }#1}}
\begin{document}
\tableofcontents
\part{First part}
\chapter{First chapter}
\chapter{Second chapter}
\end{document}