How to customize my titlepage?
The titlepage is one of the first pages of a book or thesis. This page contains only the title in a fashion similar to the rest of the text within the book.
That is what Wikipedia tells us, now we have a perspective to follow, the titlepage should match the appearance of the rest of the book or thesis. Let us look at the standard scrbook titlepage.
\documentclass{scrbook}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[english,french]{babel}
\makeatletter
\newcommand{\fakechap}[1]{{\noindent\normalfont\sectfont\nobreak\size@chapter{}#1\par}\chapterheadendvskip\noindent\ignorespaces}
\makeatother
\subject{Doctoral thesis}
\title{On ducks and their love for dissertations}
\subtitle{A fiction story telling the truth}
\author{domi}
\publishers{Published by the publisher\\ at a secret location}
%\extratitle{Stories of ducks}
\uppertitleback{\vspace{3cm}I want to thank Scrooge MacDuck for his financial Support}
\date{}
\usepackage{blindtext}
\begin{document}
\frontmatter
\maketitle
\tableofcontents
\addchap{Résumé}
Résumé de la thèse en français\dots
\blindtext
\vfill
\selectlanguage{english}
\fakechap{Summary}
Résumé de la thèse en anglais\dots
\blindtext
\vfill
\selectlanguage{french}
\end{document}}
Command \maketitle
places the predefined elements on the first
page. If you want, you can change the font using the usual
\addtokomafont
-mechanism.
There are more elements available, e.g. \publishers
,
\titlehead
and \extratitle
. Additional elements are only
typeset if they have been define by the user with some argument.
In other words, no space is reserved just in case.
Book classes do not provide an abstract
environment as it is
usual for books to have a whole chapter to sum up the contents.
I defined a \fakechap
command to have both on the same page and
look alike. To be honest, it is a bit of a hack, a chapter should
be of its own.
Please note the difference in using \addchap
. If you
are interested, you can find out more at
How to use unnumbered chapters with
KOMA-script?.
What happens if we are using \extratitle
to the above MWE?
An additional pair of pages has been generated in the very
beginning. Seems to be a strange location for a title. This is a
fact of history, as books didn't have a hard cover a while back.
This extra title protected the book from dirt. It is also called
a bastard title.
Default option for book classes is the start of new chapters on
odd (right hand) pages. That means for us, we get a blank page
between title and the first chapter. If we set \uppertitleback
we can place a thanks note, or something else. You can even use
spaces if you need to customize a little bit.
But who decided where the elements set with \title
, \author
and co are placed? It is the author of the class. In the case of
KOMA-script it was Markus Kohm. That brings us to our next
question:
How can I design my own titlepage?
Relatively simple, as LaTeX is a macro language to place boxes. It is like having a huge lego set and put pieces together until satisfied with the solution.
As we now want to do the titlepage with our own hands, we don't
call \maketitle
that would do the default stuff. Since we don't
use \maketitle
we don't need to set the fields for it. No need
for \title{this is the title}
et al. If you are using
\maketitle
together with the titlepage
-environment, you are
doing something wrong.
\documentclass{report}
\usepackage{blindtext}
\begin{document}
\begin{titlepage}
Dixie dancing ducks
A story of love, hate and fame
\end{titlepage}
\chapter{Summary}
\blindtext
\end{document}
Not very pleasing to the eye. We forgot to use the right pieces to modify it. Some tweaks lead us to this:
\documentclass{report}
\usepackage{blindtext}
%\usepackage{showframe}
\begin{document}
\begin{titlepage}
\vspace*{9em}{\centering\Huge\usefont{T1}{qzc}{m}{it}
Dixie dancing ducks\par}
\vspace{1em}
{\hfill\itshape A story of love, hate and fame}
\clearpage
\vspace*{\fill}\hfill \parbox{.4\textwidth}{
\raggedleft
\scriptsize Delilah was a sad duck with a dream, being a
Dixie dancer some day. She wasn't the best looking duck
in town but she never cared about superficial things.
Practicing a lot she finally became a professional Dixie
dancer. She even fell in love. Will Delilah overcome the
infamy and hate of her \emph{new gained friends}?
}
\end{titlepage}
\chapter{Summary}
\blindtext
\end{document}
Looks much better, but the page number is screwed. Using a KOMA-class can save the day.
Now an example that might be used as a cover for a thesis. Using
the addmargin
-environment, we can get some asynchronity for the
titlepage. Package mwe
gives us some dummy pictures, we could use the universities logo instead.
\documentclass{scrreprt}
\usepackage{graphicx}
\begin{document}
\begin{titlepage}
\begin{addmargin}[4cm]{-1cm}
\centering
\hfill\includegraphics[width=2cm]{example-image-1x1}\par
\vspace{4\baselineskip}
{\Huge
Peter Piper picked a peck\\ of pickled peppers\par}
\vspace{4\baselineskip}
by\par
{\Large\textsc{Crazy Capybara}\par}
\vfill
in order to get a fancy degree at\par
{\em The university of applied dice rolling}
\end{addmargin}
\end{titlepage}
\end{document}
A titlepage for a scientific article is also possible. If the journal provides no template, there is mostly no use in bothering to implement their style, they will happily do it for you.
This will be just an example, if you are really working on a titlepage for a journal, take the solid approach as mentioned later on. Al this manual fixing up should not been done twice to get the same output.
\documentclass[twoside,ngerman]{article}
\usepackage{blindtext}
\usepackage{babel}
\usepackage{hyperref}
\begin{document}
\twocolumn[%
\centering
\begin{minipage}{.75\textwidth}
\begin{center}
{\large
Pendulum\par}
presents\par
{\Large The sonic recreation of \\the end of the world\par}
\end{center}
\vspace{\baselineskip}
\setlength{\parskip}{\smallskipamount}
Ladies and gentlemen, We understand that you Have come tonight
To bear witness to the sound Of drum And Bass.
We regret to announce That this is not the case, As instead We
come tonight to bring you The sonic recreation of the end of
the world.
Ladies and gentlemen, Prepare To \dots\par
\rule{7em}{.4pt}\par
Rob Swire, Gareth McGrillen, and Paul
Harding;\par \href{mailto:[email protected]}{Mail the
authors}
\end{minipage}
\vspace{2\baselineskip}
]
\section{Hold Your Colour}
\blindtext
\blindtext
\end{document}
A collection of different titlepages that can lead to your very own customized titlepage can be found at Titlepage. I'll also try to collect some titlepages on github.
How to adjust the title to match classicthesis
?
The natural approach to use the rock solid KOMA-interface is
impossible, as the author of classicthesis
decided to implement
things in another way. We would have to put the commands inside the
definition, which feels like rape to me, so no example for this.
We are back at putting lego pieces together
\documentclass[12pt,a4paper,footinclude=true,twoside,headinclude=true,headings=optiontoheadandtoc]{scrbook}
%\usepackage{geometry}
%\geometry{marginparsep=8pt,left=3.5cm,right=3.5cm,top=3cm,bottom=3cm}
\usepackage[parts,pdfspacing,dottedtoc]{classicthesis}
\usepackage[utf8]{inputenc}
\makeatletter
\newcommand{\fakechap}[1]{{\noindent\normalfont\sectfont\nobreak\size@chapter{}#1\par}\chapterheadendvskip\noindent\ignorespaces}
\makeatother
\usepackage{blindtext}
\begin{document}
\frontmatter
\begin{titlepage}
\vspace*{7em}
\begin{center}
{\Large \spacedallcaps{is it really worth the trouble?}
\bigbreak}
An assessment of spent time adjusting badly
implemented \LaTeX{} templates \\[2em]
{\scriptsize \spacedlowsmallcaps{The author}}
\end{center}
\end{titlepage}
\tableofcontents
\addchap{Résumé}
Résumé de la thèse en français\dots
\blindtext[13]
\vfill
\fakechap{Summary}
No, simple as that.
\blindtext
\vfill
\end{document}}
The titlepage looks ok, but---having an up to date TeX
installation---we get a huge warning and looking at the next page
we are shocked. Our predefined fakechap doesn't match.
classicthesis
loads package titlesec
which is incompatible
with KOMA. titlesec
adds features to the LaTeX standard
classes, memoir
has its own way of customizing things, KOMA
as well. Some functionality is broken.
How to make a solid titlepage?
For advanced users
If the layout of the titlepage is fixed by some rules or
guidelines of a corporate design, we need to make sure the user
doesn't change the appearance.
We use the same concept of defining a titlepage, but hide it in a
package file (or possibly a class file). Just like the standard
classes, we define a set of macros for the user (author
,
title
, degree
etc.). The user can input his or her data in
the document with
no need to care about what is going on in the background and can
just call \maketitle
.
A very basic and
non-advanced example:
\begin{filecontents}{domititlepage.sty}
\ProvidesPackage{domititlepage}[2014/11/03 titlepages domi style]
%There is absolutely no warranty for this demo package
% https://tex.stackexchange.com/questions/209993/how-to-add-a-flyleaf-code/210280#210280
\RequirePackage{etoolbox}
\ifundef{\KOMAClassName}{
\@ifclassloaded{memoir}{\PackageWarningNoLine{domititlepage}{Using
memoir. Memoir has its own mechanism of
generating stuff. Not loading
`scrextend'. Aborting now}
\endinput
}{
\typeout{You seem to be using a standard class.
Using package `scrextend' for nice
features}
\RequirePackage[extendedfeature=title]{scrextend}
}
\typeout{non-KOMA branch}
}{
\typeout{Using a KOMA class, no need to load package scrextend}
}
\newcommand{\@supervisor}{}
\newcommand{\supervisor}[1]{\gdef\@supervisor{#1}}
\newkomafont{supervisor}{\normalfont\normalsize}
\newcommand{\@degree}{}
\newcommand{\degree}[1]{\gdef\@degree{#1}}
\newkomafont{degree}{\normalfont\normalsize}
\newcommand*{\@thanksnote}{}
\newcommand*{\thanksnote}[1]{\gdef\@thanksnote{#1}}
\newkomafont{thanksnote}{\small\itshape}
\newcommand{\@@thanksnote}{\begin{minipage}{\linewidth}
\usekomafont{thanksnote}\@thanksnote\par\end{minipage}\par}
\renewcommand{\maketitle}{%
\begin{titlepage}
\setlength{\parindent}{\z@}
\setlength{\parskip}{\z@}
\typeout{Typesetting the titlepage}
\vspace{-1em}
\begin{minipage}[t]{\textwidth}
\centering
University for theoretical and applied animal dance in Duckburg\par
\end{minipage}\par
\vspace{7em}
{\LARGE\centering\usefont{T1}{qcs}{b}{n} \@title\par}
\vspace{5em}
{\usekomafont{author}\centering \@author\par}
\vspace{2em}
\ifx\@degree\@empty \else
{\centering\usekomafont{degree}\@degree\par}
\fi
\next@tpage
\ifx\@thanksnote\@empty\hbox{} \else
{\@@thanksnote}
\fi
\vfill
\begin{minipage}{10em}
\raggedright
\usefont{T1}{qcr}{m}{n}
No animals were harmed
during the production of
this printed work\par
\end{minipage}
\end{titlepage}%
}
\end{filecontents}
\documentclass{scrbook}
\usepackage{domititlepage}
\usepackage{blindtext}
\author{Paulo Lee Peterson}
\title{Polka loving Platypus}
%\degree{Master of Stuff}
%\thanksnote{Thanks to Daisy for her support}
\begin{document}
\maketitle
\chapter{Introduction to Polka dancing}
\blindtext
\end{document}
The above uses a little trick to save us time, it writes the
contents of the first environment (filecontents) to a new file
(called domititlepage.sty
), which gives us a solid LaTeX-package
the user can load in the preamble.
The heading of this section said something about a solid method,
right before the example, i said it is non-advanced. What is
going on? We are defining some simple to remember commands like
author
and degree
. As the appearance of the titlepage is
given and therefore fixed, it doesn't matter in which order the
user types in its data, our \maketitle
command takes care of
typesetting everything where it is supposed to be according to
the guidelines. A few things a kept variable. There is an easy
to use interface to set the font of some elements provided by
KOMA-scripts font selection features. The user can decide whether
he wants to give a thanksnote or leave that out. The package
handles this.
Almost all code is hidden from the user, who might be
intimidated, hence the user cannot change anything without a bit
of effort. This seems to be quite solid, so why is it non
advanced? The above is a syntax/language mix-up of TeX
,
LaTe2eX
and maybe a bit of LaTeX3 in the future. This is quite
bad style.
The Rock Solid Method
The author of KOMA-script started a project called titlepage
a
few years back collecting different titlepages, defining
different languages and hence making the titlepages rock solid.
The zip folder can be downloaded at the KOMA-project
website.
Package titlepage
provides a new interface for \maketitle
making it possible to give the relevant information in a quite
handy key-value-syntax. Not all styles (loaded by
\TitlePageStyle{<style>}
) support all possible fields.
The thing is though, in order to get the titlepage of your
university available with the titlepage
package, you need to
get in contact with the author of KOMA-script.
%% Copyright (c) 2011 by Markus Kohm <komascript(at)gmx.info>
\documentclass[a4paper,pagesize]{scrbook}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[demo]{graphicx}% remove option demo if you have the logo
\usepackage{xcolor}
\usepackage{titlepage}
\begin{document}
\TitlePageStyle{KIT}
\maketitle[%
mainlogo={\textcolor{red}{%
\includegraphics[width=40mm,height=18.5mm]{KITLogo_RGB}}},%
% You may additionally change titlehead. Original definition of titlehead
% is:
titlehead={\usetitleelement{mainlogo}\hspace*{\fill}},%
title=\textcolor{red}{Titel der Arbeit\\im Stil \texttt{KIT}},%
subject=\textcolor{red}{Klassifizierung der Arbeit},%
author=\textcolor{red}{Markus~Kohm},%
faculty=\textcolor{red}{Fakultät für Informatik},%
chair=\textcolor{red}{%
Institute for Program Structures\\and Data Organization (IPA)},%
advisor={\textcolor{red}{Titel Vorname Nachname}\and
\textcolor{red}{Titel Vorname Nachname}},%
referee={\textcolor{red}{Titel Vorname Nachname}\and
\textcolor{red}{Titel Vorname Nachname}},%
duration=\textcolor{red}{XX. Monat 20XX -- XX. Monat 20XX},%
university=\textcolor{red}{\KITlongname},%
homepage=\textcolor{red}{\KITurl}%
]
\end{document}
Further reading
The Wikibook page on Title Creation, you can find some more examples linked there