LaTeX/Title Creation
For documents such as basic articles, the output of \maketitle
is often adequate, but longer documents (such as books and reports) often require more involved formatting. We will detail the process here.
There are several situations where you might want to create a title in a custom format, rather than in the format natively supported by LaTeX classes. While it is possible to change the output of \maketitle
, it can be complicated even with minor changes to the title. In such cases it is often better to create the title from scratch, and this section will show you how to accomplish this.
Standard Titles
editMost document classes provide a simple interface to store details to be represented in the title and to typeset the actual title. The standard classes provide just four storing commands (\title
, \author
\thanks
and \date
). You can store any information you want to be shown in the title, including formatting.
The actual title will be typeset by issuing the command \maketitle
. The layout is defined by the documentclass in use.
\documentclass{article}% use option titlepage to get the title on a page of its own.
\usepackage{blindtext}
\title{The Triangulation of Titling Data in Non-Linear Gaussian Fashion via $\rho$ Series\thanks{No procrastination}}
\date{2017\\ December}
\author{John Doe\\ Magic Department\thanks{I am no longer a member of this department}, Richard Miles University
\and Richard Row, \LaTeX\ Academy}
\begin{document}
\maketitle
\section{Introduction}
\blindtext
\end{document}
|
The command \thanks
will store content, which will produce a footnote along with the title. As the name suggests, it can be used to thank someone. Or just to print an email address or similar in a footnote.
The authors are separated by the command \and
, allowing author blocks to be output next to each other. In the example above, there is not enough horizontal space to fit both authors on the same line.
If \date
was not defined, LaTeX will print the current date. If you want to omit the date completely, use \date{}
, which stores an empty string.
The commands to store your title data can be used in the preamble. Since \maketitle
does actual output, it needs to be used after \begin{document}
. Usually, the title is the first thing in a document.
Please see examples for KOMA-script and memoir
classes below. Both provide (different) commands to change the appearance of the title. Learn later how to completely design your own titlepage.
\documentclass{scrbook}
\setkomafont{author}{\scshape}
\usepackage{blindtext}
\title{How hard would it be to build a spaceship from scrap}
\author{Carl Capybara\thanks{I never procrastinate} \and Walter Wombat}
\subtitle{A closer look at the expenses}
\subject{a funny paper}
\begin{document}
\maketitle
\addchap{Introduction}
\blindtext
\end{document}
|
\documentclass{memoir}% use option titlepage to get the title on a page of its own.
\usepackage{blindtext}
\title{The influence of colour on the floating velocity of rubber ducks}
\author{Peter Piranha}
\renewcommand{\maketitlehookb}{\centering You won't expect the results}
\begin{document}
\maketitle
\chapter{Introduction}
\blindtext
\end{document}
|
As usual, the class documentation reveals more details about the possible commands.
The title for journal submission
editJournals follow a specific layout. To ensure this they often provide a template which defines the layout. What is available for the title (for example emails, affiliation names, keywords) heavily depends on the template and highly differs between different journals. Follow the template if the journal provides one. If they don't you should use the most basic concepts of LaTeX titles described above.
Create a custom title for a report or book
editThe title page of a book or a report is the first thing a reader will see. Keep that in mind when preparing your title page.
You need to know very basic LaTeX layout commands in order to get your own title page perfect. Usually a custom titlepage does not contain any semantic markup, everything is hand crafted. Here are some of the most often needed things:
- Alignment
If you want to center some text just use \centering
. If you want to align it differently you can use the environment \raggedleft
for right-alignment and \raggedright
for left-alignment.
- Images
The command for including images (a logo for example) is the following : \includegraphics[width=0.15\textwidth]{./logo}
. There is no \begin{figure}
as you would usually use since you don't want it to be floating, you just want it exactly where want it to be. When handling it, remember that it is considered like a big box by the TeX engine.
- Text size
If you want to change the size of some text just place it within braces, {like this}, and you can use the following commands (in order of size): \Huge
, \huge
, \LARGE
, \Large
, \large
, \normalsize
, \small
, \footnotesize
, \tiny
. So for example:
{\large this text is slightly bigger than normal}, this one is not.
|
Remember, if you have a block of text in a different size, even if it is a bit of text on a single line, end it with \par
.
- Filling the page
The command \vfill
as the last item of your content will add empty space until the page is full. If you put it within the page, you will ensure that all the following text will be placed at the bottom of the page.
A practical example
editAll these tips might have made you confused. Here is a practical and compliable example. The picture in use comes with package mwe
and should be available with every complete LaTeX installation. You can start testing right away.
\documentclass[12pt,a4paper]{report}
\usepackage{mwe}
\begin{document}
\begin{titlepage}
\centering
\includegraphics[width=0.15\textwidth]{example-image-1x1}\par\vspace{1cm}
{\LARGE \textsc{Columbidae University}\par}
\vspace{1cm}
{\Large \textsc{Final year project}\par}
\vspace{1.5cm}
{\huge\bfseries Pigeons love doves\par}
\vspace{2cm}
{\Large\itshape John Birdwatch\par}
\vfill
supervised by\par
Dr.~Mark \textsc{Brown}
\vfill
% Bottom of the page
{\large \today\par}
\end{titlepage}
\end{document}
|
As you can see, the code looks "dirtier" than standard LaTeX source because you have to take care of the output as well. If you start changing fonts it gets even more complicated, but you can do it: it's only for the title and your complicated code will be isolated from all the rest within its own file.
The result is shown below
Integrating the title page
editA title page for a book or a report to get a university degree {Bachelor, Master, Ph.D., etc.) is quite static, it doesn't really change over time. You can prepare the titlepage in its own little document and prepare a one page pdf that you later include into your real document. This is really useful, if the title page needs to have completely different margins compared to the rest of the document. It also saves compile time, though it is not much.
Assuming you have done the title page of your report in an extra document, let's pretend it is called reportTitlepage2016.pdf
, you can include it quite simply. Here is a short document setup.
\documentclass{report}
\usepackage{pdfpages}
\begin{document}
\includepdf{reportTitlepage2016}
\tableofcontents
\chapter{Introducing birds}
\end{document}
|
A title to be re-used multiple times
editSome universities, departments and companies have strict rules how a title page of a report should look. To ensure the very same output for all reports, a redefinition of the \maketitle
command is recommended.
This is best done by an experienced LaTeX user. A simple example follows, as usual there is no real limit with respect to complexity.
As a starting point, a LaTeX package called columbidaeTitle.sty
is generated that defines the complete title matter. It will later be hidden from the end user. Ideally, the person creating the package should maintain it for a long time, create an accompanying documentation and ensure user support.
% Copyright note: This package defines how titles should
% be typeset at the columbidae University
% Please check for updates
\ProvidesPackage{columbidaeTitle}[2015/08/10 v.01 an
example package^^J for wikibooks]
\RequirePackage{graphicx}
\newcommand*{\project}[1]{\gdef\@project{#1}%
}
\newcommand*{\@project}{Final Year Project}
\newcommand*{\supervisor}[1]{\gdef\@supervisor{#1}%
}
\newcommand*{\@supervisor}{\texttt{\string\supervisor} currently
not set. Please fix this.}
\renewcommand*{\maketitle}{%
\begin{titlepage}
{\raggedleft%
\includegraphics[width=3cm]{example-image-16x9}\par
}\vspace{1cm}
\centering
{\scshape\LARGE Columbidae University \par}
\vspace{1cm}
{\scshape\Large\@project\unskip\strut\par}
\vspace{1.5cm}
{\huge\bfseries\@title\unskip\strut\par}
\vspace{2cm}
{\Large\itshape\@author\unskip\strut\par}
\vfill
supervised by\par
\@supervisor\unskip\strut\par
\vfill
{\large \@date\par}
\end{titlepage}
}
\endinput
|
This package can be loaded within a usual document. The user can set the variables for title
and the like. Which commands are actually available, and which might be omissible should be written in a documentation that is bundled with the package.
Look around what happens if you leave one or the other command out.
\documentclass{book}
\usepackage{columbidaeTitle}
%\supervisor{Dr. James Miller}
\project{Bachelor Thesis}
\author{A LaTeX enthusiast}
\title{Why I want to be a duck}
\begin{document}
\maketitle
\tableofcontents
\chapter{Ducks are awesome}
\end{document}
|
Packages for custom titles
editThe titling package[1] provides control over the typesetting of the \maketitle
and \thanks
commands. It is useful for small changes to the standard output.
Italian users may also want to use the frontespizio package[2]. It defines a frontispiece as used in Italy.
Package authblk [3] provides new means to typeset the authors. This is especially helpful for journal submissions without an available template.
More titlepage examples
editThe titlepages package presents many different styles for title pages.
TeX.SE has a collection of titlepages.
Another small collection can be found on Github.
Notes and References
edit