使用 Koma 脚本类之一时恢复默认的 \raggedbottom 脚注行为

使用 Koma 脚本类之一时恢复默认的 \raggedbottom 脚注行为

使用标准 LaTeX 类(文章等),如果页面处于\raggedbottom替代\flushbottom模式,则脚注会直接设置在文本下方。KOMA 脚本类会改变此行为,即即使页面仅包含几行文本,脚注也会放置在页面的最底部。

以下是一篇针对 LaTeX 的 MWE 文章:

\documentclass{article}
\usepackage[a6paper,margin=1cm,bottom=2cm]{geometry}
\raggedbottom
\title{\LaTeX{} article}
\begin{document}
    \maketitle
    A very short text.\footnote{A footnote.}
    \pagebreak
\end{document}

这是 KOMA-Script scrartcl:

\documentclass{scrartcl}
\usepackage[a6paper,margin=1cm,bottom=2cm]{geometry}
\raggedbottom
\title{KOMA script scrartcl}
\begin{document}
    \maketitle
    A very short text.\footnote{A footnote.}
    \pagebreak
\end{document}

MWE LaTeX 文章 MWE KOMA 脚本 scrartcl

是否有可能恢复默认行为(即文本正下方的脚注)而不破坏其他与脚注相关的 Koma 脚本命令(如)\deffootnote\deffootnotemark\setfootnoterule

答案1

对于这些KOMA-Script类别,的定义\footnoterule包括 0pt 加 0.05fil 的可拉伸空间。删除这个额外的空间。

\documentclass{scrartcl}
\usepackage[a6paper,margin=1cm,bottom=2cm]{geometry}
\raggedbottom
\usepackage{etoolbox}
\makeatletter
\patchcmd{\footnoterule}{\vskip \z@ \@plus .05fil}{}{}{}
\makeatother
\title{KOMA script scrartcl}
\begin{document}
    \maketitle
    A very short text.\footnote{A footnote.}
    \pagebreak
\end{document}

在此处输入图片描述

相关内容