scrartcl 中(自定义)标题页的页脚太高

scrartcl 中(自定义)标题页的页脚太高

我想在我使用scrartcl类创建的文档中自定义标题页。我正在使用titlepage环境(我相信它设置了thispagestyle=empty)。但我的页脚仍然很高:就像在普通文本中一样(当然看起来不错,因为它在页脚中有页码)。

使标题页的页脚变小的首选方法是什么?我主要考虑两种方法:1)footheight可以丢弃(即 = 0),2) 文本的最后一部分(城市和日期)可以成为页脚的一部分。

我的代码如下。

\documentclass [fontsize=14pt, paper=a4, pagesize, DIV=calc] {scrartcl}

\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage{lipsum}

\usepackage{paratype}
\usepackage{setspace}
\onehalfspacing

\parindent=1.25cm
\frenchspacing

\KOMAoptions{DIV=last} % recalculate text area as recommended in KOMA-guide

\begin{document}
  \begin{titlepage}
  %
  %\thispagestyle {empty}
  %
  \begin {center}
    %
    [Federal Authority]
    %
    \vskip 15pt
    %
    My University
    %
    \vskip 15pt
    %
    My Department
    %
    \vskip 15pt
    %
    My chair
  \end {center}
  %
  \vspace* {\fill}
  %
  \begin {center}
    %
    Me
    %
    %
    \vskip 18pt
    %
    Title
    %
  \end {center}
  %
  \vspace {\fill}
  %
  \begin {center}
    %
    City \\
    %
    Date
    %                Here will be huge vertical space for some reason
  \end {center}
  %
  \end{titlepage}

\lipsum

\end{document}

其结果是 在此处输入图片描述

答案1

您可以加载该包scrlayer(KOMA-Script 包的一部分)并为标题页定义特殊的页面样式。

\usepackage{scrlayer}
\DeclareNewLayer[
  foot,
  foreground,
  contents={%
    \raisebox{\dp\strutbox}[\layerheight][0pt]{%
      \parbox[b]{\layerwidth}{\centering City\par Date}}%
  }
]{titlepage.foot.fg}
\DeclareNewPageStyleByLayers{titlepage}{titlepage.foot.fg} 

\begin{titlepage}
\thispagestyle{titlepage}
...
\end{titlepage}

在此处输入图片描述

代码(由@egreg 进行了额外更改):

\documentclass [fontsize=14pt, paper=a4, pagesize, DIV=calc] {scrartcl}

\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage{lipsum}

\usepackage{showframe} %%% just for the example

\usepackage{paratype}
\usepackage{setspace}
\onehalfspacing

\parindent=1.25cm
\frenchspacing

\KOMAoptions{DIV=last} % recalculate text area as recommended in KOMA-guide

\usepackage{scrlayer}
\DeclareNewLayer[
  foot,
  foreground,
  contents={%
    \raisebox{\dp\strutbox}[\layerheight][0pt]{%
      \parbox[b]{\layerwidth}{\centering City\par Date}}%
  }
]{titlepage.foot.fg}
\DeclareNewPageStyleByLayers{titlepage}{titlepage.foot.fg}

\begin{document}
\begin{titlepage}
\thispagestyle{titlepage}
\centering
[Federal Authority]

\vspace{15pt}

My University

\vspace{15pt}

My Department

\vspace{15pt}

My chair

\vspace{\fill}

Me

\vspace{18pt}

Title

\vspace{\fill}
\end{titlepage}
\end{document}

请注意,上述代码需要 KOMA-Script 版本 3.14 或更新版本。CTAN、TeX Live 和 MiKTeX 上的当前版本是 3.15 版,最新主要版本是 3.16 版。

不幸的是,Overleaf仍然使用旧的 KOMA-Script 版本 3.12。(该命令\KOMAScriptVersion会在文档中打印使用的版本。)因此Overleaf您必须更改代码

\usepackage{scrlayer}
\DeclareNewLayer[
  foot,
  foreground,
  contents={%
    \raisebox{\dp\strutbox}[\layerheight][0pt]{%
      \parbox[b]{\layerwidth}{\centering\titlepagefoot}}%
  }
]{titlepage.foot.fg}
\DeclareNewPageStyleByLayers{titlepage}{titlepage.foot.fg}
\newcommand\titlepagefoot{City\par Date}

答案2

您可以使用\enlargethispage。我也对您的代码做了一些修改:最好使用\vspace\vskip和只是一个\centering声明。

\documentclass [fontsize=14pt, paper=a4, pagesize, DIV=calc] {scrartcl}

\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage{lipsum}

\usepackage{showframe} %%% just for the example

\usepackage{paratype}
\usepackage{setspace}
\onehalfspacing

\setlength{\parindent}{1.25cm}
\frenchspacing

\KOMAoptions{DIV=last} % recalculate text area as recommended in KOMA-guide

\begin{document}

\begin{titlepage}

\centering
\enlargethispage{3\baselineskip} % <------------ adjust at will

[Federal Authority]

\vspace{15pt}

My University

\vspace{15pt}

My Department

\vspace{15pt}

My chair

\vspace{\fill}

Me

\vspace{18pt}

Title

\vspace{\fill}

City

Date

\end{titlepage}

\end{document}

在此处输入图片描述

相关内容