節標題前後的間距

節標題前後的間距

我知道之前已經提到過這個主題,但在章節標題下創建空間時仍然遇到問題。我使用了該titlesec包,然後嘗試使用命令\titlespacing{\section}...

這是我的程式碼。有人可以幫忙嗎?

\documentclass[10pt]{book}
\usepackage[utf8]{inputenc}
\usepackage{fullpage}
\usepackage[compact]{titlesec}
\usepackage{setspace}
\usepackage{sectsty}
\chapterfont{\huge}
\sectionfont{\Huge}
\begin{document}
\chapter*{Kapitel 1}
\section*{Einleitung}
\begin{large}
\subsection*{1.1 Motivation}

答案1

使用titlesec您可以使用的包\titlespacing*可以更改標題前後的間距;該指令的語法是:

\titlespacing*{<command>}{<left>}{<before-sep>}{<after-sep>}

(還有一個額外的可選參數,但在這裡並不重要)。<left>增加左邊距;<before-sep>控制標題之前的垂直空間;<after-sep>控制標題後的垂直空間。 (請參閱包文檔以獲取更多資訊)。一個完整的例子:

\documentclass[10pt]{book}
\usepackage{titlesec}
\usepackage{lipsum}% just to generate text for the example

\titlespacing*{\section}
{0pt}{5.5ex plus 1ex minus .2ex}{4.3ex plus .2ex}
\titlespacing*{\subsection}
{0pt}{5.5ex plus 1ex minus .2ex}{4.3ex plus .2ex}

\begin{document}

\chapter{Kapitel 1}
\lipsum[4]
\section{Einleitung}
\lipsum[4]
\subsection{Motivation}
\lipsum[4]

\end{document}

在此輸入影像描述

我使用ex(大約當前字體中「x」的高度)作為所用長度的單位,但您可以使用任何其他有效的 LaTeX 單位(cminmmpt等);您也可以使用預先定義長度的倍數,例如 \baselineskip:

\titlespacing*{\subsection}
  {0pt}{2\baselineskip}{3\baselineskip}

我使用 ex 因為這樣空間是依賴字體的。如果您想更改標題的格式,您也可以使用相同的套件及其強大的\titleformat命令。

答案2

如果您不需要像 之類的附加包的所有「包袱」titlesec,您可以簡單地自己修改標題的這些方面。請參閱此範例。我使用了幾個部分並保存了原始的部分定義,這樣我們就可以進行比較。

然後,我在調用原始部分命令之前定義並使用部分“前奏”。然後我在切片命令中新增一個「postlude」。這裡的前奏和後奏都添加了額外em的垂直空間,但您可以使用它來放置其他分段突出顯示,例如規則等。

\documentclass{article}
\begin{document}
\section{First Section}

This is the first line of text.  Note the vertical spacing.  

\section{Second Section}

Observe the spacing prior to and following the sectioning command. Now let me
redefine a few things.

\makeatletter
\let\origsection\section
\renewcommand\section{\@ifstar{\starsection}{\nostarsection}}

\newcommand\nostarsection[1]
{\sectionprelude\origsection{#1}\sectionpostlude}

\newcommand\starsection[1]
{\sectionprelude\origsection*{#1}\sectionpostlude}

\newcommand\sectionprelude{%
  \vspace{1em}
}

\newcommand\sectionpostlude{%
  \vspace{1em}
}
\makeatother

\section{Next Section}
Did this text drop 1em lower relative to the heading than the prior
section?  If so, we have succeeded.

\section{Final Section}

And the result is permananent, as you can see.

\end{document}

在此輸入影像描述

答案3

如果有人想在使用 KOMAscript 時調整空格 - 不建議使用 @gonzalo 的答案,因為 KOMA 和 titlesec 不相容。不過,KOMA 提供了修改部分命令的命令。命令

\RedeclareSectionCommand[beforeskip=-5.5ex plus -1ex minus -.2ex,afterskip=4.3ex plus -.2ex]{section}

將節標題前後的空間修改為相似的值。

答案4

控制每個空間單獨你可以簡單地使用:

\vspace{5mm}\vspace{1em}\vspace{1cm}增加(到添加空間) 和;

\vspace{-5mm}\vspace{-1em}\vspace{-1cm}減少(從標準空間獲取)。

最適合控制標準空間的幾個部分。

遵循一個工作範例:

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{geometry}
 \geometry{a4paper,
 total={170mm,257mm},
 left=20mm, top=20mm,}

\title{Spacing before and after section titles, \LaTeX}
\author{}
\date{}

\begin{document}

\maketitle

\section{\huge Increase \Large space between headings and text}

\subsection{With (\texttt{\textbackslash vspace\{4mm\}})}
\vspace{4mm}
Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium. 

\subsection{With (\texttt{\textbackslash vspace\{0.5em\}})}
\vspace{0.5em}
Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium. 

\subsection{With (\texttt{\textbackslash vspace\{0.6cm\}})}
\vspace{0.6cm}
Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium. 

\vspace{1cm}
\hrulefill
\vspace{1cm}

\section{\huge Decrease \Large space between headings and text}

\subsection{With (\texttt{\textbackslash vspace\{-3.5mm\}})}
\vspace{-3.5mm}
Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium. 

\subsection{With (\texttt{\textbackslash vspace\{-1em\}})}
\vspace{-1em} 
Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium. 

\subsection{With (\texttt{\textbackslash vspace\{-0.44cm\}})}
\vspace{-0.44cm}
Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium. 

\end{document}

在此輸入影像描述

相關內容