Интервалы до и после названий разделов

Интервалы до и после названий разделов

Я знаю, что эта тема уже упоминалась, но у меня все еще проблема с созданием пробела под заголовком раздела. Я использовал пакет, 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 ( среди прочих cm) ; вы также можете использовать кратные предопределенным длинам, например \baselineskip:inmmpt

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

Я использовал ex, так как в этом случае пространство зависит от шрифта. Если вы хотите изменить форматирование заголовков, вы также можете использовать тот же пакет и его мощную \titleformatкоманду.

решение2

Если вам не нужен весь "багаж" дополнительного пакета, например titlesec, вы можете просто изменить эти аспекты заголовков самостоятельно. Посмотрите этот пример. Я использую несколько разделов и сохраняю исходное определение раздела, чтобы мы могли сравнить.

Затем я определяю и использую раздел "прелюдия" перед вызовом исходной команды раздела. Затем я добавляю "постлюдию" к команде секционирования. Прелюдия и постлюдия здесь обе добавляют дополнительное 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}

введите описание изображения здесь

Связанный контент