如何使用scrartcl
下面的 KOMA-Script 类减少示例文档中标题和顶部边距之间的空间?
\documentclass[a4paper,11pt]{scrartcl}
\usepackage{blindtext}
\title{This is a nice title!}
\subtitle{This is an even nicer subtitle!}
\author{John Doe}
\begin{document}
\maketitle
\section{Introduction}
\blindtext
\blindtext
\end{document}
我已经尝试过了这解决方案titling
包已被使用,但是\subtitle
不再显示。
我正在寻找一种快速而肮脏的解决方案,例如使用\vspace{-10px}
或类似的东西。
答案1
好吧,如果你想要快速而简单地添加\vspace{-1cm}
到标题命令中:
\title{\vspace{-1cm}This is a nice title!}
根据您的需要进行更改1cm
。在以下 MWe 中,我添加了包showframe
以可视化打字区域和边距。
使用以下 MWE
\documentclass[a4paper,11pt]{scrartcl}
\usepackage{blindtext}
\usepackage{showframe}
\title{\vspace{-1cm}This is a nice title!}
%\title{This is a nice title!}
\subtitle{This is an even nicer subtitle!}
\author{John Doe}
\begin{document}
\maketitle
\section{Introduction}
\blindtext
\blindtext
\end{document}
得到结果:
答案2
免责声明:这个答案有点古怪,因为它严重依赖于源代码scrartcl.cls
作为就是现在,并且任何更改都可能导致此 hack 无效。它的灵感来自通过这个答案。
但,不需要编辑标题,这很好。
\documentclass{scrartcl}
\usepackage{blindtext} % Just for the demo.
\title{This is a nice title!}
\subtitle{This is an even nicer subtitle!}
\author{John Doe}
\usepackage{xpatch}
\makeatletter
\xpatchcmd{\@maketitle}{\vskip2em}{% Insert here the space you want between the top margin and the title.
\vspace{-10em} % Example of smaller margin.
}{}{}
\xpatchcmd{\@maketitle}{\vskip.5em}{% Insert here the space you want between the title and the subtitle
\vskip5em % Example of bigger margin.
}{}{}
\makeatother
\begin{document}
\maketitle
\section{Introduction}
\blindtext
\blindtext
\end{document}
给出