如何仅在文本页面上操作 headsep

如何仅在文本页面上操作 headsep

标题和章节或节标题之间的间距是一个经常被回答的问题。但如果我想保持这个距离,但减少没有标题的页面上标题和文本之间的间距,该怎么办?

我使用 撰写论文scrreprt,目前我不得不将两张大照片和一些文本挤在一页上。因此,我需要减少标题和文本之间的空间,而不更改以章节或部分开头的页面的布局。以下是一个例子:

\documentclass[12pt,a4paper,oneside,notitlepage]{scrreprt}

\usepackage[utf8]{inputenc} 
\usepackage[ngerman]{babel} 
\usepackage[a4paper,left=35mm,right=25mm, top=35mm, bottom=25mm]{geometry} 

\usepackage[headsepline, plainheadsepline, automark]{scrpage2} 
\pagestyle{scrheadings} 
\chead[]{\headmark} 
\ohead[\pagemark]{\pagemark} 
\cfoot[]{}
\automark{chapter}
\setkomafont{pageheadfoot}{\footnotesize} 

\setlength{\headsep}{0.5cm} 
\renewcommand*\chapterheadstartvskip{\vspace{0cm}} 
\renewcommand*\chapterheadendvskip{\vspace{0.5cm}}

\begin{document}
\renewcommand*{\chapterpagestyle}{scrplain}
\chapter{A chapter}
some text

The distance to the heading is okay.
\newpage
\section{Another line}
here goes some text too.

The distance here is too small.
\newpage
This is the part I aimed for. It should be that close. 
\end{document}

正如您所看到的,更改 headsep 会将该部分移至正常文本的顶部。我尝试了 -packagetitlesec和一些重新定义,例如(德国golatex线) 而不将其恢复到正常位置,但如果不改回“headsep”,这似乎是不可能的。但一定有办法断开这两个空间,对吧?我真的很感激一些帮助和分享的知识,因为我对 LaTeX 还很陌生。

答案1

对于您来说,更好的方法是不要重新定义\headsep,而是添加手册\vspace*。这里的星号很重要,否则\vspace页面开头(以及结尾)的 就没有效果。

\documentclass[12pt,a4paper,oneside,notitlepage]{scrreprt}
\usepackage[utf8]{inputenc} 
\usepackage[ngerman]{babel} 
\usepackage[a4paper,left=35mm,right=25mm, top=35mm, bottom=25mm]{geometry} 

\usepackage[headsepline, plainheadsepline, automark]{scrpage2} 
\pagestyle{scrheadings} 
\chead[]{\headmark} 
\ohead[\pagemark]{\pagemark} 
\cfoot[]{}
\automark{chapter}
\setkomafont{pageheadfoot}{\footnotesize} 

\renewcommand*\chapterheadstartvskip{\vspace{0cm}} 
\renewcommand*\chapterheadendvskip{\vspace{0.5cm}}

\begin{document}
\renewcommand*{\chapterpagestyle}{scrplain}
\chapter{A chapter}
some text

The distance to the heading is okay.
\newpage
\section{Another line}
here goes some text too.

The distance here was too small, but is now according to the standard.
\newpage
\vspace*{-0.75cm}

This is the part I aimed for. It should be that close. 
\end{document}

空行之后\vspace*可以省略,但是为了保持一致性,我将其保留了下来,因为\vspace否则之后会产生不良效果。


请注意,与此同时, 的后继者scrpage2已随 KOMA-Script 3.12 版发布:其名称为scrlayer-scrpage。它向下兼容scrpage2,但修复了一些特性并提供了更多机会。

相关内容