经典论文中的段落是双倍行距,标题是单倍行距?

经典论文中的段落是双倍行距,标题是单倍行距?

我一直在使用classicthesis带有arsclassica样式包的模板撰写博士论文。我的大学要求我将论文正文设置为双倍行距,因此我\doublespacing在大部分文档中都使用了这种格式。这也会让我的章节和节标题也设置为双倍行距,这很烦人。我可以在每个章节/节/小节标题前后手动​​插入\singlespacing\doublespacing但这会非常繁琐。

我知道之前有关于这个话题的几个答案,特别是这是来自@GonzaloMedina 的,提出了两种可能的补救措施:

  1. 用于在每个部分单元之前和之后etoolbox插入:\singlespacing\doublespacing

    \usepackage{etoolbox}
    \makeatletter
    \pretocmd{\@sect}{\singlespacing}{}{}
    \pretocmd{\@ssect}{\singlespacing}{}{}
    \apptocmd{\@sect}{\doublespacing}{}{}
    \apptocmd{\@ssect}{\doublespacing}{}{}
    \makeatother
    

    classicthesis不幸的是,这似乎对文档没有任何影响。

  2. 用于titlesec直接指定标题的格式:

    \usepackage{titlesec}
    \titleformat{\section}
    {\singlespacing\normalfont\Large\bfseries}{\thesection}{1em}{}
    \titleformat{\subsection}
    {\singlespacing\normalfont\large\bfseries}{\thesubsection}{1em}{}
    \titleformat{\subsubsection}
    {\singlespacing\normalfont\normalsize\bfseries}{\thesubsubsection}{1em}{}
    

    arsclassica但是,这会覆盖/提供的良好默认格式classicthesis

在该问题下的评论部分,@PeterGrill 建议使用

\let\OldSection\section
\renewcommand*{\section}[1]{\singlespace\OldSection{#1}\doublespace}

这是我目前最接近可行的解决方案,但不幸的是,它阻止我使用可选\section[Short title]{Long title}语法,这对于我的一些长节标题很有用。他还建议了另一种解决这个问题的变体:

\usepackage{letltxmacro}
\LetLtxMacro\OldSection\section
\renewcommand*{\section}[2][]{\singlespace\OldSection[#1]{#2}\doublespace}

但是,正如 Gonzalo 指出的那样,这会阻止正确生成 TOC。

简而言之,我想知道是否有更好的方法来在使用classicthesis/的双倍行距文档中专门强制使用章节/章节/小节标题的单倍行距arsclassica


以下是一个简单的测试用例:

\documentclass[headinclude, oneside]{scrbook}
\usepackage[eulerchapternumbers,beramono,pdfspacing]{classicthesis}
\usepackage{setspace}
\usepackage{lipsum}

\begin{document}
\doublespacing
\section[A short section name]{A long section name that spans multiple lines within the document but should be single-spaced}
\lipsum[1]
\section[Another short section name]{Another long section name that spans multiple lines within the document but should be single-spaced}
\lipsum[2]
\end{document}

答案1

重做相关\titleformat命令:

\documentclass[headinclude, oneside]{scrbook}
\usepackage[eulerchapternumbers,beramono,pdfspacing]{classicthesis}
\usepackage{arsclassica}
\usepackage{setspace}
\usepackage{lipsum}

\titleformat{\section}
  {\singlespacing}
  {\textsc{\MakeTextLowercase{\thesection}}}
  {1em}
  {\spacedlowsmallcaps}


\begin{document}
\doublespacing

\section[A short section name]{A long section name that spans multiple lines within the document but
should be single-spaced}

\lipsum[1]

\section[Another short section name]{Another long section name that spans multiple lines within the
document but should be single-spaced}

\lipsum[2]
\end{document}

有沒有都arsclassica一樣。

在此处输入图片描述

相关内容