ArsClassica 和 TOC

ArsClassica 和 TOC

在使用 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 的回答相同。

相关内容