![如何改善我的 TOC 的中心对齐?](https://linux22.com/image/472527/%E5%A6%82%E4%BD%95%E6%94%B9%E5%96%84%E6%88%91%E7%9A%84%20TOC%20%E7%9A%84%E4%B8%AD%E5%BF%83%E5%AF%B9%E9%BD%90%EF%BC%9F.png)
我正在努力将我的部分和小节居中,以便与我的章节对齐。这些章节看起来好像在中心左侧(或者其他所有内容都在中心右侧?)。
\documentclass{memoir}
\let\ordinal\relax
% TOC title
\makeatletter
\renewcommand{\printtoctitle}[1]{\centering\HUGE\textit{Contents}}
% TOC
\usepackage{fmtcount}
\setcounter{tocdepth}{2}
% Chapter
\renewcommand{\thechapter}{\Numberstring{chapter}}
\renewcommand{\cftchapterleader}{}
\renewcommand{\cftchapterfillnum}[1]{\hspace*{10pt}\huge#1\cftparfillskip\par}
\renewcommand*{\cftchapterfont}{}
\renewcommand\chapternumberline[1]{\hfil\Large\emph{#1}\hfil\strut\huge\par\nopagebreak\hfil}
% Section
\renewcommand{\cftsectionleader}{}
\renewcommand{\thesection}{}
\renewcommand{\cftsectionfillnum}[1]{\itshape\hspace*{10pt}\large#1\cftparfillskip\par}
\renewcommand*{\cftsectionfont}{\itshape\large\hfil}
% Subsection
\renewcommand{\cftsubsectionleader}{}
\renewcommand{\cftsubsectionfillnum}[1]{\hspace*{10pt}\normalsize#1\cftparfillskip\par}
\renewcommand*{\cftsubsectionfont}{\itshape\large\hfil}
% Spacing
\setlength{\cftbeforechapterskip}{0pt}
% Document
\begin{document}
\tableofcontents*
\chapter{Chapter One}
\chapter{Chapter Two}
\chapter{Chapter Three}
\chapter{Chapter Four}
\section{Section One}
\subsection{Subsection One}
\section{Section Two}
\subsection{Subsection Two}
\subsection{Subsection Three}
\chapter{Chapter Five}
\end{document}
答案1
有几件事在起作用。
您需要设置,
\setlength\cftchapternumwidth{0pt}
因为它正在为此腾出空间,而您没有使用它使用
\renewcommand{\cftchapterfillnum}[1]{\hspace*{10pt}\huge#1\hfil\strut\par}
我们需要修补一群支撑
\makeatletter \patchcmd{\l@chapapp}{{\cftchapterfont {#1}}\nobreak}{\cftchapterfont {#1}\nobreak}{\typeout{ok}}{\typeout{bad}} \makeatother
否则,
\chapternumberline
技巧和标题的链接方式将不允许文本正确居中。