我正在使用 Koma-Script 类(3.09a)编写文档scrartcl
。
我希望每一页都有页眉和页脚,但第一页的页眉应该与其他页眉不同。
因此,我\newpagestyle
从scrpage2
包中定义了两种页面样式MyFirstPageStyle
和MyPageStyle
,并像这样使用它们:
\pagestyle{MyPageStyle}
\thispagestyle{MyFirstPageStyle}
由于第一页的页眉很大,因此它与第一页的内容重叠。我可以通过传递[headinclude=true, headheight=2cm]
类选项来解决这个问题。但这也会影响所有其他页面的页眉,其中页眉只有一行高。
所以我的问题是如何headheight
仅设置第一页而不影响其他页面?
为了更清楚地说明最终应该是什么样子:页眉顶部和页面顶部之间的空白应该在所有页面上都相同。但是第一页的页眉较大,因此第一页的内容应该向下移动一点。
完整最小示例:
\documentclass{scrartcl}
\usepackage[ngerman]{babel}
\usepackage{cmap}
\usepackage[T1]{fontenc}
\usepackage[ansinew]{inputenc}
\usepackage[headsepline,footsepline]{scrpage2}
\usepackage{graphicx}
\usepackage{calc}
\usepackage{lastpage}
\newpagestyle{MyTitlePageStyle}
{
{}
{}
{
\begin{minipage}{\textwidth-5.5cm}
\normalfont\sffamily\Large\bfseries
DigSig1 Praktikum 1 - Lösungen \\
Signalabtastung / Zeitdiskretisierung
\end{minipage}
\hfill
\begin{minipage}{5cm}
\includegraphics[width=\textwidth]{HSR}
\end{minipage}
}
}
{
{}
{}
{
\normalfont
HRO, \today
\hfill
\pagemark{}/\pageref{LastPage}
}
}
\newpagestyle{MyPageStyle}
{
{}
{}
{
\normalfont
DigSig1 Praktikum 1 - Lösungen
\hfill
Signalabtastung / Zeitdiskretisierung
}
}
{
{}
{}
{
\normalfont
HRO, \today
\hfill
\pagemark{}/\pageref{LastPage}
}
}
\pagestyle{MyPageStyle}
\thispagestyle{MyTitlePageStyle}
\begin{document}
content
\end{document}
使用上面提供的代码,第一页的页眉与第一页的内容重叠。当我使用
\documentclass[headinclude=true, headheight=2cm]{scrartcl}
相反,第一页看起来很好,但它也增加了后续页面标题上方的空白,这是我不想要的。
答案1
写
\AtBeginDocument{\vspace*{2\baselineskip}}
或者简单地
\begin{document}
\vspace*{2\baselineskip}
如果您要准备个性化文件,第一种格式更合适.sty
。请将其更改2
为最适合您的格式。
答案2
\KOMAoption
您可以使用或自定义文档中的选项\KOMAoptions
。如果您更改布局参数,\recalctypearea
则会重新计算布局。
例子:
\KOMAoptions{headheight=3cm,headinclude=true}
\recalctypearea
content of first page
\KOMAoptions{headheight=1.25\baselineskip,headinclude=false}
\recalctypearea
\clearpage
further content
请注意,由于 headinclude 的值不同,您可能需要做进一步的调整。如有必要,您可以使用 对 textbody 进行进一步的调整\areaset
。
或者考虑headinclude=true
在文档中一致使用。