将页码列表对齐,在 ToC、LoT、LoF 页面上,居中对齐,位于“Page”一词下方的右侧

将页码列表对齐,在 ToC、LoT、LoF 页面上,居中对齐,位于“Page”一词下方的右侧

我想将页码列表对齐,位于右侧中央,位于 ToC、LoT 和 LoF 上类别的“Page”字样下方memoir

以下是MWE。

\documentclass{memoir}
\usepackage{blindtext}

\addtocontents{toc}{\noindent\hfill\textbf{Page}\par}
\addtocontents{lot}{\noindent\bfseries Tables\hspace{7mm}Title~\hfill~Page\par}
\addtocontents{lof}{\noindent\bfseries Figures\hspace{7mm}Title~\hfill~Page\par}

\begin{document}

\tableofcontents
\listoftables
\listoffigures

\Blinddocument
\begin{table}[]\caption{My Table}\end{table}

\begin{figure}\caption{My Figure}\end{figure}

\end{document}

在此处输入图片描述

答案1

下面我更新了\cft<unit>formatpnum每个组件,将页码的宽度设置为

在此处输入图片描述

\documentclass{memoir}
\usepackage{blindtext}

\addtocontents{toc}{\noindent\hfill\textbf{Page}\par}
\addtocontents{lot}{\noindent\bfseries Tables\hspace{7mm}Title~\hfill~Page\par}
\addtocontents{lof}{\noindent\bfseries Figures\hspace{7mm}Title~\hfill~Page\par}

\newlength{\pnumwidthlen}
\settowidth{\pnumwidthlen}{\textbf{Page}}
\setpnumwidth{\the\pnumwidthlen}
\renewcommand{\cftchapterformatpnum}[1]{\makebox[\pnumwidthlen]{\bfseries#1}}
\renewcommand{\cftsectionformatpnum}[1]{\makebox[\pnumwidthlen]{\mdseries #1}}
\renewcommand{\cftsubsectionformatpnum}[1]{\makebox[\pnumwidthlen]{\mdseries #1}}
\renewcommand{\cftfigureformatpnum}[1]{\makebox[\pnumwidthlen]{\mdseries #1}}
\renewcommand{\cfttableformatpnum}[1]{\makebox[\pnumwidthlen]{\mdseries #1}}

\begin{document}

\tableofcontents
\listoftables
\listoffigures

\Blinddocument
\begin{table}\caption{My Table}\end{table}

\begin{figure}\caption{My Figure}\end{figure}

\end{document}

相关内容