我正在排版一本前言很长的书,但超过三个字符的罗马数字页码会被推到目录的右边距。我该如何解决这个问题?
\documentclass[12pt,ebook]{memoir}
\renewcommand{\cftchapterdotsep}{\cftdotsep}
\begin{document}
\frontmatter
\tableofcontents
\chapter{Preface}
\setcounter{page}{26}
\chapter{Introduction}
\mainmatter
\chapter{Chapter 1}
\setcounter{page}{26}
\chapter{Chapter 2}
\end{document}
答案1
您必须调整\@pnumwidth
和\@tocrmarg
适当的值以适应宽页码。memoir
这样做的方法是
\setpnumwidth{3em} %% default 1.55em
\setrmarg{4em} %% default 2.55em
代码:
\documentclass[12pt,ebook]{memoir}
\renewcommand{\cftchapterdotsep}{\cftdotsep}
\setpnumwidth{3em}
\setrmarg{4em}
\begin{document}
\frontmatter
\tableofcontents
\chapter{Preface}
\setcounter{page}{26}
\chapter{Introduction}
\mainmatter
\chapter{Chapter 1}
\setcounter{page}{26}
\chapter{Chapter 2}
\end{document}
仅供参考,以下是显示 TOC、LOF 等涉及的各种长度的屏幕截图