scrbook:目录中的罗马页码比文本宽度宽吗?

scrbook:目录中的罗马页码比文本宽度宽吗?

考虑以下最小工作示例(MWE)

\documentclass{scrbook}

\begin{document}

\pagenumbering{Roman}%
\tableofcontents

\chapter{Roman Chapter}
\chapter{Roman Chapter}
\chapter{Roman Chapter}
\chapter{Roman Chapter}
\chapter{Roman Chapter}
\chapter{Roman Chapter}
\chapter{Roman Chapter}
\chapter{Roman Chapter}
\chapter{Roman Chapter}
\chapter{Roman Chapter}
\chapter{Roman Chapter}
\chapter{Roman Chapter}

\pagenumbering{arabic}%

\chapter{Arabic Chapter}
\chapter{Arabic Chapter}
\chapter{Arabic Chapter}

\end{document}

结果截图:

结果截图


问题说明:

如您所见,字母比看起来丑陋的Roman字母要宽。我怎样才能将它们排成一行?\textwidthright alignRoman numbers


更新:在玩的时候\documentclass{book},突然TOC出现了预期的情况。现在我很好奇——问题可能出在哪里scrbook

答案1

默认情况下,页码在框内右对齐\@pnumwidth(默认为 1.55em)。此框对于罗马数字来说太小了。

假设只有带有罗马页码的章节:

\RedeclareSectionCommand[
  tocpagenumberbox=\mbox
]{chapter}

或者

\RedeclareSectionCommand[
  tocpagenumberbox={\makebox[3em][r]}% adjust the width to your needs
]{chapter}

例子:

\documentclass{scrbook}

\RedeclareSectionCommand[
  tocpagenumberbox=\mbox
]{chapter}

\begin{document}
\pagenumbering{Roman}
\tableofcontents
\chapter{Roman Chapter}
\chapter{Roman Chapter}
\chapter{Roman Chapter}
\chapter{Roman Chapter}
\chapter{Roman Chapter}
\chapter{Roman Chapter}
\chapter{Roman Chapter}
\chapter{Roman Chapter}
\chapter{Roman Chapter}
\chapter{Roman Chapter}
\chapter{Roman Chapter}
%\section{Roman Section}
\chapter{Roman Chapter}

\cleardoubleoddpage
\pagenumbering{arabic}%
\chapter{Arabic Chapter}
\chapter{Arabic Chapter}
\chapter{Arabic Chapter}
\end{document}

结果:

在此处输入图片描述

如果还有一些章节等使用罗马页码,那么您可以更改\@pnumwidth(也适用于标准类别):

\makeatletter
  \renewcommand\@pnumwidth{3em}
\makeatother

或者你可以使用\RedeclareSectionCommands

\RedeclareSectionCommands[
  tocpagenumberbox={\makebox[3em][r]}% adjust the width to your needs
]{chapter,section,subsection}

pagenumberwidth下一个 KOMA-Script 版本 3.27 将提供目录条目样式的选项tocline。带前缀toc( ) 的此选项可在或topagenumberwidth中使用。\RedeclareSectionCommand\RedeclareSectionCommands

\RedeclareSectionCommands[
  tocpagenumberwidth=3em% needs at least version 3.27.3161
]{chapter,section,subsection}

如果你想测试这个新选项,你可以安装从 KOMA-Script 网站预发布

相关内容