Kokonainen kirja

LaTeX tarjoaa monia työkaluja kokonaisen kirjan tekemiseen. Tärkeimmät ovat seuraavat:

Lisäpaketeilla voidaan vaikuttaa sivujen ulkoasuun, kuviin yms. monin tavoin.

Jos kirjallisusviitteet kerätään tietokannasta, tarvitaan bibtex-ohjelma, joka yleensä kuuluu LaTeX-distribuutioihin. Hakemiston tekoa varten tarvitaan makeindex-ohjelma, joka myös kuuluu LaTeX-distribuutioihin, mutta jossa ei ole tukea aksentoiduille merkeille (kuten ä ja ö). Unix- (Linux-) ympäristössä voidaan tämän sijasta käyttää xindy-nimistä ohjelmaa, jossa on monipuolinen tuki eri kielille ja merkistöille.

Kirjan teksti on syytä jakaa esimerkiksi luvuittain eri tiedostoihin, jotka ladataan päätiedostossa \include-komennolla.

Seuraava esimerkki on erään kirjaprojektin päätiedosto. Se ei anna lähimainkaan tyhjentävää ohjetta kirjan tekemiseen, mutta antanee kuitenkin jonkinlaisen mielikuvan. Tarkemmat tiedot on haettava esimerkiksi The LaTeX Companionista.

\documentclass[12pt]{book}
\usepackage[finnish]{babel}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage[a4paper,text={140mm,220mm},top=40mm,head=15pt,bindingoffset=15mm]{geometry}

   %%%%% Useita lisäpaketteja; kaksi viimeistä ovat tekijän koostamia
   %%%%% (matemaattisia merkintöjä ja kirjan taittoon liittyviä määrittelyjä).
\usepackage{ae,amsmath,amssymb,subfig,gensymb,tocbibind,matht,persp}
\usepackage[pdftex]{graphicx}
\usepackage{makeidx}

   %%%%% Kirja ajetaan pdf-tiedostoksi, jossa myös linkit toimivat.
\usepackage[pdftex]{hyperref}

\setlength{\parskip}{\medskipamount}
\setlength{\parindent}{0pt}
\setlength{\emergencystretch}{5mm}

   %%%%% Hakemisto, jossa kuvat sijaitsevat.
\graphicspath{{kuvat/}}

   %%%%% Poistamalla komenttimerkki % rivin alusta saadaan ajetuksi vain
   %%%%% kyseinen luku, mutta ristiinviittaukset muihin lukuihin ovat
   %%%%% käytettävissä.
%\includeonly{01}

   %%%%% Käsketään tekemään hakemistotiedosto, joka myöhemmin käsitellään
   %%%%% xindy-ohjelmalla.
\makeindex

   %%%%% Poistamalla kommenttimerkki estetään aiemmin muodostettujen
   %%%%% sisällysluettelo- ja muiden vastaavien tiedostojen uudelleen
   %%%%% muodostaminen.
%\nofiles

   %%%%% Metatiedot pdf-dokumenttiin.
\hypersetup{%
pdftitle={Perspektiivikuvan geometriset perusteet},
pdfsubject={},
pdfauthor={Simo K. Kivelä},
colorlinks=true,
linkcolor=black,
citecolor=black,
urlcolor=blue,
pdfstartview={FitH 800}
}

\begin{document}

\include{nimilehti}
\include{esipuhe}
\tableofcontents            %%%%% Sisällysluettelon muodostaminen.
\include{01}                %%%%% Eri lukujen lataus.
\include{02}
\include{03}
\include{04}
\include{05}
\include{06}
\include{07}
\include{08}
\nocite{nystromPersp}       %%%%% Tietokannasta kirjallisuusluetteloon haettavat
\nocite{hohenberg}          %%%%% teokset, joihin ei ole eksplisiittistä viittausta.
\nocite{wunderlich1}
\nocite{wunderlich2}
\nocite{tuomolaursinus}

{\let\MakeUppercase\relax   %%%%% Rumanpuoleinen trikki!
\include{bib}               %%%%% Kirjallisuusluettelon määrittelytiedosto.
\listoffigures              %%%%% Kuvaluettelon muodostaminen.
\printindex                 %%%%% Hakemiston liittäminen mukaan (ajettava ensin xindyllä).
}

\end{document}

Lopuksi esimerkkinä kirjan taittoon yms. liittyvät määrittelyt tiedostosta persp.sty.

\renewcommand{\tocetcmark}[1]{\@mkboth{{#1}}{{#1}}}

\usepackage{fancyhdr,ifthen}

\pagestyle{fancy}                         %%%%% Sivun ala- ja ylätunnisteet.
\fancyhf{}
\renewcommand{\sectionmark}[1]{\markboth{\textrm{\small \thesection\ #1}}{}}
\renewcommand{\chaptermark}[1]{\markboth{\textrm{\small \thechapter\ #1}}{}}
\fancyhead[LE,RO]{\leftmark}
\fancyfoot[LE,RO]{\thepage}
\renewcommand{\headrulewidth}{0.4pt}
\renewcommand{\footrulewidth}{0pt}
\fancypagestyle{plain}{%
\fancyhf{}
\fancyhead[LE,RO]{\leftmark}
\fancyfoot[LE,RO]{\thepage}
\renewcommand{\headrulewidth}{0.4pt}
\renewcommand{\footrulewidth}{0pt}}

\renewcommand{\topfraction}{1.0}          %%%%% Taittomäärittelyjä.
\renewcommand{\bottomfraction}{1.0}
\renewcommand{\textfraction}{0.0}

\newcommand{\kuva}[4][*]{%                %%%%% Kuvien asemointi.
\begin{figure}[ht]
\begin{center}
\includegraphics#2
\ifthenelse{\equal{#1}{*}}{\caption{#4}}{\caption[#1]{#4}}
\label{#3}
\end{center}
\end{figure}
}

\newcommand{\kuvat}[5][*]{%
\begin{figure}[ht]
\begin{center}
\includegraphics#2\hspace{10mm}\includegraphics#3
\ifthenelse{\equal{#1}{*}}{\caption{#5}}{\caption[#1]{#5}}
\label{#4}
\end{center}
\end{figure}
}

SKK    25.08.2011