LaTeX/Title Creation
From Wikibooks, the open-content textbooks collection
There are several situations where you might want to vary the title from its default format. For shorter 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. 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.
[edit] Create the title
Normally, the benefit of using LaTeX instead of traditional word processing programs is that LaTeX frees you to concentrate on content by handling margins, justification, and other typesetting concerns. On the other hand, if you want to write your own title format, it is exactly the opposite: you have to take care of everything--this time LaTeX will do nothing to help you. It can be challenging to create your own title format since LaTeX was not designed to be graphically interactive in the adjustment of layout. The process is similar to working with raw HTML with the added step that each time you want to see how your changes look, you have to re-compile the source. While this may seem like a major inconvenience, the benefit is that once the customized title format has been written, it serves as a template for all other documents that would use the title format you have just made. In other words, once you have a layout you like, you can use it for any other documents where you would like the same layout without any additional fiddling with layout.
First step: since you'll be working only on the first page of your document and you'll have to compile very often, you don't have to compile the whole document each time, you only need to take a look at the first page. That is why we'll first create a dummy document for preparing the title and then we'll simply include it within the existing big document we are writing. Call the dummy document test_title.tex and put the following code in it:
\documentclass[pdftex,12pt,a4paper]{report} \usepackage[pdftex]{graphicx} \newcommand{\HRule}{\rule{\linewidth}{0.5mm}} \begin{document} \input{./title.tex} \end{document}
It is meant to be compiled with pdflatex to create a PDF in output. It is a very basic document, but take care that it has the same settings of the document you are writing, so the output won't change when you include the title in your document. In this case (see the first line) the font size is set to 12pt and the paper size is an A4. The package graphicx is included to insert an image in the title. Then a command is defined called \HRule; it will just insert a horizontal line whose length is like the size of the paper and whose thickness is 0.5 mm. If you want you can change its settings in the definition. Finally the document starts and it simply includes the title.tex file, that must be placed in the same directory of our dummy file test_title.tex.
Now create the title.tex and write in it:
\begin{titlepage} \end{titlepage}
all the things you want to put in the title must be inside the titlepage environment. Now if you compile test_title.tex you will see a preview of your title in the test_title.pdf file. Here is what you need to know to write your title:
- Alignment: if you want to center some text just use
\begin{center} ... \end{center}. If you want to align it differently you can use the environmentflushrightfor right-alignment andflushleftfor left alignment. - Images: the command for including images is the following (the example is for a small logo, but you can introduce any image of any size):
\includegraphics[width=0.15\textwidth]{./logo}. There is no\begin{figure}as you usually do because you don't want it to be floating, you just want it there where you placed it. 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 brackets, {like this}, and you can use the following commands (in order of size):
\HUGE,\Huge,\LARGE,\Large,\large,\small,\tiny. So for example:{\large this text is slightly bigger than normal}, this one is not - New lines: you can force the start of a new line by
\\. If you want to add more vertical space you don't need to use several new-line commands, just insert some vertical space. For example, this way\\[1cm]you start a new line after having left 1 cm of empty space. - Date: you can insert the date of the current day with the command
\today. - Filling the page: the command
\vfillkeeps on adding empty spaces until the page is full. If you put it in the page, you are sure that all the following text will be placed at the bottom of the page.
[edit] A practical example
All these tips might have made you confused. Then, here is a practical example. Get the test_title.tex described above and here is an example of a title.tex. On the right you can see the output after you compile test_title.tex in PDF:
\begin{titlepage} \begin{center} % Upper part of the page \includegraphics[width=0.15\textwidth]{./logo}\\[1cm] \textsc{\LARGE University of Beer}\\[1.5cm] \textsc{\Large Final year project}\\[0.5cm] % Title \HRule \\[0.4cm] { \huge \bfseries Lager brewing techniques}\\[0.4cm] \HRule \\[1.5cm] % Author and supervisor \begin{minipage}{0.4\textwidth} \begin{flushleft} \large \emph{Author:}\\ John \textsc{Smith} \end{flushleft} \end{minipage} \begin{minipage}{0.4\textwidth} \begin{flushright} \large \emph{Supervisor:} \\ Dr. Mark \textsc{Brown} \end{flushright} \end{minipage} \vfill % Bottom of the page {\large \today} \end{center} \end{titlepage} |
The picture is from a file called logo.png that is in the same directory of both title.tex and test_title.tex. Since I wanted to insert both the author and supervisor names properly aligned I used a trick: I created two small minipages, one on left and one on the right. Their width is a bit less than half of page width (as you can see, they are exactly 40% of the text width). Within the minipages I have used different alignments. Using \vfill I could write the date exactly at the bottom of the page.
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 font's output it will get more confused, 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 title.tex.
[edit] Insert it in your document
Once you have your title.tex ready, simply place it in the folder of your document and insert it with \input{./title.tex}. Don't forget to add the commands \usepackage[pdftex]{graphicx} and \newcommand{\HRule}{\rule{\linewidth}{0.5mm}}, otherwise you might get an error. So the beginning of your document should look like:
... \usepackage[pdftex]{graphicx} \newcommand{\HRule}{\rule{\linewidth}{0.5mm}} \begin{document} \input{./title.tex} \tableofcontents ...
| Previous: Document Structure | Index | Next: Bibliography Management |

