我想在类型区域和部分之间添加精确数量的空间:
\documentclass{scrbook}
\KOMAoptions{fontsize=10pt, paper=14cm:21cm, DIV=calc, pagesize=auto, BCOR=5mm, twoside=true, titlepage=true}
\usepackage{lmodern}
\usepackage[utf8]{inputenc}
% shows frames of type area (good for debugging)
\usepackage{showframe}
\begin{document}
%\vspace*{-\topskip} % removes \topskip space
\vspace*{0em} % space amout is 0em for testing purpose; remove or comment to get absolutely no space
\section{Test}
\end{document}
我认为该命令\vspace*{0em}
会扩展节的粘连,对吗?如果我删除\vspace*{0em}
节,它位于类型区域的顶部。不知何故\vspace*{0em}
应该做同样的事情。背景是我想在类型区域和节之间添加一个精确的空间,但空间总是太大。有什么想法可以解决这个问题吗?
答案1
我自己的解决方案并不完美:
\documentclass{scrbook}
\KOMAoptions{fontsize=10pt, paper=14cm:21cm, DIV=calc, pagesize=auto, BCOR=5mm, twoside=true, titlepage=true}
\usepackage{lmodern}
\usepackage[utf8]{inputenc}
% shows frames of type area (good for debugging)
\usepackage{showframe}
\makeatletter
% change definition of \section; remove space before
\renewcommand{\section}{\@startsection{section}{1}{\z@}%
{-0.01ex}%
{2.3ex \@plus.2ex}%
{\ifnum \scr@compatibility>\@nameuse{scr@[email protected]}\relax
\setlength{\parfillskip}{\z@ plus 1fil}\fi
\raggedsection\normalfont\sectfont\nobreak\size@section}%
}
\makeatother
\begin{document}
\vspace*{-\topskip}
\section{Test}
Test
\end{document}
代码重新定义了\section
命令,将之前的空格设置为-0.01ex
(必须为负数以避免段落缩进)。只剩下一点点空间。删除或注释掉\vspace*{-\topskip}
以进行测试。