[Tex/LaTex] Chapters with long descriptive titles

chaptersline-spacingsectioningspacing

I have document which require me that chapter headings consist of two parts: (1) Chapter number (Chapter 1, Chapter One etc.) or any other text with similar function and (2) descriptive title below number that can be long. I was able to push descriptive title below chapter number and style it according to my needs with following macro:

\documentclass[final]{book}
\usepackage{lipsum}

\def \mylongchapter#1#2{
\chapter*{\centering{\LARGE #1} \\* \textnormal{\Large #2}}
\addcontentsline{toc}{chapter}{#1: #2}
}

\begin{document}

\mylongchapter{Chapter 1}{This Chapter Have Very Interesting and Long Title Below Chapter Number}

\lipsum[11-30]

\end{document} 

Which produces this:

long chapter title

Questions:

  1. Is there any better way to typeset chapters with such descriptive title than what I did?
  2. How to control (or remove) spacing/gap between two or more lines of descriptive title (see picture below)?
  3. How to control spacing between Chapter 1 and descriptive title?

gap between two lines of chapter title

Best Answer

enter image description here

You could try redefining @makechapterhead in the book class:

\documentclass[final]{book}
\usepackage{lipsum}

%\def \mylongchapter#1#2{
%\chapter*{\centering{\LARGE #1} \\* \textnormal{\Large #2}}
%\addcontentsline{toc}{chapter}{#1: #2}
%}

\makeatletter
\def\@makechapterhead#1{%
  \vspace*{50\p@}% margin above chapter number
  {\parindent \z@ \centering \normalfont
    \ifnum \c@secnumdepth >\m@ne
      \if@mainmatter
        \LARGE\bfseries \@chapapp\space \thechapter
        \par\nobreak
        \vskip 20\p@% space between chapter number and chapter title
      \fi
    \fi
    \interlinepenalty\@M
    \Large \mdseries \centering #1 \par\nobreak
    \vskip 40 \p@% space below chapter title
  }}
\makeatother
\begin{document}

%\mylongchapter{Chapter 1}{This Chapter Have Very Interesting and Long Title Below Chapter Number}
\chapter{This Chapter Have Very Interesting and Long Title Below Chapter Number}
\lipsum[11-30]

\end{document}

You can change three numeric values (50\p@, 20\p@ and 40 \p@) to adjust margin above chapter number, space between chapter number and chapter title and space below chapter title respectively. See commens in the code for proper places to change those values.

EDIT: You can use setspace package to alter spacing like so:

\documentclass[final]{book}
\usepackage{lipsum}
\usepackage{setspace} %<========== package to adjust spacing
%\def \mylongchapter#1#2{
%\chapter*{\centering{\LARGE #1} \\* \textnormal{\Large #2}}
%\addcontentsline{toc}{chapter}{#1: #2}
%}

\makeatletter
\def\@makechapterhead#1{%
  \vspace*{50\p@}% margin above chapter number
  {\parindent \z@ \centering \normalfont
    \ifnum \c@secnumdepth >\m@ne
      \if@mainmatter
        \LARGE\bfseries \@chapapp\space \thechapter
        \par\nobreak
        \vskip 20\p@% space between chapter number and chapter title
      \fi
    \fi
    \interlinepenalty\@M
    \Large \mdseries \centering \onehalfspacing #1 \par\nobreak %<========== Add \doublespacing or \onehalfspacing or \singlespacing here
    \vskip 40 \p@% space below chapter title
  }}
\makeatother
\begin{document}

%\mylongchapter{Chapter 1}{This Chapter Have Very Interesting and Long Title Below Chapter Number}
\chapter{This Chapter Have Very Interesting and Long Title Below Chapter Number}
\lipsum[11-30]

\end{document}

And for \chapter*, I think redefining @makeschapterhead (note the 's' for starred) would do the same thing. But I suspect that you would be able to make all these changes with one of the packages mentioned in the other answers, maybe even more easily!

Related Question