新指令標題間距

新指令標題間距

為了在 \section 之間產生空間,我使用 \titlespacing*{\section}{0cm}{1cm}{0.5cm},對小節執行相同的動作。是否可以在自己的命令之間產生標題間距?我在「註解」之前需要三個空行,在「註解」之後需要一個空白行

\documentclass[10pt]{scrbook}
\usepackage{lipsum} % dummy text
\usepackage[english,ngerman]{babel}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{times}
\usepackage{helvet}
\usepackage{endnotes}
\usepackage{titlesec}


% Spacing between section and text
% Syntax: \titlespacing*{<command>}{<left>}{<before-sep>}{<after-sep>}
\titlespacing*{\subsection}{0cm}{1cm}{0.5cm}
\titlespacing*{\section}{0cm}{1cm}{1cm}


 %ENDNOTENLAYOUT%
\renewcommand\enoteformat{\noindent\setlength\hangindent{0.5cm}\makebox[0.5cm][l]{\theenmark\,}}
\def\enotesize{\footnotesize}
\renewcommand{\notesname}{\normalsize\textit{Notes}}
\let\footnote=\endnote


\pagestyle{plain}
\begin{document}


\section{Beispiel}
\lipsum[1]


\subsection*{Endnotes}
\footnote{\lipsum[1]}\lipsum[2]
\footnote{\lipsum[1]}
\lipsum[1]

\theendnotes

\end{document}

在此輸入影像描述

答案1

請注意,不建議titlesec與 KOMA-Script 類別一起使用。所以我將用來\RedeclareSectionCommand更改章節標題之前和之後的跳過。

\enoteheading用於\section*註釋標題。所以你可以在前面加上 a\RedeclareSectionCommand來獲得所需的結果。請注意,我不確定是否\enoteheading應該真正與 ? 處於相同的切片級別\section?但由於星號的原因,沒有目錄條目,也沒有章節編號。所以也許這不是問題。

\usepackage{xpatch}
\xpretocmd\enoteheading{%
  \RedeclareSectionCommand[
      beforeskip=3\baselineskip,
      afterskip=\baselineskip,
      font=\normalsize\itshape
    ]{section}%
  }{}{\PatchFailed}
\renewcommand{\notesname}{Notes}

在此輸入影像描述

代碼:

\documentclass[10pt]{scrbook}
\usepackage{lipsum} % dummy text
\usepackage[english,ngerman]{babel}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{times}
\usepackage{helvet}
\usepackage{endnotes}

\RedeclareSectionCommand[
  beforeskip=-1cm,
  afterskip=1cm
]{section}

\RedeclareSectionCommand[
  beforeskip=-1cm,
  afterskip=.5cm
]{subsection}

 %ENDNOTENLAYOUT%
\renewcommand\enoteformat{\noindent\setlength\hangindent{0.5cm}\makebox[0.5cm][l]{\theenmark\,}}
\def\enotesize{\footnotesize}

\usepackage{xpatch}
\xpretocmd\enoteheading{%
  \RedeclareSectionCommand[
      beforeskip=3\baselineskip,
      afterskip=\baselineskip,
      font=\normalsize\itshape
    ]{section}%
  }{}{\PatchFailed}
\renewcommand{\notesname}{Notes}

\let\footnote=\endnote

\pagestyle{plain}
\begin{document}
\section{Beispiel}
\lipsum[1]
\subsection*{Endnotes}
\footnote{\lipsum[1]}\lipsum[2]
\footnote{\lipsum[1]}
\lipsum[1]

\theendnotes
\end{document}

如果你真的有一個舊的 KOMA-Script 版本(3.14 或更早版本)那麼 ist 就比較容易使用titlesec

\documentclass[10pt]{scrbook}
\usepackage{lipsum} % dummy text
\usepackage[english,ngerman]{babel}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{times}
\usepackage{helvet}
\usepackage{endnotes}
\usepackage{titlesec}

% Spacing between section and text
% Syntax: \titlespacing*{<command>}{<left>}{<before-sep>}{<after-sep>}
\titlespacing*{\subsection}{0cm}{1cm}{0.5cm}
\titlespacing*{\section}{0cm}{1cm}{1cm}

 %ENDNOTENLAYOUT%
\renewcommand\enoteformat{\noindent\setlength\hangindent{0.5cm}\makebox[0.5cm][l]{\theenmark\,}}
\def\enotesize{\footnotesize}
%
\usepackage{xpatch}
\xpretocmd\enoteheading{%
  \titlespacing*{\section}{0cm}{3\baselineskip}{1\baselineskip}%
}{}{\PatchFailed}
\renewcommand{\notesname}{\normalsize\textit{Notes}}
\let\footnote=\endnote

\pagestyle{plain}
\begin{document}
\section{Beispiel}
\lipsum[1]
\subsection*{Endnotes}
\footnote{\lipsum[1]}\lipsum[2]
\footnote{\lipsum[1]}
\lipsum[1]

\theendnotes
\end{document}

相關內容