在使用 ArsClassica 包的目录中,我总是从第 10 章开始出现错误,即第二个数字与第一个数字不在同一级别。这看起来很糟糕。我已经发现造成这种情况的原因是 ClassicThesis 的集成 pdfspacing 选项。但是,如果我注释掉这个,我在编译 200 页的论文时会遇到很多错误。还有其他选择吗?请查看 MWE:
\documentclass{scrreprt}
\usepackage[pdfspacing]{classicthesis}
\usepackage{arsclassica}
\usepackage[english]{babel}
\begin{document}
\tableofcontents
\chapter{Test}
\chapter{Test}
\chapter{Test}
\chapter{Test}
\chapter{Test}
\chapter{Test}
\chapter{Test}
\chapter{Test}
\chapter{Test}
\chapter{Test}
\chapter{Test}
\chapter{Test}
\end{document}
答案1
虽然这个选项pdfspacing
已经被宣布过时,但与 arsclassica 结合使用时你应该保留它,因为如果没有它,arsclassica 将使用 soul 包,而这相当脆弱。
由于命令中缺少括号\numberline
,所以你得到两个不同的数字,因此 classicthesis 的字体命令仅影响第一个数字。与 iwona 字体结合使用时,这一点非常明显。
\documentclass{scrreprt}
\usepackage[pdfspacing]{classicthesis}
\usepackage{arsclassica}
\makeatletter
\cftchapnumwidth=1cm %more space after the number
\renewcommand{\numberline}[1]{%
\hb@xt@\@tempdima{\@cftbsnum{#1}\@cftasnum\hfil}\@cftasnumb}
\makeatother
\usepackage[english]{babel}
\begin{document}
\tableofcontents
\setcounter{chapter}{8}
\chapter{Test}
\chapter{Test}
\chapter{Test}
\chapter{Test}
\end{document}
答案2
\ttl@addcontentsline
另一种选择是调整from的定义classicthesis
以指定\scshape
完整数字:
\documentclass{scrreprt}
\usepackage[pdfspacing]{classicthesis}
\usepackage{arsclassica}
\usepackage[english]{babel}
\makeatletter
\cftchapnumwidth=1cm %more space after the number
\def\ttl@addcontentsline#1#2{% this is from titlesec.sty
\addcontentsline{toc}{#1}{\scshape\ifttl@toclabel\ttl@a\fi{\upshape#2}}% write titles as a group inside {}
\nobreak}
\makeatother
\begin{document}
\tableofcontents
\chapter{Test}
\chapter{Test}
\chapter{Test}
\chapter{Test}
\chapter{Test}
\chapter{Test}
\chapter{Test}
\chapter{Test}
\chapter{Test}
\chapter{Test}
\chapter{Test}
\chapter{Test}
\end{document}
输出与 Ulrike 的回答相同。