KOMA-Script 在切换到某些字体大小时添加额外空间

KOMA-Script 在切换到某些字体大小时添加额外空间

KOMA-Script 键fontsize可用于在文档中间(以及在文档开头)切换字体大小。但是,当切换到 或 时,它会添加虚假空格,10pt11pt下面12pt的 MWE 所示。这似乎只发生在这些尺寸上。

为什么会发生这种情况?我该如何防止?

\documentclass{scrartcl}

\usepackage{lmodern}

\def\fontsizetest#1{%
  \noindent\makebox[2em][r]{#1}:
  {X\KOMAoptions{fontsize=#1}X}\par
}

\begin{document}

\fontsizetest{9pt}
\fontsizetest{9.5pt}
\fontsizetest{10pt}
\fontsizetest{10.5pt}
\fontsizetest{11pt}
\fontsizetest{11.5pt}
\fontsizetest{12pt}
\fontsizetest{12.5pt}
\fontsizetest{13pt}

\end{document}

MWE 输出

答案1

如果你使用“已知”尺寸,则会加载预先制作的尺寸文件,并且日志会显示

Class scrartcl Info: File `scrsize12pt.clo' used to setup font sizes on input l
ine 18.

看着 scrsize12pt.clo你看到的东西

\def\small{%
  \@setfontsize\small\@xipt{13.6}%
  \abovedisplayskip 11\p@ \@plus3\p@ \@minus6\p@
  \abovedisplayshortskip \z@ \@plus3\p@
  \belowdisplayshortskip 6.5\p@ \@plus3.5\p@ \@minus3\p@
  \def\@listi{\leftmargin\leftmargini
    \topsep 9\p@ \@plus3\p@ \@minus5\p@
    \parsep 4.5\p@ \@plus2\p@ \@minus\p@
    \itemsep \parsep}%
  \belowdisplayskip \abovedisplayskip
}

}如果在水平模式下使用,则后面的换行符会形成一个空格标记。

很少需要在文档中途更改布局,也几乎不需要更改段落中间因此这里没有保护定义后的换行符%

相关内容