KOMA-Script - 段落换行,无空格和 parskip

KOMA-Script - 段落换行,无空格和 parskip

我目前正在用 KOMA-Class 撰写我的硕士论文srcreprt,我对段落中的空行、分段和垂直空间分段有点困惑。

据我所知,\\如下所示的 mwe 的用法是一种糟糕的风格:

\documentclass[a4paper,12pt,chapterprefix=true]{scrreprt}

\usepackage[ngerman]{babel}
\usepackage{blindtext}

\setlength{\parindent}{0em}

\usepackage[onehalfspacing]{setspace}

\RedeclareSectionCommands[
beforeskip=1em,
afterskip=1sp
]{paragraph,subparagraph}

\begin{document}
    \chapter{Ein Kapitel}
    \blindtext

    \paragraph{Ein Absatz}
    \blindtext \\

    \blindtext
\end{document}

它产生以下输出:

糟糕的风格示例

正如我所读到的,最好使用\usepackage{parskip}、删除\setlength{\parindent}{0em}并使用空行而不是\\。这看起来略有不同,但几乎相同。但是 pdflatex 现在会引发以下警告:

不建议将包“parskip”(scrreprt)与 KOMA-Script 类一起使用。

我发现,KOMA-Script 提供了parskip可以代替 的参数\usepackage{parskip}。但这会为各部分创建较大的垂直空间。尤其是似乎没有办法减少\paragraph和以下文本之间的间距:

KOMA-Script parskip

所以我的问题是:什么是“最佳”解决方案?我猜是 KOMA-Script 选项parskip。但是我怎样才能减少垂直间距?特别afterskip\paragraph

我还遇到了以下问题:使用时\usepackage[onehalfspacing]{setspace}应该DVI=last。我不太明白这一点。此外,结合 scrmanual,它比其他任何事情都更让我困惑。这是我应该注意的事情吗?

感谢您的帮助!

答案1

KOMA 脚本使标题前、标题内和标题后的间距取决于 和\baselineskip,而 和 则由和parskip软件包增加。行距为 1.5 倍、无段落缩进但段落间有空格的文档会试图复制 Word 布局,因此永远不会看起来美观,尽管它看起来比 Word 文档更好。setspaceparskip

在 KOMAscript 中设置字体大小的正确语法是fontsize=12pt。此外,您可以省略该a4paper选项,因为这是所有 KOMA-Script 类的默认设置。

线路

\usepackage[onehalfspacing]{setspace}

还增加了标题前、标题内和标题后的间距。此外,当您增加该parskip值以在段落之间留出空行时,这将增加标题中的间距。使用内部命令parskip=trueparskip=half可在段落之间留出空行。

在 KOMAscript 中,您可以单独重新声明分段命令以恢复(减少)添加的空间。

从我的例子可以看出,章节非常简单。要删除 、 和 命令后的额外空格\section\subsection请使用\paragraph并将false和设置为负值。\subparagraph\RedeclareSectioncommandruninafterskip

在此处输入图片描述

\documentclass[fontsize=12pt, chapterprefix=true, parskip=half]{scrreprt}

\usepackage[ngerman]{babel}
\usepackage{blindtext}

%\setlength{\parindent}{0em} % Not needed when 

\usepackage[onehalfspacing]{setspace}

\RedeclareSectionCommand[%
innerskip=0.05\baselineskip,
afterskip=1\baselineskip plus .1\baselineskip minus .12\baselineskip,
beforeskip=-2\baselineskip%
]{chapter}

\RedeclareSectionCommands[
runin=false,              %% NB! Important
afterskip=-0.5\parskip
]{section,subsection}


\RedeclareSectionCommands[
beforeskip=1em,
runin=false,
afterskip=-\parskip
]{paragraph,subparagraph}

\begin{document}
    \chapter{Ein Kapitel}
    \vspace{-0.5\baselineskip}
    \blindtext

\section{Ein Section}
\blindtext

    \paragraph{Ein Absatz}
    \blindtext

    \blindtext
\end{document}

相关内容