% ======================================================================
% typearea.tex
% Copyright (c) Markus Kohm, 2001-2009
%
% This file is part of the LaTeX2e KOMA-Script bundle.
%
% This work may be distributed and/or modified under the conditions of
% the LaTeX Project Public License, version 1.3c of the license.
% The latest version of this license is in
%   http://www.latex-project.org/lppl.txt
% and version 1.3c or later is part of all distributions of LaTeX 
% version 2005/12/01 or later and of this work.
%
% This work has the LPPL maintenance status "author-maintained".
%
% The Current Maintainer and author of this work is Markus Kohm.
%
% This work consists of all files listed in manifest.txt.
% ----------------------------------------------------------------------
% typearea.tex
% Copyright (c) Markus Kohm, 2001-2009
%
% Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz,
% Version 1.3c, verteilt und/oder veraendert werden.
% Die neuste Version dieser Lizenz ist
%   http://www.latex-project.org/lppl.txt
% und Version 1.3c ist Teil aller Verteilungen von LaTeX
% Version 2005/12/01 oder spaeter und dieses Werks.
%
% Dieses Werk hat den LPPL-Verwaltungs-Status "author-maintained"
% (allein durch den Autor verwaltet).
%
% Der Aktuelle Verwalter und Autor dieses Werkes ist Markus Kohm.
% 
% Dieses Werk besteht aus den in manifest.txt aufgefuehrten Dateien.
% ======================================================================
%
% Chapter about typearea of the KOMA-Script guide
% Maintained by Markus Kohm
%
% ----------------------------------------------------------------------
%
% Kapitel über typearea in der KOMA-Script-Anleitung
% Verwaltet von Markus Kohm
%
% ======================================================================


\ProvidesFile{typearea.tex}[2009/01/06 KOMA-Script guide (chapter: typearea)]
\chapter{Satzspiegelberechnung mit \Package{typearea.sty}}
\labelbase{typearea}

Viele \LaTeX-Klassen, darunter auch die Standardklassen, bieten dem Anwender
eine weitgehend feste Auf"|teilung von Rändern und Textbereich. Bei den
Standardklassen ist die konkrete Auf"|teilung in engen Grenzen von der gewählten
Schriftgröße abhängig. Darüber hinaus gibt es Pakete wie
\Package{geometry}\IndexPackage{geometry} (siehe \cite{package:geometry}), die
dem Anwender die volle Kontrolle, aber auch die Verantwortung für die
Einstellungen des Textbereichs und der Ränder überlassen.

\KOMAScript{} geht mit dem Paket \Package{typearea} einen etwas anderen
Weg. Hier werden basierend auf einer in der Typografie etablierten
Konstruktion Einstellmöglichkeiten und Automatismen geboten, die es dem
Anwender erleichtern, eine gute Wahl zu treffen.

Es wird darauf hingewiesen, dass sich \Package{typearea} des Pakets
\Package{scrbase} bedient. Letzteres Paket ist im Expertenteil \iffree{dieser
  Anleitung}{dieses Buches} in \autoref{cha:scrbase} ab
\autopageref{cha:scrbase} erklärt. Die Mehrzahl der dort dokumentierten
Anweisungen richten sich jedoch nicht an Anwender, sondern an Klassen- und
Paketautoren.


\section{Grundlagen der Satzspiegelkonstruktion}
\label{sec:typearea.basics}

\begin{Explain}
  Betrachtet man eine einzelne Seite eines Buches oder eines anderen
  Druckwerkes, so besteht diese auf den ersten Blick aus den Rändern%
  \iffalse% Umbruchkorrekturtext
  \footnote{Der Autor und der Lektor haben an dieser Stelle überlegt, ob eine
    Seite nicht nur einen umlaufenden Rand hat und daher von »dem Rand« die
    Rede sein müsste. Da jedoch \LaTeX{} diesen einen Rand logisch in mehrere
    Ränder unterteilt, die getrennt bestimmt werden, ist hier auch von »den
    Rändern« die Rede.}%
  \fi%
  , einem Kopfbereich, einem Textkörper und einem Fußbereich.  Genauer
  betrachtet kommt noch ein Abstand zwischen Kopfbereich und Textkörper sowie
  zwischen Textkörper und Fußbereich hinzu.  Der Textkörper heißt in der
  Fachsprache der Typografen und Setzer \emph{Satzspiegel}. Die Auf"|teilung
  dieser Bereiche, sowie ihre Anordnung zueinander und auf dem Papier nennen
  wir \emph{Satzspiegeldefinition} oder
  \emph{Satzspiegelkonstruktion}.\Index[indexmain]{Satzspiegel}
  
  In der Literatur werden verschiedene Algorithmen und heuristische Verfahren
  zur Konstruktion eines guten Satzspiegels vorgeschlagen und diskutiert
  \ifx\BUCH\undefined\cite{DANTE:TK0402:MJK}\else(siehe
  \autoref{cha:typeareaconstruction})\fi. Häufig findet man dabei ein
  Verfahren, das mit verschiedenen Diagonalen und Schnittpunkten arbeitet. Das
  gewünschte Ergebnis dabei ist, dass das Seitenverhältnis des Satzspiegels
  dem Seitenverhältnis \emph{der Seite} entspricht. Bei einem
  einseitigen\Index{einseitig} Dokument sollen außerdem der linke und der
  rechte Rand gleich breit sein, während der obere zum unteren Rand im
  Verhältnis 1:2 stehen sollte. Bei einem doppelseitigen\Index{doppelseitig}
  Dokument, beispielsweise einem Buch, ist hingegen zu beachten, dass der
  gesamte innere Rand genauso groß sein sollte wie jeder der beiden äußeren
  Ränder. Eine einzelne Seite steuert dabei jeweils nur die Hälfte des inneren
  Randes bei.
  
  Im vorherigen Absatz wurde \emph{die Seite} erwähnt und
  hervorgehoben. Irrtümlich wird oftmals angenommen, das Format der Seite wäre
  mit dem Format des Papiers gleichzusetzen.\Index[indexmain]{Seitenformat}
  \Index[indexmain]{Papierformat} Betrachtet man jedoch ein gebundenes
  Druckerzeugnis, so ist zu erkennen, dass ein Teil des Papiers in der
  Bindung\Index[indexmain]{Bindung} verschwindet und nicht mehr als Seite zu
  sehen ist. Für den Satzspiegel ist jedoch nicht entscheidend, welches Format
  das Papier hat, sondern, was der Leser für einen Eindruck vom Format der
  Seite bekommt. Damit ist klar, dass bei der Berechnung des Satzspiegels der
  Teil, der durch die Bindung versteckt wird, aus dem Papierformat
  herausgerechnet und dann zum inneren Rand hinzugefügt werden muss. Wir
  nennen diesen Teil \emph{Bindekorrektur}.\Index[indexmain]{Bindekorrektur}
  Die Bindekorrektur ist also rechnerischer Bestandteil des
  \emph{Bundstegs}\Index[indexmain]{Bundsteg}, nicht jedoch des sichtbaren
  inneren Randes.

  Die Bindekorrektur ist vom jeweiligen Produktionsvorgang abhängig und kann
  nicht allgemein festgelegt werden. Es handelt sich dabei also um einen
  Parameter, der für jeden Produktionsvorgang neu festzulegen ist. Im
  professionellen Bereich spielt dieser Wert nur eine geringe Rolle, da
  ohnehin auf größere Papierbögen gedruckt und entsprechend geschnitten
  wird. Beim Schneiden wird dann wiederum sichergestellt, dass obige
  Verhältnisse für die sichtbare Doppelseite eingehalten sind.

  Wir wissen nun also, wie die einzelnen Teile zueinander stehen.  Wir wissen
  aber noch nicht, wie breit und hoch der Satzspiegel ist.  Kennen wir eines
  dieser beiden Maße, so ergeben sich zusammen mit dem Papierformat und dem
  Seitenformat oder der Bindekorrektur alle anderen Maße durch Lösung mehrerer
  mathematischer Gleichungen.
  \begin{align*}
    \Var{Satzspiegelhöhe}\Index{Satzspiegel} : \Var{Satzspiegelbreite} &=
      \Var{Seitenhöhe}\Index{Seite} : \Var{Seitenbreite} \\
    \Var{oberer~Rand}\Index{Rand} : \Var{unterer~Rand} &= 
      \text{1} : \text{2} \\
%
    \Var{linker~Rand} : \Var{rechter~Rand} &= \text{1} : \text{1} \\
%
    \Var{innerer~Randanteil} : \Var{äußerer~Rand} &= \text{1} : \text{2} \\
%
    \Var{Seitenbreite} &= 
      \Var{Papierbreite}\Index{Papier} - 
      \Var{Bindekorrektur}\Index{Bindekorrektur}\\
%
    \Var{oberer~Rand} + \Var{unterer~Rand} &=
      \Var{Seitenhöhe} - \Var{Satzspiegelhöhe} \\ 
%
    \Var{linker~Rand} + \Var{rechter Rand} &=
      \Var{Seitenbreite} - \Var{Satzspiegelbreite} \\
%
    \Var{innerer Randanteil} + \Var{äußerer Rand} &=
      \Var{Seitenbreite} - \Var{Satzspiegelbreite} \\
%
    \Var{innerer~Randanteil} + \Var{Bindekorrektur} &= 
      \Var{Bundsteg}\index{Bundsteg}
  \end{align*}
  \Index[indexmain]{Rand}%
  Dabei gibt es \Var{linker~Rand} und \Var{rechter~Rand} nur im einseitigen
  Druck. Entsprechend gibt es \Var{innerer~Randanteil} und
  \Var{äußerer~Rand} nur im doppelseitigen Druck. In den Gleichungen
  wird mit \Var{innerer~Randanteil} gearbeitet, weil der ganze innere Rand zur
  Doppelseite gehört. Zu einer Seite gehört also nur die Hälfte des inneren
  Randes, \Var{innerer~Randanteil}.

  Die Frage nach der Breite des Satzspiegels wird in der Literatur
  ebenfalls diskutiert. Die optimale Satzspiegelbreite ist von
  verschiedenen Faktoren abhängig:
  \begin{itemize}
  \item Größe, Laufweite und Art der verwendeten Schrift
  \item Verwendeter Durchschuss
  \item Länge der Worte
  \item Verfügbarer Platz
  \end{itemize}
  Der Einfluss der Schrift wird deutlich, wenn man sich bewusst macht,
  wozu Serifen dienen. Serifen\Index[indexmain]{Serifen} sind kleine
  Striche an den Linienenden der Buchstaben. Buchstaben, die mit
  vertikalen Linien auf die Grundlinie der Textzeile treffen,
  lösen diese eher auf, als dass sie das Auge auf der Linie halten.
  Genau bei diesen Buchstaben liegen die Serifen horizontal auf
  der Grundlinie und verstärken damit die Zeilenwirkung der Schrift.
  Das Auge kann der Textzeile nicht nur beim Lesen der Worte, sondern
  insbesondere auch beim schnellen Zurückspringen an den Anfang der
  nächsten Zeile besser folgen. Damit darf die Zeile bei einer Schrift
  mit Serifen genau genommen länger sein als bei einer Schrift ohne Serifen.
  
  Unter dem Durchschuss\Index[indexmain]{Durchschuss} versteht man den
  Abstand zwischen Textzeilen. Bei \LaTeX{} ist ein Durchschuss von
  etwa 20\,\% der Schriftgröße voreingestellt. Mit Befehlen wie
  \Macro{linespread}\IndexCmd{linespread} oder besser mit Hilfe von
  Paketen wie \Package{setspace}\IndexPackage{setspace} (siehe
  \cite{package:setspace}) kann der Durchschuss verändert werden. Ein
  großer Durchschuss erleichtert dem Auge die Verfolgung einer Zeile.
  Bei sehr großem Durchschuss wird das Lesen aber dadurch gestört,
  dass das Auge zwischen den Zeilen weite Wege zurücklegen muss.
  Daneben wird sich der Leser des entstehenden Streifeneffekts sehr
  deutlich und unangenehm bewusst. Der Graueindruck der Seite ist in
  diesem Fall gestört. Dennoch dürfen bei großem Durchschuss die
  Zeilen länger sein.
  
  Auf der Suche nach konkreten Werten für gute
  Zeilenlängen\Index[indexmain]{Zeilenlaenge=Zeilenlänge} findet man in der
  Literatur je nach Autor unterschiedliche Angaben. Teilweise ist dies auch in
  der Muttersprache des Autors begründet. Das Auge springt nämlich
  üblicherweise von Wort zu Wort, wobei kurze Worte diese Aufgabe
  erleichtern. Über alle Sprachen und Schriftarten hinweg kann man sagen, dass
  eine Zeilenlänge von 60 bis 70 Zeichen, einschließlich Leer- und
  Satzzeichen, einen brauchbaren Kompromiss darstellen. Ein gut gewählter
  Durchschuss wird dabei vorausgesetzt. Bei den Voreinstellungen von \LaTeX{}
  braucht man sich über Letzteres normalerweise keine Sorgen zu
  machen. Größere Zeilenlängen darf man nur Gewohnheitslesern zumuten, die
  täglich viele Stunden lesend zubringen. Aber auch dann sind Zeilenlängen
  jenseits von 80 Zeichen unzumutbar. In jedem Fall ist dann der Durchschuss
  anzupassen. 5\,\% bis 10\,\% zusätzlich sind dabei als Faustregel
  empfehlenswert. Bei Schriften wie Palatino, die bereits bei einer normalen
  Zeilenlänge nach 5\,\% mehr Durchschuss verlangt, können es auch mehr sein.
  
  Bevor wir uns an die konkrete Konstruktion machen, fehlen jetzt nur noch
  Kleinigkeiten, die man wissen sollte. \LaTeX{} beginnt die erste Zeile des
  Textbereichs einer Seite nicht am oberen Rand des Textbereichs, sondern
  setzt die Grundlinie der Zeile mit einem definierten Mindestabstand zum
  oberen Rand des Textbereichs. Des Weiteren verfügt \LaTeX{} über die beiden
  Befehle \Macro{raggedbottom}\IndexCmd{raggedbottom} und
  \Macro{flushbottom}\IndexCmd{flushbottom}. Der erste dieser Befehle legt
  fest, dass die letzte Zeile einer jeden Seite dort liegen soll, wo sie eben
  zu liegen kommt. Das kann dazu führen, dass sich die Position der letzten
  Zeile von Seite zu Seite vertikal um nahezu eine Zeile verändern kann -- bei
  Zusammentreffen des Seitenendes mit Überschriften, Abbildungen, Tabellen
  oder Ähnlichem auch mehr. Im doppelseitigen Druck ist das in der Regel
  unerwünscht. Mit dem zweiten Befehl, \Macro{flushbottom}, wird hingegen
  festgelegt, dass die letzte Zeile immer am unteren Rand des Textbereichs zu
  liegen kommt. Um diesen vertikalen Ausgleich zu erreichen, muss \LaTeX{}
  gegebenenfalls dehnbare vertikale Abstände über das erlaubte Maß hinaus
  strecken. Ein solcher Abstand ist beispielsweise der Absatzabstand. Dies
  gilt in der Regel auch, wenn man gar keinen Absatzabstand verwendet. Um
  nicht bereits auf normalen Seiten, auf denen der Absatzabstand das einzige
  dehnbare vertikale Maß darstellt, eine Dehnung zu erzwingen, sollte die Höhe
  des Textbereichs ein Vielfaches der Textzeilenhöhe zuzüglich des Abstands
  der ersten Zeile vom oberen Rand des Textbereichs sein.

  \looseness=-1 % Umbruchkorrektur
  Damit sind alle Grundlagen der Satzspiegelberechnung, die bei
  {\KOMAScript} eine Rolle spielen, erklärt. 
\iffalse% Umbruchkorrektur
  Wir können also mit der konkreten Konstruktion beginnen. 
\fi
  In den folgenden beiden Abschnitten werden die von {\KOMAScript} angebotenen
  Konstruktionen vorgestellt.
\end{Explain}


\section{Satzspiegelkonstruktion durch Teilung}
\label{sec:typearea.divConstruction}

\begin{Explain}
  Der einfachste Weg, um zu erreichen, dass der Textbereich dasselbe
  Verhältnis aufweist wie die Seite, ist folgender: Zunächst zieht man an der
  Innenseite des Papiers den Teil \Var{BCOR}, der für die
  Bindekorrektur\Index{Bindekorrektur} benötigt wird, ab und teilt die
  restliche Seite vertikal in eine Anzahl \Var{DIV} gleich hoher
  Streifen. Dann teilt man die Seite horizontal in die gleiche Anzahl
  \Var{DIV} gleich breiter Streifen. Nun verwendet man den obersten
  horizontalen Streifen als oberen und die beiden untersten horizontalen
  Streifen als unteren Rand. Im doppelseitigen Druck verwendet man außerdem
  den innersten vertikalen Streifen als inneren und die beiden äußersten
  vertikalen Streifen als äußeren Rand. Zum inneren Rand gibt man dann noch
  \Var{BCOR} hinzu. Was nun innerhalb der Seite noch übrig bleibt, ist der
  Textbereich.\Index{Textbereich} Die Breite bzw. Höhe der Ränder und des
  Textbereichs resultiert damit automatisch aus der Anzahl \Var{DIV} der
  Streifen. Da für die Ränder insgesamt jeweils drei Streifen benötigt werden,
  muss \Var{DIV} zwingend größer als drei sein. Damit der Satzspiegel
  mindestens doppelt so viel Platz wie die Ränder einnimmt, sollte \Var{DIV}
  sogar mindestens 9 betragen. Mit diesem Wert ist die Konstruktion auch als
  \emph{klassische Neunerteilung} bekannt (siehe
  \autoref{fig:typearea.nineparts}).

  \begin{figure}
    \centering
    \setlength{\unitlength}{.25mm}
    \definecolor{komalight}{gray}{.75}
    \definecolor{komamed}{gray}{.6}
    \definecolor{komadark}{gray}{.3}
    \begin{picture}(420,297)
      % BCOR
      \put(198,0){\color{komalight}\rule{24\unitlength}{297\unitlength}}
      \multiput(198,2)(0,20){15}{\thinlines\line(0,1){10}}
      \multiput(222,2)(0,20){15}{\thinlines\line(0,1){10}}
      % Das Papier
      \put(0,0){\thicklines\framebox(420,297){}}
%      \put(210,0){\thicklines\framebox(210,297){}}
      % Der Satzspiegel
      \put(44,66){\color{komamed}\rule{132\unitlength}{198\unitlength}}
      \put(244,66){\color{komamed}\rule{132\unitlength}{198\unitlength}}
      % Hilfslinien
      \multiput(0,33)(0,33){8}{\thinlines\line(1,0){198}}
      \multiput(222,33)(0,33){8}{\thinlines\line(1,0){198}}
      \multiput(22,0)(22,0){8}{\thinlines\line(0,1){297}}
      \multiput(244,0)(22,0){8}{\thinlines\line(0,1){297}}
      % Beschriftung
      \put(198,0){\color{white}\makebox(24,297)[c]{%
          \rotatebox[origin=c]{-90}{Bindekorrektur}}}
      \put(44,66){\color{white}\makebox(132,198)[c]{Satzspiegel links}}
      \put(244,66){\color{white}\makebox(132,198)[c]{Satzspiegel rechts}}
      % Kästchennummern
      \makeatletter
      \multiput(1,27)(0,33){9}{\footnotesize\makebox(0,0)[l]{\the\@multicnt}}
      \multiput(177,291)(-22,0){9}{%
        \footnotesize\makebox(0,0)[l]{\the\@multicnt}}
      \multiput(419,27)(0,33){9}{%
        \footnotesize\makebox(0,0)[r]{\the\@multicnt}}
      \multiput(243,291)(22,0){8}{%
        \footnotesize\makebox(0,0)[r]{\the\numexpr\@multicnt+1\relax}}
      \makeatother
    \end{picture}
    \caption{Doppelseite mit der Rasterkonstruktion für die klassische
      Neunerteilung nach Abzug einer Bindekorrektur}
    \label{fig:typearea.nineparts}
  \end{figure}

  Bei {\KOMAScript} ist diese Art der Konstruktion im Paket \Package{typearea}
  realisiert, wobei der untere Rand weniger als eine Textzeile kleiner
  ausfallen kann, um die im vorherigen Abschnitt erwähnte Nebenbedingung für
  die Satzspiegelhöhe einzuhalten und damit die dort erwähnte Problematik in
  Bezug auf \Macro{flushbottom} zu mindern. Dabei sind für A4-Papier je nach
  Schriftgröße unterschiedliche Werte für \Var{DIV} voreingestellt, die
  \autoref{tab:typearea.div}, \autopageref{tab:typearea.div} zu entnehmen
  sind. Bei Verzicht auf Bindekorrektur, wenn also \Var{BCOR} = 0\Unit{pt}
  gilt, ergeben sich in etwa die Satzspiegelmaße aus
  \autoref{tab:typearea.typearea}, \autopageref{tab:typearea.typearea}.

  Neben den voreingestellten Werten kann man \Var{BCOR} und \Var{DIV} direkt
  beim Laden des Pakets als Option angeben (siehe
  \autoref{sec:typearea.typearea} ab
  \autopageref{sec:typearea.typearea}). Zusätzlich existiert ein Befehl, mit
  dem man einen Satzspiegel explizit berechnen kann und dem man die beiden
  Werte als Parameter übergibt (\iffalse siehe ebenfalls
  \autoref{sec:typearea.typearea}, \fi\autopageref{desc:typearea.cmd.typearea}).

  Das \Package{typearea}-Paket bietet außerdem die Möglichkeit, den optimalen
  \Var{DIV}-Wert automatisch zu bestimmen. Dieser ist von der Schrift und dem
  Durchschuss abhängig, der zum Zeitpunkt der Satzspiegelberechnung
  eingestellt ist%
  \iffalse. Siehe hierzu ebenfalls \autoref{sec:typearea.typearea}, \else\
  (\fi\autopageref{desc:typearea.option.DIV.calc}\iftrue)\fi.
\end{Explain}


\section{Satzspiegelkonstruktion durch Kreisschlagen}
\label{sec:typearea.circleConstruction}

\begin{Explain}
  Neben der zuvor beschriebenen Satzspiegelkonstruktion\Index{Satzspiegel}
  gibt es in der Literatur noch eine eher klassische oder sogar
  mittelalterliche Methode. Bei diesem Verfahren will man die gleichen Werte
  nicht nur in Form des Seitenverhältnisses wiederfinden; man geht außerdem
  davon aus, dass das Optimum dann erreicht wird, wenn die Höhe des
  Textbereichs der Breite der Seite entspricht. Das genaue Verfahren ist
  beispielsweise in \cite{JTsch87} nachzulesen.

  Als Nachteil dieses spätmittelalterlichen Buchseitenkanons ergibt
  sich, dass die Breite des Textbereichs nicht mehr von der Schriftart
  abhängt. Es wird also nicht mehr der zur Schrift passende
  Textbereich gewählt, stattdessen muss der Autor oder Setzer die zum
  Textbereich passende Schrift wählen. Dies ist als zwingend zu
  betrachten.

  Im \Package{typearea}-Paket wird diese Konstruktion dahingehend
  abgewandelt, dass durch Auswahl eines ausgezeichneten -- normalerweise
  unsinnigen -- \Var{DIV}-Wertes oder eine spezielle Paket-Option
  derjenige \Var{DIV}-Wert ermittelt wird, bei dem der resultierende
  Satzspiegel dem spätmittelalterlichen Buchseitenkanon am nächsten
  kommt. Es wird also wiederum auf die Satzspiegelkonstruktion durch Teilung
  zurückgegriffen.
\iftrue
% Umbruchkorrekturtext
  Bei Wahl einer guten Schrift stimmt dieses Ergebnis nicht selten mit der
  Suche nach dem optimalen \Var{DIV}-Wert überein. Siehe hierzu ebenfalls
  \autoref{sec:typearea.typearea}, \autopageref{desc:typearea.option.DIV.calc}.
%
\fi
\end{Explain}

\LoadCommon{0} % \section{Frühe oder späte Optionenwahl}

\LoadCommon{1} % \section{Kompatibilität zu früheren Versionen von \KOMAScript}

\section{Einstellung des Satzspiegels und der \texorpdfstring{Seitenauf"|teilung}{Seitenaufteilung}}
\label{sec:typearea.typearea}

Das Paket \Package{typearea} bietet zwei unterschiedliche
Benutzerschnittstellen, um auf die Satzspiegelkonstruktion Einfluss zu
nehmen. Die wichtigste Möglichkeit ist die Angabe von Optionen. Wie
im vorherigen Abschnitt erwähnt, können die Optionen dabei auf
unterschiedlichen Wegen gesetzt werden.

In diesem Abschnitt wird die Klasse \Class{protokol} verwendet werden. Es
handelt sich dabei nicht um eine \KOMAScript-Klasse, sondern um eine
hypothetische Klasse. Diese\iffree{ Anleitung}{s Buch} geht von dem Idealfall
aus, dass für jede Aufgabe eine dafür passende Klasse zur Verfügung steht.


\BeginIndex{Option}{BCOR~=\PName{Wert}}%
\begin{Declaration}
  \KOption{BCOR}\PName{Korrektur}
\end{Declaration}%
Mit Hilfe der Option
\KOption{BCOR}\PName{Korrektur}\ChangedAt{v3.00}{\Package{typearea}} geben Sie
den absoluten Wert der Bindekorrektur\Index{Bindekorrektur} an, also die
Breite des Bereichs, der durch die Bindung von der Papierbreite verloren
geht. Dieser Wert wird in der Satzspiegelkonstruktion automatisch
berücksichtigt und bei der Ausgabe wieder dem inneren beziehungsweise linken
Rand zugeschlagen. Als \PName{Korrektur} können Sie jede von \TeX{}
verstandene Maßeinheit angeben.

\begin{Example}
  Angenommen, Sie erstellen einen Finanzbericht. Das Ganze soll
  einseitig in A4 gedruckt und anschließend in eine Klemmmappe
  geheftet werden. Die Klemme der Mappe verdeckt 7,5\Unit{mm}.
  Der Papierstapel ist sehr dünn, deshalb gehen beim Knicken und
  Blättern durchschnittlich höchstens weitere 0,75\Unit{mm}
  verloren. Sie schreiben dann also:
\begin{lstcode}
  \documentclass[a4paper]{report}
  \usepackage[BCOR=8.25mm]{typearea}
\end{lstcode}
  oder
\begin{lstcode}
  \documentclass[a4paper,BCOR=8.25mm]{report}
  \usepackage{typearea}
\end{lstcode}
  bei Angabe von \Option{BCOR} als globale Option.

  Bei Verwendung einer \KOMAScript-Klasse kann das explizite Laden von
  \Package{typearea} entfallen:
  % Umbruchkorrektur: listings murkst
  \begin{lstcode}[belowskip=-\baselineskip]
  \documentclass[BCOR=8.25mm]{scrreprt}
  \end{lstcode}
  Die Option \Option{a4paper} konnte bei \Class{scrreprt} entfallen, da diese
  der Voreinstellung bei allen \KOMAScript-Klassen entspricht.

  Setzt man die Option erst später auf einen neuen Wert, verwendet man also
  beispielsweise
  % Umbruchkorrektur: listings murkst
  \begin{lstcode}[belowskip=-\baselineskip]
  \documentclass{scrreprt}
  \KOMAoptions{BCOR=8.25mm}
  \end{lstcode}
  so werden bereits beim Laden der Klasse \Class{scrreprt}
  Standardeinstellungen vorgenommen. Beim Ändern der Einstellung mit Hilfe der
  Anweisung \Macro{KOMAoptions} oder \Macro{KOMAoption} wird dann automatisch
  ein neuer Satzspiegel mit neuen Randeinstellungen berechnet.
\end{Example}

Bitte beachten Sie unbedingt, dass diese Option bei Verwendung einer der
\KOMAScript-Klassen wie im Beispiel als Klassenoption oder per
\Macro{KOMAoptions} beziehungsweise \Macro{KOMAoption} nach dem Laden der
Klasse übergeben werden muss. Weder sollte das Paket \Package{typearea} bei
Verwendung einer \KOMAScript-Klasse explizit per \Macro{usepackage} geladen,
noch die Option dabei als optionales Argument angegeben werden. Wird die
Option per \Macro{KOMAoptions} oder \Macro{KOMAoption} nach dem Laden des
Pakets geändert, so werden Satzspiegel und Ränder automatisch neu berechnet.%
%
\EndIndex{Option}{BCOR~=\PName{Wert}}


\BeginIndex{Option}{DIV~=\PName{Wert}}%
\begin{Declaration}
  \KOption{DIV}\PName{Faktor}
\end{Declaration}%
Mit Hilfe der Option
\KOption{DIV}\PName{Faktor}\ChangedAt{v3.00}{\Package{typearea}} wird
festgelegt, in wie viele Streifen die Seite horizontal und vertikal bei der
Satzspiegelkonstruktion eingeteilt wird. Die genaue Konstruktion ist
\autoref{sec:typearea.divConstruction} zu entnehmen. Wichtig zu wissen ist,
dass gilt: Je größer der \PName{Faktor}, desto größer wird der Textbereich und
desto kleiner die Ränder. Als \PName{Faktor} kann jeder ganzzahlige Wert ab 4
verwendet werden. Bitte beachten Sie jedoch, dass sehr große Werte dazu führen
können, dass Randbedingungen der Satzspiegelkonstruktion, je nach Wahl der
weiteren Optionen, verletzt werden. So kann die Kopfzeile im Extremfall auch
außerhalb der Seite liegen. Bei Verwendung der Option
\KOption{DIV}\PName{Faktor} sind Sie für die Einhaltung der Randbedingungen
sowie eine nach typografischen Gesichtspunkten günstige Zeilenlänge selbst
verantwortlich.

In \autoref{tab:typearea.typearea} finden Sie für das Seitenformat A4
ohne Bindekorrektur die aus einigen \Var{DIV}-Faktoren
resultierenden Satzspiegelgrößen. Dabei werden die weiteren von der
Schriftgröße abhängigen Nebenbedingungen nicht berücksichtigt.

\begin{table}
  \centering
  \caption{Satzspiegelma"se in Abh"angigkeit von \Var{DIV} bei A4}
  \begin{tabular}{ccccc}
    \toprule
    & 
    \multicolumn{2}{c}{Satzspiegel} & \multicolumn{2}{c}{R"ander}\\
    %\raisebox{1.5ex}[0pt]{
      \Var{DIV}
    %} 
    & 
    Breite [mm] & H"ohe [mm] & oben [mm] & innen [mm] \\
    \midrule
    6  & 105,00 & 148,50 & 49,50 & 35,00 \\
    7  & 120,00 & 169,71 & 42,43 & 30,00 \\
    8  & 131,25 & 185,63 & 37,13 & 26,25 \\
    9  & 140,00 & 198,00 & 33,00 & 23,33 \\
    10 & 147,00 & 207,90 & 29,70 & 21,00 \\
    11 & 152,73 & 216,00 & 27,00 & 19,09 \\
    12 & 157,50 & 222,75 & 24,75 & 17,50 \\
    13 & 161,54 & 228,46 & 22,85 & 16,15 \\
    14 & 165,00 & 233,36 & 21,21 & 15,00 \\
    15 & 168,00 & 237,60 & 19,80 & 14,00 \\
    \bottomrule
  \end{tabular}
  \label{tab:typearea.typearea}
\end{table}

\iffree{}{\clearpage}% Umbruchkorrektur
\begin{Example}
  Angenommen, Sie schreiben ein Sitzungsprotokoll. Sie verwenden dafür die
  Klasse \Class{protokol}. Das Ganze soll doppelseitig werden. In Ihrer Firma
  wird die Schriftart Bookman in 12\Unit{pt} verwendet. Diese Schriftart, die
  zu den Standard-PostScript-Schriften gehört, wird in {\LaTeX} mit der
  Anweisung \verb|\usepackage{bookman}| aktiviert.  Die Schriftart Bookman
  läuft sehr weit, das heißt, die einzelnen Zeichen sind im Verhältnis zur
  Höhe relativ breit. Deshalb ist Ihnen die Voreinstellung für den
  \Var{DIV}-Wert in \Package{typearea} zu gering. Statt einem Wert von 12 sind
  Sie nach gründlichem Studium dieses Kapitels einschließlich der
  weiterführenden Abschnitte überzeugt, dass ein Wert 15 angebracht ist. Das
  Protokoll wird nicht gebunden, sondern gelocht und in einen Ordner
  abgeheftet. Eine Bindekorrektur ist deshalb nicht notwendig. Sie schreiben
  also:
\begin{lstcode}
  \documentclass[a4paper,twoside]{protokol}
  \usepackage{bookman}
  \usepackage[DIV=15]{typearea}
\end{lstcode}
  Als Sie fertig sind, macht man Sie darauf aufmerksam, dass die
  Protokolle neuerdings gesammelt und am Quartalsende alle zusammen
  als Buch gebunden werden. Die Bindung erfolgt als
  einfache Leimbindung, weil den Band ohnehin nie wieder jemand
  anschaut und er nur wegen ISO\,9000 angefertigt wird. Für die Bindung
  einschließlich Biegefalz werden durchschnittlich 12\Unit{mm}
  benötigt. Sie ändern die Optionen von \Package{typearea} also
  entsprechend ab und verwenden die Klasse für Protokolle nach
  ISO\,9000:
\begin{lstcode}
  \documentclass[a4paper,twoside]{iso9000p}
  \usepackage{bookman}
  \usepackage[DIV=15,BCOR=12mm]{typearea}
\end{lstcode}
  Natürlich können Sie auch hier wieder eine \KOMAScript-Klasse
  verwenden:
\begin{lstcode}
  \documentclass[twoside,DIV=15,BCOR=12mm]{scrartcl}
  \usepackage{bookman}
\end{lstcode}
  Die Option \Option{a4paper} konnte bei der Klasse \Class{scrartcl} entfallen,
  da diese der Voreinstellung bei allen \KOMAScript-Klassen entspricht.
\end{Example}

Bitte beachten Sie unbedingt, dass die Option \Option{DIV} bei Verwendung
einer der \KOMAScript-Klassen wie im Beispiel als Klassenoption oder per
\Macro{KOMAoptions} beziehungsweise \Macro{KOMAoption} nach dem Laden der
Klasse übergeben werden muss. Weder sollte das Paket \Package{typearea} bei
Verwendung einer \KOMAScript-Klasse explizit per \Macro{usepackage} geladen,
noch die Option dabei als optionales Argument angegeben werden. Wird die
Option per \Macro{KOMAoptions} oder \Macro{KOMAoption} nach dem Laden des
Pakets geändert, so werden Satzspiegel und Rändern automatisch neu berechnet.

\BeginIndex{Option}{DIV~=classic}%
\BeginIndex{Option}{DIV~=calc}%
\begin{Declaration}
  \OptionValue{DIV}{calc}\\
  \OptionValue{DIV}{classic}
\end{Declaration}%
Wie\ChangedAt{v3.00}{\Package{typearea}} bereits in
\autoref{sec:typearea.divConstruction} erwähnt, gibt es nur für das
Papierformat A4 feste Voreinstellungen für den \Var{DIV}-Wert. Diese sind
\autoref{tab:typearea.div} zu entnehmen. Wird ein anderes Papierformat
gewählt, so berechnet \Package{typearea} selbst einen guten \Var{DIV}-Wert.
Natürlich können Sie diese Berechnung auch für A4 wählen. Hierzu verwenden Sie
einfach die Option \OptionValue{DIV}{calc} an Stelle von
\KOption{DIV}\PName{Faktor}.  Selbstverständlich können Sie diese Option auch
explizit bei allen anderen Papierformaten angeben. Wenn Sie die automatische
Berechnung wünschen, ist diese Angabe sogar sinnvoll, da die Möglichkeit
besteht, in einer Konfigurationsdatei andere Voreinstellungen zu setzen (siehe
\autoref{sec:typearea-experts.cfg}). Eine explizit angegebene Option
\OptionValue{DIV}{calc} überschreibt diese Vorkonfiguration aber.

\begin{table}
  \centering
  \caption{\label{tab:typearea.div}\PName{DIV}-Voreinstellungen f"ur A4}
  \begin{tabular}{lccc}
    \toprule
    Grundschriftgr"o"se: & 10\Unit{pt} & 11\Unit{pt} & 12\Unit{pt} \\
    \Var{DIV}:           &   8  &  10  &  12  \\
    \bottomrule
  \end{tabular}
\end{table}

Die in \autoref{sec:typearea.circleConstruction} erwähnte klassische
Konstruktion, der mittelalterliche Buchseitenkanon, ist ebenfalls auswählbar.
Verwenden Sie in diesem Fall an Stelle von \KOption{DIV}\PName{Faktor} oder
\OptionValue{DIV}{calc} einfach \OptionValue{DIV}{classic}. Es wird dann
ein \Var{DIV}-Wert ermittelt, der dem mittelalterlichen Buchseitenkanon
möglichst nahe kommt.

\begin{Example}
  In dem bei der Option \KOption{DIV}\PName{Faktor} aufgeführten
  Beispiel mit der Schriftart Bookman gab es ja genau das Problem,
  dass man einen zur Schriftart besser passenden \Var{DIV}-Wert haben
  wollte. Man könnte also in Abwandlung des ersten Beispiels auch
  einfach die Ermittlung dieses Wertes \Package{typearea} überlassen:
\begin{lstcode}
  \documentclass[a4paper,twoside]{protokol}
  \usepackage{bookman}
  \usepackage[DIV=calc]{typearea}
\end{lstcode}
\end{Example}

Bitte beachten Sie unbedingt, dass diese Option bei Verwendung einer der
\KOMAScript-Klassen %
\iftrue wie im Beispiel \fi%
als Klassenoption oder per \Macro{KOMAoptions} beziehungsweise
\Macro{KOMAoption} nach dem Laden der Klasse übergeben werden muss. Weder
sollte das Paket \Package{typearea} bei Verwendung einer \KOMAScript-Klasse
explizit per \Macro{usepackage} geladen, noch die Option dabei als optionales
Argument angegeben werden. Wird die Option per \Macro{KOMAoptions} oder
\Macro{KOMAoption} nach dem Laden des Pakets geändert, so werden Satzspiegel
und Rändern automatisch neu berechnet.%
%
\EndIndex{Option}{DIV~=classic}%
\EndIndex{Option}{DIV~=calc}%


\BeginIndex{Option}{DIV~=current}%
\BeginIndex{Option}{DIV~=last}%
\begin{Declaration}
  \OptionValue{DIV}{current}\\
  \OptionValue{DIV}{last}
\end{Declaration}%
Wenn\ChangedAt{v3.00}{\Package{typearea}} Sie bis hier die Beispiele aufmerksam
verfolgt haben, wissen Sie eigentlich bereits, wie man die Berechnung eines
\Var{DIV}-Wertes in Abhängigkeit von der gewählten Schrift erreicht, wenn eine
\KOMAScript-Klasse zusammen mit einem Schriftpaket verwendet wird.

\begin{Explain}
  Das Problem dabei ist, dass die \KOMAScript-Klasse das Paket
  \Package{typearea} bereits selbst lädt. Die Übergabe der Optionen als
  optionale Argumente von \Macro{usepackage} ist also nicht möglich. Es würde
  auch nichts nützen, die Option \OptionValue{DIV}{calc} als optionales Argument
  von \Macro{documentclass} anzugeben. Diese Option würde direkt beim Laden
  des Pakets \Package{typearea} ausgewertet. Damit würden Satzspiegel und
  Ränder für die \LaTeX-Standardschrift und nicht für die später geladene
  Schrift berechnet.

  Selbstverständlich ist es aber möglich, mit
  \Macro{KOMAoptions}\PParameter{DIV=calc} oder
  \Macro{KOMAoption}\PParameter{DIV}\PParameter{calc} nach dem Laden des
  Schriftpakets Satzspiegel und Ränder neu berechnen zu lassen. Dabei wird
  dann über den Wert \PValue{calc} direkt ein \Var{DIV}-Wert für eine gute
  Zeilenlänge eingefordert.

  Da es aber häufig praktischer ist, die Einstellung für die Option
  \Option{DIV} nicht erst nach dem Laden der Schrift vorzunehmen, sondern an
  herausgehobener Stelle, beispielsweise beim Laden der Klasse, bietet
  \Package{typearea} zwei weitere symbolische Werte für diese Option.
\end{Explain}

Mit \KOption{DIV}\PName{current}\ChangedAt{v3.00}{\Package{typearea}} wird eine
Neuberechnung von Satzspiegel und Rändern angestoßen, wobei genau der
\Var{DIV}-Wert verwendet wird, der aktuell eingestellt ist. Dies ist weniger
für die Neuberechnung des Satzspiegels nach Wahl einer anderen Grundschrift
von Interesse. Vielmehr ist das dann nützlich, wenn man etwa nach Änderung des
Durchschusses bei Beibehaltung des Teilers \Var{DIV} die Randbedingung
sicherstellen will, dass \Length{textheight} abzüglich \Length{topskip} ein
Vielfaches von \Length{baselineskip} sein sollte.

Mit \KOption{DIV}\PName{last}\ChangedAt{v3.00}{\Package{typearea}} wird eine
Neuberechnung von Satzspiegel und Rändern angestoßen, wobei genau dieselbe
Einstellung wie bei der letzten Berechnung verwendet wird.

\begin{Example}
  Gehen wir wieder davon aus, dass für die Schriftart Bookman ein Satzspiegel
  mit guter Zeilenlänge berechnet werden soll.  Gleichzeitig wird eine
  \KOMAScript-Klasse verwendet. Dies ist mit dem symbolischen Wert
  \PValue{last} und der Anweisung \Macro{KOMAoptions} sehr einfach möglich:
\begin{lstcode}
  \documentclass[BCOR=12mm,DIV=calc,twoside]{scrartcl}
  \usepackage{bookman}
  \KOMAoptions{DIV=last}
\end{lstcode}
  Wird später entschieden, dass ein anderer \Var{DIV}-Wert
  verwendet werden soll, so muss nur die Einstellung im optionalen Argument
  von \Macro{documentclass} geändert werden.
\end{Example}

Eine Zusammenfassung aller möglichen symbolischen Werte für die Option
\Option{DIV} finden Sie in \autoref{tab:symbolicDIV}. Es wird an dieser Stelle
darauf hingewiesen, dass auch die Verwendung des Pakets
\Package{fontenc}\IndexPackage{fontenc} dazu führen kann, dass \LaTeX{} eine
andere Schrift lädt.

\begin{table}
  \caption[{Symbolische Werte für Option \Option{DIV} und das
    \PName{DIV}-Argument von \Macro{typearea}}]{Mögliche symbolische Werte
    für Option \Option{DIV} oder das \PName{DIV}-Argument von
    \Macro{typearea}\OParameter{BCOR}\Parameter{DIV}}
  \label{tab:symbolicDIV}
  \begin{desctabular}
    \pventry{areaset}{Satzspiegel neu anordnen.\IndexOption{DIV~=areaset}}%
    \pventry{calc}{Satzspiegelberechnung einschließlich Ermittlung eines guten
      \Var{DIV}-Wertes erneut durchführen.\IndexOption{DIV~=calc}}%
    \pventry{classic}{Satzspiegelberechnung nach dem mittelalterlichen
      Buchseitenkanon (Kreisberechnung) erneut
      durchführen.\IndexOption{DIV~=classic}}%
    \pventry{current}{Satzspiegelberechnung mit dem aktuell gültigen
      \Var{DIV}-Wert erneut durchführen.\IndexOption{DIV~=current}}%
    \pventry{default}{Satzspiegelberechnung mit dem Standardwert für das
      aktuelle Seitenformat und die aktuelle Schriftgröße erneut durchführen.
      Falls kein Standardwert existiert, \PValue{calc}
      anwenden.\IndexOption{DIV~=default}}%
    \pventry{last}{Satzspiegelberechnung mit demselben \PName{DIV}-Argument,
      das beim letzten Aufruf angegeben wurde, erneut
      durchführen.\IndexOption{DIV~=last}}%
  \end{desctabular}
\end{table}

Häufig wird die Satzspiegelneuberechnung im Zusammenhang mit der
Ver"-änderung des Zeilenabstandes
(\emph{Durchschuss})\Index{Durchschuss} benötigt. Da der
Satzspiegel unbedingt so berechnet werden sollte, dass eine ganze
Anzahl an Zeilen in den Textbereich passt, muss bei Verwendung
eines anderen Durchschusses als des normalen der Satzspiegel für
diesen Zeilenabstand neu berechnet werden.

\begin{Example}
  Angenommen, für eine Diplomarbeit wird die Schriftgröße
  10\Unit{pt} bei eineinhalbzeiligem Satz zwingend gefordert. {\LaTeX}
  setzt normalerweise bei 10\Unit{pt} mit 2\Unit{pt} Durchschuss,
  also 1,2-zeilig. Deshalb muss als zusätzlicher Dehnfaktor der Wert
  1,25 verwendet werden. Gehen wir außerdem davon aus, dass eine
  Bindekorrektur von 12\Unit{mm} benötigt wird. Dann könnte die Lösung
  dieses Problems wie folgt aussehen:
\begin{lstcode}
  \documentclass[10pt,twoside,BCOR=12mm,DIV=calc]{scrreprt}
  \linespread{1.25}
  \KOMAoptions{DIV=last}
\end{lstcode}\IndexCmd{linespread}
  Da \Package{typearea} selbst immer die Anweisung \Macro{normalsize} bei
  Berechnung eines neuen Satzspiegels ausführt, ist es nicht notwendig, nach
  \Macro{linespread} den gewählten Durchschuss mit \Macro{selectfont} zu
  aktivieren, damit dieser auch tatsächlich für die Neuberechnung verwendet
  wird.

  Das gleiche Beispiel sähe unter Verwendung des
  \Package{setspace}-Pakets (siehe \cite{package:setspace}) wie folgt
  aus:
\begin{lstcode}
  \documentclass[10pt,twoside,BCOR=12mm,DIV=calc]{scrreprt}
  \usepackage{setspace}
  \onehalfspacing
  \KOMAoptions{DIV=last}
\end{lstcode}
  Wie man sieht, spart man sich mit dem \Package{setspace}-Paket
  das Wissen um den korrekten Dehnungswert.

  An dieser Stelle erscheint es mir angebracht, darauf hinzuweisen,
  dass der Zeilenabstand für die Titelseite wieder auf den normalen
  Wert zurückgesetzt werden sollte. 
\iffalse% Umbruchkorrektur
  Ein vollständiges Beispiel wäre also:
\fi
\begin{lstcode}
  \documentclass[10pt,twoside,BCOR=12mm,DIV=calc]{scrreprt}
  \usepackage{setspace}
  \onehalfspacing
  \KOMAoptions{DIV=last}
  \begin{document}
  \title{Title}
  \author{Markus Kohm}
  \begin{spacing}{1}
    \maketitle
    \tableofcontents
  \end{spacing}
  \chapter{Ok}
  \end{document}
\end{lstcode}
  Siehe hierzu auch die Anmerkungen in \autoref{sec:typearea.tips}.
\end{Example}

Bitte beachten Sie unbedingt, dass diese Optionen zur Verwendung mit
\Macro{KOMAoptions} oder \Macro{KOMAoption} nach dem Laden des Pakets
vorgesehen sind und dann eine automatische Neuberechnung von Satzspiegel und
Rändern auslösen.%
%
\EndIndex{Option}{DIV~=current}%
\EndIndex{Option}{DIV~=last}%
\EndIndex{Option}{DIV~=\PName{Wert}}


\BeginIndex{Cmd}{typearea}%
\BeginIndex{Cmd}{recalctypearea}%
\begin{Declaration}
  \Macro{typearea}\OParameter{BCOR}\Parameter{DIV}\\
  \Macro{recalctypearea}
\end{Declaration}%
\begin{Explain}
Wird die Option \Option{DIV} oder die Option \Option{BCOR} nach dem Laden des
Pakets \Package{typearea} gesetzt, so wird intern die Anweisung
\Macro{typearea} aufgerufen. Dabei wird beim Setzen der Option \Option{DIV}
für \PName{BCOR} intern der symbolische Wert \PValue{current} verwendet, der
aus Gründen der Vollständigkeit auch in \autoref{tab:symbolicBCOR} zu finden
ist. Beim Setzen der Option \Option{BCOR} wird für \PName{DIV} hingegen der
symbolische Wert \PValue{last} verwendet. Wollen Sie, dass Satzspiegel und
Rändern stattdessen mit dem symbolischen Wert \PValue{current} für \PName{DIV}
neu berechnet werden, so können Sie direkt
\Macro{typearea}\PParameter{current}\PParameter{current} verwenden.
\end{Explain}

\begin{table}
  \caption[{Symbolische \PName{BCOR}-Argumente für
    \Macro{typearea}}]{Mögliche symbolische \PName{BCOR}-Argumente für
    \Macro{typearea}\OParameter{BCOR}\Parameter{DIV}}
  \label{tab:symbolicBCOR}
  \begin{desctabular}
    \pventry{current}{Satzspiegelberechnung mit dem aktuell gültigen
      \Var{BCOR}-Wert erneut durchführen.\IndexOption{BCOR~=current}}
  \end{desctabular}
\end{table}

Sollen sowohl \PName{BCOR} als auch \PName{DIV} geändert werden, so ist die
Verwendung von \Macro{typearea} zu empfehlen, da hierbei die Ränder und der
Satzspiegel nur einmal neu berechnet werden. Bei
\Macro{KOMAoptions}\PParameter{\KOption{DIV}\PName{DIV},%
  \KOption{BCOR}\PName{BCOR}} werden Ränder und Satzspiegel hingegen zunächst
bei der Änderung für \PName{DIV} und dann zusätzlich bei der Änderung für
\PName{BCOR} neu berechnet.

\begin{Explain}
  Der Befehl \Macro{typearea} ist derzeit so definiert, dass es auch möglich
  ist, mitten in einem Dokument den Satzspiegel zu wechseln. Dabei werden
  allerdings Annahmen über den Aufbau des \LaTeX-Kerns gemacht und interne
  Definitionen und Größen des \LaTeX-Kerns verändert. Es gibt zwar eine
  gewisse Wahrscheinlichkeit, aber keine Garantie, dass dies in zukünftigen
  Versionen von \LaTeXe{} noch funktionieren wird. Die Verwendung innerhalb
  des Dokuments führt außerdem zu einem Seitenumbruch.
\end{Explain}

Da \Macro{typearea}\PParameter{current}\PParameter{last} oder
\Macro{KOMAoptions}\PParameter{DIV=last} für die Neuberechnung des
Satzspiegels und der Ränder recht häufig benötigt
werden, gibt es dafür die abkürzende Anweisung
\Macro{recalctypearea}\ChangedAt{v3.00}{\Package{typearea}}.

\begin{Example}
  Wenn Ihnen die Schreibweisen
  % Umbruchkorrektur: listings murkst
  \begin{lstcode}[belowskip=-\baselineskip]
  \KOMAoptions{DIV=last}
  \end{lstcode}
  oder
  % Umbruchkorrektur: listings murkst
  \begin{lstcode}[belowskip=-\baselineskip]
  \typearea[current]{last}
  \end{lstcode}
  für die Neuberechnung von Satzspiegel und Rändern aufgrund der vielen
  Sonderzeichen zu umständlich ist, können Sie einfach
  % Umbruchkorrektur: listings murkst
  \begin{lstcode}[belowskip=-\baselineskip]
  \recalctypearea
  \end{lstcode}
  verwenden.
\end{Example}%
\EndIndex{Cmd}{recalctypearea}%
\EndIndex{Cmd}{typearea}


\BeginIndex{Option}{twoside~=\PName{Ein-Aus-Wert}}%
\BeginIndex{Option}{twoside~=semi}%
\begin{Declaration}
  \KOption{twoside}\PName{Ein-Aus-Wert}\\
  \OptionValue{twoside}{semi}
\end{Declaration}%
Wie bereits in \autoref{sec:typearea.basics} erklärt, hängt die Randverteilung
davon ab, ob ein Dokument einseitig oder zweiseitig gesetzt werden soll. Bei
einseitigem Satz sind der linke und der rechte Rand gleich breit, während bei
doppelseitigem Satz der innere Randanteil einer Seite nur halb so groß ist wie
der jeweilige äußere Rand. Um diese Unterscheidung vornehmen zu können, muss
\Package{typearea} mit der Option \Option{twoside} mitgeteilt werden, ob das
Dokument doppelseitig gesetzt wird. Als \PName{Ein-Aus-Wert} kann dabei einer
der Standardwerte für einfache Schalter aus \autoref{tab:truefalseswitch}
verwendet werden. Wird die Option ohne Wert-Angabe verwendet, so wird der Wert
\PValue{true} angenommen, also doppelseitiger Satz verwendet. Ein Deaktivieren
der Option führt zu einseitigem Satz.

\begin{table}
  \begin{minipage}{\textwidth}
  \centering
  \caption{Standardwerte für einfache Schalter in \KOMAScript}
  \begin{tabular}{ll}
    \toprule
    Wert & Bedeutung \\
    \midrule
    \PValue{true}\footnote{Dieser Wert wird auch
      eingesetzt, wenn die entsprechende Option ohne Wertangabe verwendet
      wird.} & aktiviert die Option\\
    \PValue{on}   & aktiviert die Option \\
    \PValue{yes}  & aktiviert die Option \\
    \PValue{false}& deaktiviert die Option \\
    \PValue{off}  & deaktiviert die Option \\
    \PValue{no}   & deaktiviert die Option \\
    \bottomrule
  \end{tabular}
  \label{tab:truefalseswitch}
  \end{minipage}
\end{table}

Außer den Werten aus \autoref{tab:truefalseswitch} kann jedoch auch noch der
Wert \PValue{semi}\ChangedAt{v3.00}{\Package{typearea}} angegeben
werden. Dieser Wert \PValue{semi} führt zu doppelseitigem Satz mit einseitigen
Rändern und einseitigen, also nicht alternierenden Marginalien.

Die Option kann wahlweise als Klassenoption bei \Macro{documentclass}, als
Paketoption bei \Macro{usepackage} oder auch nach dem Laden von
\Package{typearea} per \Macro{KOMAoptions} oder \Macro{KOMAoption} gesetzt
werden. Eine Verwendung dieser Option nach dem Laden von \Package{typearea}
führt dabei automatisch zur Neuberechnung des Satzspiegels mittels
\Macro{recalctypearea} (siehe
\autopageref{desc:typearea.cmd.recalctypearea}). War vor der Option
doppelseitiger Satz aktiv, wird noch vor der Neuberechnung auf die nächste
ungerade Seite umbrochen.%
%
\EndIndex{Option}{twoside~=semi}%
\EndIndex{Option}{twoside~=\PName{Ein-Aus-Wert}}


\BeginIndex{Option}{twocolumn~=\PName{Ein-Aus-Wert}}%
\begin{Declaration}
  \KOption{twocolumn}\PName{Ein-Aus-Wert}
\end{Declaration}
Für die Berechnung eines guten Satzspiegels mit Hilfe von
\OptionValue{DIV}{calc} ist es erforderlich zu wissen, ob das Dokument ein-
oder zweispaltig gesetzt wird. Da die Betrachtungen zur Zeilenlänge aus
\autoref{sec:typearea.basics} dann für jede einzelne Spalte gelten, darf der
Satzspiegel in doppelspaltigen Dokumenten bis zu doppelt so breit sein wie in
einspaltigen Dokumenten. 

Um diese Unterscheidung vornehmen zu können, muss
\Package{typearea} mit der Option \Option{twocolumn} mitgeteilt werden, ob das
Dokument doppelspaltig gesetzt wird. Als \PName{Ein-Aus-Wert} kann dabei einer
der Standardwerte für einfache Schalter aus \autoref{tab:truefalseswitch}
verwendet werden. Wird die Option ohne Wert-Angabe verwendet, so wird der Wert
\PValue{true} angenommen, also doppelspaltiger Satz verwendet. Ein Deaktivieren
der Option führt zu einspaltigem Satz.

Die Option kann wahlweise als Klassenoption bei \Macro{documentclass}, als
Paketoption bei \Macro{usepackage} oder auch nach dem Laden von
\Package{typearea} per \Macro{KOMAoptions} oder \Macro{KOMAoption} gesetzt
werden. Eine Verwendung dieser Option nach dem Laden von \Package{typearea}
führt dabei automatischen zur Neuberechnung des Satzspiegels mittels
\Macro{recalctypearea} (siehe
\autopageref{desc:typearea.cmd.recalctypearea}).%
%
\EndIndex{Option}{twocolumn~=\PName{Ein-Aus-Wert}}


\BeginIndex{Option}{headinclude~=\PName{Ein-Aus-Wert}}%
\BeginIndex{Option}{footinclude~=\PName{Ein-Aus-Wert}}%
\begin{Declaration}
  \KOption{headinclude}\PName{Ein-Aus-Wert}\\
  \KOption{footinclude}\PName{Ein-Aus-Wert}
\end{Declaration}%
\begin{Explain}%
  Bisher wurde zwar erklärt, wie die
  Satzspiegelkonstruktion\Index{Satzspiegel} funktioniert und in welchem
  Verhältnis die Ränder\Index{Rand} zueinander und der Textkörper zur Seite
  steht, aber eine entscheidende Frage blieb ausgeklammert: Was ist denn
  eigentlich unter dem Rand zu verstehen?

  Auf den ersten Blick wirkt diese Frage trivial: Der Rand ist der Teil der
  Seite, der oben, unten, links und rechts frei bleibt. Doch das ist nur die
  halbe Wahrheit. Der äußere Rand ist keineswegs immer leer. Teilweise findet
  man darin noch gesetzte Randnotizen (siehe den Befehl \Macro{marginpar}
  beispielsweise in \cite{l2kurz} bzw. \autoref{sec:maincls.marginNotes}).

  Beim oberen und unteren Rand stellt sich die Frage, wie Kopf- und
  Fußzeile\Index{Seitenkopf}\Index{Seitenfuß} zu behandeln sind.  Gehören
  diese beiden zum Textkörper oder zum jeweiligen Rand? Die Frage ist nicht
  einfach zu beantworten.  Eindeutig ist, dass ein leerer Fuß und ein leerer
  Kopf zum Rand zu rechnen sind. Schließlich können sie nicht vom restlichen
  Rand unterschieden werden. Ein Fuß, der nur die
  Paginierung\Index[indexmain]{Paginierung}\footnote{Unter der Paginierung
    versteht man die Angabe der Seitenzahl.} enthält, wirkt optisch ebenfalls
  eher wie Rand und sollte deshalb zu diesem gerechnet werden. Für die
  optische Wirkung ist dabei unwesentlich, ob der Fuß beim Lesen oder
  Überfliegen leicht als Fuß erkannt werden kann oder nicht. Entscheidend ist,
  wie eine wohlgefüllte Seite bei \emph{unscharfer Betrachtung} wirkt. Dazu
  bedient man sich beispielsweise seiner altersweitsichtigen Großeltern, denen
  man die Brille stibitzt und dann die Seite etwa einen halben Meter von der
  Nasenspitze entfernt hält. In Ermangelung erreichbarer Großeltern kann man
  sich auch damit behelfen, dass man die eigenen Augen auf Fernsicht stellt,
  die Seite aber nur mit ausgestreckten Armen hält. Brillenträger sind hier
  deutlich im Vorteil. Hat man eine Fußzeile, die neben der Paginierung
  weitere, weitschweifige Angaben enthält, beispielsweise einen
  Copyright-Hinweis, so wirkt die Fußzeile eher wie ein etwas abgesetzter Teil
  des Textkörpers. Bei der Berechnung des Satzspiegels sollte das
  berücksichtigt werden.
  
  Bei der Kopfzeile sieht es noch schwieriger aus. In der Kopfzeile
  wird häufig der
  Kolumnentitel\Index[indexmain]{Kolumnentitel}\footnote{Unter dem
    Kolumnentitel versteht man in der Regel die Wiederholung einer
    Überschrift mit Titelcharakter. Er steht häufig im Seitenkopf,
    seltener im Seitenfuß.} gesetzt. Arbeitet man mit einem
  lebenden Kolumnentitel, also der Wiederholung der ersten bzw.
  zweiten Gliederungsebene in der Kopfzeile, und hat gleichzeitig sehr
  lange Überschriften, so erhält man automatisch sehr lange
  Kopfzeilen. In diesem Fall wirkt der Kopf wiederum wie ein
  abgesetzter Teil des Textkörpers und weniger wie leerer Rand.
  Verstärkt wird dieser Effekt noch, wenn neben dem Kolumnentitel auch
  die Paginierung im Kopf erfolgt. Dadurch erhält man einen links und
  rechts abgeschlossenen Bereich, der kaum noch als leerer Rand wirkt.
  Schwieriger ist es bei Paginierung im Fuß und Überschriften, deren
  Länge sehr stark schwankt. Hier kann der Kopf der einen Seite wie
  Textkörper wirken, der Kopf der anderen Seite jedoch eher wie Rand.
  Keinesfalls sollte man die Seiten jedoch unterschiedlich behandeln.
  Das würde zu vertikal springenden Köpfen führen und ist nicht einmal
  für ein Daumenkino geeignet. Ich rate in diesem Fall dazu, den Kopf
  zum Textkörper zu rechnen.

  Ganz einfach fällt die Entscheidung, wenn Kopf oder Fuß durch
  eine Linie vom eigentlichen Textkörper abgetrennt sind. Dadurch
  erhält man eine geschlossene Wirkung und der Kopf bzw. Fuß sollte
  unbedingt zum Textkörper gerechnet werden. Wie gesagt: Die durch die
  Trennlinie verbesserte Erkennung des Kopfes oder Fußes ist hier
  unerheblich. Entscheidend ist die unscharfe Betrachtung.\par
\end{Explain}

Das \Package{typearea}-Paket trifft die Entscheidung, ob ein Kopf oder Fuß zum
Textkörper gehört oder davon getrennt zum Rand gerechnet werden muss, nicht
selbst. Stattdessen kann mit den Optionen \Option{headinclude} und
\Option{footinclude} eingestellt werden, ob der Kopf und der Fuß zum
Textkörper gerechnet werden sollen. Die Optionen verstehen dabei als
\PName{Ein-Aus-Wert}\ChangedAt{v3.00}{\Package{typearea}} die Standardwerte
für einfache Schalter, die in \autoref{tab:truefalseswitch} angegeben
sind. Man kann die Optionen auch ohne Wertzuweisung verwenden. In diesem Fall
wird \PValue{true} als \PName{Ein-Aus-Wert} verwendet, also der Kopf oder Fuß
zum Satzspiegel gerechnet.

Wenn Sie unsicher sind, was die richtige Einstellung ist, lesen Sie bitte
obige Erläuterungen. Voreingestellt sind normalerweise
\OptionValue{headinclude}{false} und
\OptionValue{footinclude}{false}. Dies kann sich jedoch bei den
\KOMAScript-Klassen je nach Klassenoption oder bei Verwendung anderer
\KOMAScript-Pakete generell ändern (siehe \autoref{sec:maincls.options} und
\autoref{cha:scrpage}).

Bitte beachten Sie unbedingt, dass diese Optionen bei Verwendung einer der
\KOMAScript-Klassen als Klassenoptionen oder per \Macro{KOMAoptions}
beziehungsweise \Macro{KOMAoption} nach dem Laden der Klasse übergeben werden
müssen. Eine Änderung dieser Optionen nach dem Laden von \Package{typearea}
führt dabei nicht zu einer automatischen Neuberechnung des
Satzspiegels. Vielmehr wirkt sich die Änderung erst bei der nächsten
Neuberechnung des Satzspiegels aus. Zur Neuberechnung des Satzspiegels siehe
Option \Option{DIV} mit den Werten \PValue{last} oder \PValue{current} (siehe
\autopageref{desc:typearea.option.DIV.last}) oder die Anweisung
\Macro{recalctypearea} (siehe
\autopageref{desc:typearea.cmd.recalctypearea}).%
%
\EndIndex{Option}{headinclude~=\PName{Ein-Aus-Wert}}%
\EndIndex{Option}{footinclude~=\PName{Ein-Aus-Wert}}%


\BeginIndex{Option}{mpinclude~=\PName{Ein-Aus-Wert}}%
\begin{Declaration}
  \KOption{mpinclude}\PName{Ein-Aus-Wert}
\end{Declaration}
Neben\ChangedAt{v2.8q}{\Class{scrbook}\and \Class{scrreprt}\and
  \Class{scrartcl}} Dokumenten, bei denen der Kopf und der Fuß der Seite eher
zum Textbereich als zum Rand gehört, gibt es auch Dokumente, bei denen dies
für Randnotizen zutrifft. Mit der Option \Option{mpinclude} kann genau dies
erreicht werden.  Die Option versteht dabei als
\PName{Ein-Aus-Wert}\ChangedAt{v3.00}{\Package{typearea}} die Standardwerte
für einfache Schalter, die in \autoref{tab:truefalseswitch} angegeben
sind. Man kann die Option auch ohne Wertzuweisung verwenden. In diesem Fall
wird \PValue{true} als \PName{Ein-Aus-Wert} verwendet.

Der Effekt von \OptionValue{mpinclude}{true} ist, dass eine Breiteneinheit vom
Textbereich weggenommen und als Bereich für die Randnotizen verwendet
wird. Mit \OptionValue{mpinclude}{false}, was der Voreinstellung entspricht,
wird hingegen ein Teil des Randes für Randnotizen verwendet. Dies ist, je
nachdem ob einseitig oder doppelseitig gearbeitet wird, ebenfalls eine
Breiteneinheit oder auch eineinhalb Breiteneinheiten. In der Regel ist die
Verwendung von \OptionValue{mpinclude}{true} nicht anzuraten und
sollte Experten vorbehalten bleiben.

\begin{Explain}
  In den meisten Fällen, in denen die Option \Option{mpinclude} sinnvoll ist,
  werden außerdem breitere Randnotizen benötigt. In sehr vielen Fällen sollte
  dabei aber nicht die gesamte Breite, sondern nur ein Teil davon dem
  Textbereich zugeordnet werden. Dies ist beispielsweise der Fall, wenn der
  Rand für Zitate verwendet wird. Solche Zitate werden üblicherweise im
  Flattersatz gesetzt, wobei die bündige Kante an den Textbereich
  anschließt. Da sich kein geschlossener optischer Eindruck ergibt, dürfen die
  flatternden Enden also durchaus teilweise in den Rand ragen. Man kann das
  einfach erreichen, indem man zum einen die Option \Option{mpinclude}
  verwendet. Zum anderen vergrößert man die Länge \Length{marginparwidth} nach
  der Berechnung des Satzspiegels noch mit Hilfe der
  \Macro{addtolength}-Anweisung. Um welchen Wert man vergrößern sollte, hängt
  vom Einzelfall ab und erfordert einiges Fingerspitzengefühl. Auch deshalb
  ist die Option \Option{mpinclude} eher etwas für Experten. Natürlich kann
  man auch festlegen, dass die Randnotizen beispielsweise zu einem Drittel in
  den Rand hineinragen sollen, und das wie folgt erreichen:
% Umbruchkorrektur: listings macht das manchmal nicht optimal
\begin{lstcode}[belowskip=\dp\strutbox]
  \setlength{\marginparwidth}{1.5\marginparwidth}
\end{lstcode}

  Da es derzeit keine Option gibt, um mehr Platz für die Randnotizen innerhalb
  des Textbereichs vorzusehen, gibt es nur eine Möglichkeit, dies zu
  erreichen. Man verzichtet auf die Option \Option{mpinclude} oder setzt
  \Option{mpinclude} auf \PValue{false}, verringert nach der
  Satzspiegelberechnung die Breite des Textbereichs \Macro{textwidth} und
  setzt die Breite des Bereichs der Randnotizen auf den Wert, um den man die
  Breite des Textbereichs verringert hat. Leider lässt sich dieses Vorgehen
  nicht mit der automatischen Berechnung des \PName{DIV}-Wertes verbinden.
  Demgegenüber wird \Option{mpinclude} bei
  \OptionValue{DIV}{calc}\IndexOption{DIV=calc} (siehe
  \autopageref{desc:typearea.option.DIV.calc}) berücksichtigt.
\end{Explain}

Bitte beachten Sie unbedingt, dass diese Option bei Verwendung einer der
\KOMAScript-Klassen als Klassenoption oder per \Macro{KOMAoptions}
beziehungsweise \Macro{KOMAoption} nach dem Laden der Klasse übergeben werden
muss. Eine Änderung dieser Option nach dem Laden von \Package{typearea} führt
nicht zu einer automatischen Neuberechnung des Satzspiegels. Vielmehr wirkt
sich die Änderung erst bei der nächsten Neuberechnung des Satzspiegels
aus. Zur Neuberechnung des Satzspiegels siehe Option \Option{DIV} mit den
Werten \PValue{last} oder \PValue{current} (siehe
\autopageref{desc:typearea.option.DIV.last}) oder die Anweisung
\Macro{recalctypearea} (siehe
\autopageref{desc:typearea.cmd.recalctypearea}).%
%
\EndIndex{Option}{mpinclude~=\PName{Ein-Aus-Wert}}%


\BeginIndex{Option}{headlines~=\PName{Anzahl}}%
\BeginIndex{Option}{headheight~=\PName{Höhe}}%
\begin{Declaration}
  \KOption{headlines}\PName{Zeilenanzahl}\\
  \KOption{headheight}\PName{Höhe}
\end{Declaration}%
Es ist nun also bekannt, wie man Satzspiegel mit dem \Package{typearea}-Paket
berechnet und wie man dabei angibt, ob der Kopf oder Fuß zum Textkörper oder
zum Rand gehört. Insbesondere für den Kopf fehlt aber noch die Angabe, wie
hoch er denn eigentlich sein soll. Hierzu dienen die Optionen
\Option{headlines} und
\Option{headheight}\ChangedAt{v3.00}{\Package{typearea}}.

Die Option \Option{headlines} setzt man dabei auf die Anzahl der Kopfzeilen.
Normalerweise arbeitet das \Package{typearea}-Paket mit 1,25
Kopfzeilen. Dieser Wert stellt einen Kompromiss dar. Zum einen ist er groß
genug, um auch für eine unterstrichene Kopfzeile (siehe
\autoref{sec:maincls.options}) Platz zu bieten, zum anderen ist er klein
genug, um das Randgewicht nicht zu stark zu verändern, wenn mit einer
einfachen, nicht unterstrichenen Kopfzeile gearbeitet wird. Damit ist der
voreingestellte Wert in den meisten Standardfällen ein guter Wert.  In einigen
Fällen will oder muss man aber die Kopfhöhe genauer den tatsächlichen
Erfordernissen anpassen.

\begin{Example}
  Angenommen, es soll ein Text mit einem zweizeiligen Kopf erstellt
  werden. Normalerweise würde dies dazu führen, dass auf jeder Seite
  eine Warnung »\texttt{overfull} \Macro{vbox}« von {\LaTeX}
  ausgegeben würde. Um dies zu verhindern, wird das
  \Package{typearea}-Paket angewiesen, einen entsprechenden Satzspiegel
  zu berechnen:
\begin{lstcode}
  \documentclass[a4paper]{article}
  \usepackage[headlines=2.1]{typearea}
\end{lstcode}
  Es ist auch wieder möglich und bei Verwendung einer \KOMAScript-Klasse
  empfehlenswert, diese Option direkt an die Klasse zu übergeben:
\begin{lstcode}
  \documentclass[headlines=2.1]{scrartcl}
\end{lstcode}
  Befehle, mit denen dann der Inhalt der zweizeiligen Kopfzeile
  definiert werden kann, sind in \autoref{cha:scrpage} zu finden.
\end{Example}

In einigen Fällen ist es nützlich, wenn man die Kopfhöhe nicht in Zeilen,
sondern direkt als Längenwert angeben kann. Dies ist mit Hilfe der alternativ
verwendbaren Option \Option{headheight} möglich. Als \PName{Höhe} sind alle
Längen und Größen verwendbar, die \LaTeX{} kennt. Es ist jedoch zu beachten,
dass bei Verwendung einer \LaTeX-Länge wie \Length{baselineskip} nicht deren
Größe zum Zeitpunkt des Setzens der Option, sondern zum Zeitpunkt der
Berechnung des Satzspiegels und der Rändern entscheidend ist.

Bitte beachten Sie unbedingt, dass diese Optionen bei Verwendung einer der
\KOMAScript-Klassen als Klassenoptionen oder per \Macro{KOMAoptions}
beziehungsweise \Macro{KOMAoption} nach dem Laden der Klasse übergeben werden
müssen. Eine Änderung dieser Optionen nach dem Laden von \Package{typearea}
führt nicht zu einer automatischen Neuberechnung des Satzspiegels. Vielmehr
wirkt sich die Änderung erst bei der nächsten Neuberechnung des Satzspiegels
aus. Zur Neuberechnung des Satzspiegels siehe Option \Option{DIV} mit den
Werten \PValue{last} oder \PValue{current} (siehe
\autopageref{desc:typearea.option.DIV.last}) oder die Anweisung
\Macro{recalctypearea} (siehe
\autopageref{desc:typearea.cmd.recalctypearea}).%
%
\EndIndex{Option}{headheight~=\PName{Höhe}}%
\EndIndex{Option}{headlines~=\PName{Anzahl}}


\BeginIndex{Cmd}{areaset}%
\begin{Declaration}
  \Macro{areaset}\OParameter{BCOR}\Parameter{Breite}\Parameter{Höhe}
\end{Declaration}%
Bis hier wurde nun eine Menge darüber erzählt, wie man einen guten
Satzspiegel\Index{Satzspiegel} für Standardanwendungen erstellt und wie das
\Package{typearea}-Paket dem Anwender diese Arbeit erleichtert, ihm aber
gleichzeitig Möglichkeiten der Einflussnahme bietet. Es gibt jedoch auch
Fälle, in denen der Textkörper eine bestimmte Größe exakt einhalten soll, ohne
dass dabei auf gute Satzspiegelkonstruktion oder auf weitere Nebenbedingungen
zu achten ist. Trotzdem sollen die Ränder so gut wie möglich verteilt und
dabei gegebenenfalls auch eine Bindekorrektur berücksichtigt werden. Das
\Package{typearea}-Paket bietet hierfür den Befehl \Macro{areaset}, dem man
neben der optionalen Bindekorrektur als Parameter die Breite und Höhe des
Textbereichs übergibt. Die Ränder und deren Verteilung werden dann automatisch
berechnet, wobei gegebenenfalls auch die Einstellungen der Paketoptionen
\Option{headinclude} und \Option{footinclude} berücksichtigt werden. Die
Optionen \Option{headlines}\IndexOption{headlines} und
\Option{headheight}\IndexOption{headheight} bleiben in diesem Fall jedoch
unberücksichtigt!

\begin{Example}
  Angenommen, ein Text auf A4-Papier soll genau die Breite von 60
  Zeichen in der Typewriter-Schrift haben und exakt 30 Zeilen je Seite
  besitzen. Dann könnte mit folgender Präambel gearbeitet werden:
\begin{lstcode}
  \documentclass[a4paper,11pt]{article}
  \usepackage{typearea}
  \newlength{\CharsLX}% Breite von 60 Zeichen
  \newlength{\LinesXXX}% Hoehe von 30 Zeilen
  \settowidth{\CharsLX}{\texttt{1234567890}}
  \setlength{\CharsLX}{6\CharsLX}
  \setlength{\LinesXXX}{\topskip}
  \addtolength{\LinesXXX}{29\baselineskip}
  \areaset{\CharsLX}{\LinesXXX}
\end{lstcode}
  Der Faktor von 29 statt 30 ist damit begründet, dass die Grundlinie der
  obersten Zeile bereits am obersten Rand des um \Macro{topskip} verringerten
  Satzspiegels liegt, solange die Höhe der obersten Zeile kleiner als
  \Macro{topskip} ist. Die oberste Zeile benötigt damit keine Höhe. Die
  Unterlängen der untersten Zeile ragen dafür unter den Satzspiegel.

\item Soll stattdessen ein Gedichtband gesetzt werden, bei dem es nur
  darauf ankommt, dass der Textbereich genau quadratisch mit einer
  Seitenlänge von 15\Unit{cm} ist, wobei ein Binderand von
  1\Unit{cm} zu berücksichtigen ist, so kann dies wie folgt
  erreicht werden:
\begin{lstcode}
  \documentclass{gedichte}
  \usepackage{typearea}
  \areaset[1cm]{15cm}{15cm}
\end{lstcode}
\end{Example}
\EndIndex{Cmd}{areaset}


\BeginIndex{Option}{DIV~=areaset}%
\begin{Declaration}
  \OptionValue{DIV}{areaset}
\end{Declaration}%
In\ChangedAt{v3.00}{\Package{typearea}} seltenen Fällen ist es nützlich, wenn
man den aktuell eingestellten Satzspiegel neu ausrichten lassen kann. Dies ist
mit der Option \OptionValue{DIV}{areaset} möglich, wobei
\Macro{KOMAoptions}\PParameter{DIV=areaset} der Anweisung
\begin{lstcode}[belowskip=\dp\strutbox]
  \areaset[current]{\textwidth}{\textheight}
\end{lstcode}
entspricht. Dasselbe Ergebnis erhält man auch, wenn \OptionValue{DIV}{last}
verwendet wird und der Satzspiegel zuletzt per \Macro{areaset} eingestellt
wurde.%
%
\EndIndex{Option}{DIV~=areaset}%

\iffalse% Umbruchkorrekturtext: Alternativen
Wenn Sie konkrete Vorgaben bezüglich der Ränder zu erfüllen haben, ist
\Package{typearea} nicht geeignet. In diesem Fall ist die Verwendung des
Paketes \Package{geometry}\IndexPackage{geometry} (siehe
\cite{package:geometry}) empfehlenswert.
%
\else
%
Das Paket \Package{typearea} ist nicht dafür gedacht, bestimmte Randbreiten
einzustellen. Dafür ist das Paket \Package{geometry}\IndexPackage{geometry}
(siehe \cite{package:geometry}) empfehlenswert.
%
\fi


\section{Einstellung des Papierformats}%
\label{sec:typearea.paperTypes}%
\BeginIndex{}{Papier>Format}%

Das Papierformat ist ein entscheidendes Grundmerkmal eines Dokuments. Wie
bereits bei der Vorstellung der unterstützten Satzspiegelkonstruktionen (siehe
\autoref{sec:typearea.basics} bis \autoref{sec:typearea.circleConstruction} ab
\autopageref{sec:typearea.basics})
aufgezeigt, steht und fällt die Auf"|teilung der Seite und damit das gesamte
Dokumentlayout mit der Wahl des Papierformats. Während die
\LaTeX-Standardklassen auf einige wenige Formate festgelegt sind, unterstützt
\KOMAScript{} mit dem Paket \Package{typearea} selbst ausgefallene
Seitengrößen.


\BeginIndex{Option}{paper~=\PName{Format}}%
\BeginIndex{Option}{paper~=\PName{Ausrichtung}}%
\begin{Declaration}
  \KOption{paper}\PName{Format}
\end{Declaration}%
Die Option \Option{paper}\ChangedAt{v3.00}{\Package{typearea}} ist das
zentrale Element der Formatauswahl bei \KOMAScript. Als \PName{Format} wird
dabei zunächst das amerikanische \Option{letter}, \Option{legal} und
\Option{executive} unterstützt. Darüber hinaus sind die ISO-Formate der Reihen
A, B, C und D möglich, also beispielsweise \PValue{A4} oder -- klein
geschrieben -- \PValue{a4}. Querformate werden dadurch unterstützt, dass man
die Option ein weiteres Mal mit dem Wert
\PValue{landscape}\Index{Papier>Ausrichtung} angibt. Zusätzlich kann das
\PName{Format} auch in der Form
\PName{Breite}\texttt{:}\PName{Höhe}\ChangedAt{v3.01b}{\Package{typearea}}
angegeben werden. Es wird darauf hingewiesen, dass bis Version~3.01a
\PName{Höhe} und \PName{Breite} vertauscht waren. Dies ist insbesondere dann
zu beachten, wenn mit einer entsprechenden Kompatibilitätseinstellung (siehe
Option \Option{version}, \autoref{sec:typearea.compatibilityOptions},
\autopageref{desc:typearea.option.version}) gearbeitet wird.

\begin{Example}
  Angenommen, es soll eine Karteikarte im Format ISO-A8 quer bedruckt
  werden. Dabei sollen die Ränder sehr klein gewählt werden. Außerdem
  wird auf eine Kopf- und eine Fußzeile verzichtet.
\begin{lstcode}
  \documentclass{article}
  \usepackage[headinclude=false,footinclude=false,%
              paper=A8,paper=landscape]{typearea}
  \areaset{7cm}{5cm}
  \pagestyle{empty}
  \begin{document}
  \section*{Definierte Papierformate}
  letter, legal, executive, a0, a1 \dots\ %
  b0, b1 \dots\ c0, c1 \dots\ d0, d1 \dots
  \end{document}
\end{lstcode}
  Haben die Karteikarten das Sonderformat (B:H) 5\Unit{cm}\,:\,3\Unit{cm}, so
  ist dies mit
\begin{lstcode}
  \documentclass{article}
  \usepackage[headinclude=false,footinclude=false,%
              paper=5cm:3cm]{typearea}
  \areaset{4cm}{2.4cm}
  \pagestyle{empty}
  \begin{document}
  \section*{Definierte Papierformate}
  letter, legal, executive, a0, a1 \dots\ %
  b0, b1 \dots\ c0, c1 \dots\ d0, d1 \dots
  \end{document}
\end{lstcode}
  möglich.
\end{Example}

In der Voreinstellung wird bei \KOMAScript{} mit A4-Papier in der Ausrichtung
portrait gearbeitet. Dies ist ein Unterschied zu den Standardklassen, bei denen
in der Voreinstellung das amerikanische Format letter verwendet wird.

Bitte beachten Sie unbedingt, dass diese Option bei Verwendung einer der
\KOMAScript-Klassen als Klassenoption oder per \Macro{KOMAoptions}
beziehungsweise \Macro{KOMAoption} nach dem Laden der Klasse übergeben werden
muss.  Eine Änderung des Papierformats oder der Papierausrichtung mit Hilfe
von \Macro{KOMAoptions} oder \Macro{KOMAoption} nach dem Laden von
\Package{typearea} führt nicht zu einer automatischen Neuberechnung des
Satzspiegels. Vielmehr wirkt sich die Änderung erst bei der nächsten
Neuberechnung des Satzspiegels aus. Zur Neuberechnung des Satzspiegels siehe
Option \Option{DIV} mit den Werten \PValue{last} oder \PValue{current} (siehe
\autopageref{desc:typearea.option.DIV.last}) oder die Anweisung
\Macro{recalctypearea} (siehe
\autopageref{desc:typearea.cmd.recalctypearea}).%
%
\EndIndex{Option}{paper~=\PName{Ausrichtung}}%
\EndIndex{Option}{paper~=\PName{Format}}


\BeginIndex{Option}{pagesize}%
\BeginIndex{Option}{pagesize~=\PName{Ausgabetreiber}}%
\begin{Declaration}
  \KOption{pagesize}\PName{Ausgabetreiber}
\end{Declaration}%
\begin{Explain}%
  Die oben genannten Mechanismen zur Auswahl des Papierformats haben nur
  insofern einen Einfluss auf die Ausgabe, als interne {\LaTeX}-Maße gesetzt
  werden. Das \Package{typearea} verwendet diese dann bei der Auf"|teilung der
  Seite in Ränder und Textbereich. Die Spezifikation des
  DVI-Formats\Index{DVI} sieht aber an keiner Stelle Angaben zum Papierformat
  vor. Wird direkt aus dem DVI-Format in eine Low-Level-Druckersprache wie
  PCL%
  \iffalse% Umbruchkorrektur
  \footnote{PCL ist die Druckersprache, die HP für seine Tinten- und
    Laserdrucker verwendet.}%
  \fi \ oder ESC/P2%
  \iffalse% Umbruchkorrektur
  \footnote{ESC/P2 ist die Druckersprache, die EPSON für seine Nadel-, Tinten-
    und Laserdrucker benutzt.}%
  \fi \ ausgegeben, spielt dies normalerweise keine Rolle, da auch bei diesen
  Ausgaben der 0-Bezugspunkt wie bei DVI links oben liegt. Wird aber in
  Sprachen wie PostScript\Index{PostScript} oder PDF\Index{PDF} übersetzt, bei
  denen der 0-Bezugspunkt an anderer Stelle liegt und außerdem das
  Papierformat in der Ausgabedatei angegeben werden sollte, so fehlt diese
  Information. Als Lösung des Problems verwendet der entsprechende Treiber
  eine voreingestellte Papiergröße, die der Anwender entweder per Option oder
  durch entsprechende Angabe in der {\TeX}-Quelldatei verändern kann. Bei
  Verwendung des DVI-Treibers \File{dvips} kann diese Angabe in Form einer
  \Macro{special}-Anweisung erfolgen. Bei {pdf\TeX} oder {V\TeX} werden
  stattdessen zwei Längen entsprechend gesetzt.
\end{Explain}
Mit der Option \OptionValue{pagesize}{dvips}\IndexOption{pagesize~=dvips} wird
erreicht, dass die Papiergröße als \Macro{special} in die DVI-Datei
geschrieben wird. Dieses \Macro{special} wird beispielsweise von \File{dvips}
ausgewertet. Demgegenüber schreibt die Option \OptionValue{pagesize}{pdftex}
die Papiergröße am Anfang des Dokuments in die {pdf\TeX}-Seitenregister,
\Length{pdfpagewidth}\IndexLength{pdfpagewidth} und
\Length{pdfpageheight}\IndexLength{pdfpageheight}, so dass später beim
Betrachten der erzeugten PDF-Datei das korrekte Format angegeben wird. Die
Option \OptionValue{pagesize}{auto} verhält sich flexibler und verwendet je
nachdem, ob eine PDF- oder eine DVI-Datei ausgegeben wird, den Mechanismus der
Option \OptionValue{pagesize}{dvips} oder der Option
\OptionValue{pagesize}{pdftex}. Mit Option \OptionValue{pagesize}{automedia}
werden ggf. auch \Length{mediawidth} und \Length{mediaheight} passend
gesetzt. Damit wird auch {V\TeX} berücksichtigt. Bei Verwendung der Option
\Option{pagesize} ohne Angabe eines \PName{Ausgabetreiber} wird \PValue{auto}
eingesetzt.
\begin{Example}
  Angenommen, es soll ein Dokument sowohl als DVI-Datei verwendet
  werden, als auch eine Online-Version im PDF-Format erstellt
  werden. Dann könnte die Präambel beispielsweise so beginnen:
\begin{lstcode}
  \documentclass{article}
  \usepackage[paper=A4,pagesize]{typearea}
\end{lstcode}
  Wird nun für die Bearbeitung {pdf\TeX} verwendet \emph{und} die
  PDF-Ausgabe aktiviert, so werden die beiden Größen
  \Macro{pdfpagewidth} und \Macro{pdfpageheight} entsprechend gesetzt.
  Wird jedoch eine DVI-Datei erzeugt -- egal ob mit {\LaTeX} oder
  {pdf\LaTeX} --, so wird ein \Macro{special} an den Anfang dieser
  Datei geschrieben.
\end{Example}%
Es wird empfohlen, die Option immer anzugeben. In der Regel ist dabei die
Methode ohne \PName{Ausgabetreiber} oder mit \PValue{auto} oder
\PValue{automedia} günstig.%
\EndIndex{Option}{pagesize}%
\EndIndex{Option}{pagesize~=\PName{Ausgabetreiber}}%
%
\EndIndex{}{Papier>Format}


\section{Tipps}
\label{sec:typearea.tips}

Insbesondere für die Erstellung von schriftlichen Arbeiten während des
Studiums findet man häufig Vorschriften, die einer typografischen Begutachtung
nicht nur in keiner Weise standhalten, sondern massiv gegen alle Regeln der
Typografie verstoßen. Ursache für solche Regeln ist oft typografische
Inkompetenz derjenigen, die sie herausgeben. Manchmal ist die Ursache auch im
Ausgangspunkt begründet, nämlich der Schreibmaschine. Mit einer
Schreibmaschine oder einer Textverarbeitung von 1980 ist es ohne erheblichen
Aufwand kaum möglich, typografisch perfekte Ergebnisse zu erzielen. Also
wurden einst Vorschriften erlassen, die leicht erfüllbar schienen und dem
Korrektor trotzdem entgegenkommen. Dazu zählen dann Randeinstellungen, die
für einseitigen Druck mit einer Schreibmaschine zu brauchbaren Zeilenlängen
führen. Um nicht extrem kurze Zeilen zu erhalten, die durch Flattersatz zudem
verschlimmert werden, werden die Ränder schmal gehalten und für Korrekturen
stattdessen ein großer Durchschuss in Form von eineinhalbzeiligem Satz
vorgeschrieben.  Bevor moderne Textverarbeitungssysteme verfügbar wurden, wäre
-- außer mit {\TeX} -- einzeiliger Satz die einzige Alternative gewesen. Dabei
wäre dann selbst das Anbringen von Korrekturzeichen schwierig geworden. Als
die Verwendung von Computern für die Erstellung schriftlicher Arbeiten
üblicher wurde, hat sich manches Mal auch der Spieltrieb des einen oder
anderen Studenten gezeigt, der durch Verwendung einer Schmuckschrift seine
Arbeit aufpeppen und so eine bessere Note mit weniger Einsatz herausschinden
wollte.  Nicht bedacht hat er dabei, dass solche Schriften schlechter zu lesen
und deshalb für den Zweck ungeeignet sind. Damit hielten zwei Brotschriften
Einzug in die Vorschriften, die weder zusammenpassen noch im Falle von Times
wirklich gut geeignet sind. Times ist eine relativ enge Schrift, die Anfang
des 20.~Jahrhunderts speziell für schmale Spalten im englischen Zeitungssatz
entworfen wurde. In modernen Schnitten ist dies etwas entschärft. Dennoch
passt die häufig vorgeschriebene Times meist nicht zu den gleichzeitig
gegebenen Randvorgaben.

{\LaTeX} setzt bereits von sich aus mit ausreichendem Durchschuss.
Gleichzeitig sind die Ränder bei sinnvollen Zeilenlängen groß genug, um Platz
für Korrekturen zu bieten. Dabei wirkt die Seite trotz einer Fülle von Text
großzügig angelegt.

Oft sind die typografisch mehr als fragwürdigen Satzvorschriften mit {\LaTeX}
auch außerordentlich schwierig umzusetzen. So kann eine feste Anzahl von
»Anschlägen« nur dann eingehalten werden, wenn keine proportionale Schrift
verwendet wird.  Es gibt nur wenige gute nichtproportionale Schriften. Kaum
ein Text, der mit einer derartigen Schrift gesetzt ist, wirkt wirklich gut. So
wird häufig versucht, durch ausladende Serifen beispielsweise beim kleinen »i«
oder »l« die unterschiedliche Breite der Zeichen auszugleichen. Dies kann
nicht funktionieren. Im Ergebnis wirkt der Text unruhig und
zerrissen. Außerdem verträgt sich eine solche Schrift kaum mit dem im
deutschen Sprachraum üblichen und allgemein vorzuziehenden Blocksatz. Gewisse
Vorgaben können daher bei Verwendung von {\LaTeX} nur ignoriert oder großzügig
ausgelegt werden, etwa indem man »60~Anschläge pro Zeile« nicht als feste,
sondern als durchschnittliche oder maximale Angabe interpretiert.

Wie ausgeführt, sind Satzvorschriften meist dazu gedacht, ein brauchbares
Ergebnis zu erhalten, auch wenn der Ausführende selbst nicht weiß, was dabei
zu beachten ist. Brauchbar bedeutet häufig: lesbar und korrigierbar. Nach
meiner Auf"|fassung wird ein mit {\LaTeX} und dem \Package{typearea}-Paket
gesetzter Text bezüglich des Satzspiegels diesen Anforderungen von vornherein
gerecht. Wenn Sie also mit Vorschriften konfrontiert sind, die offensichtlich
erheblich davon abweichen, so empfehle ich, dem Betreuer einen Textauszug
vorzulegen und nachzufragen, ob es gestattet ist, die Arbeit trotz der
Abweichungen in dieser Form zu liefern. Gegebenenfalls kann durch Veränderung
der Option \Option{DIV} der Satzspiegel moderat angepasst werden. Von der
Verwendung von \Macro{areaset} zu diesem Zweck rate ich jedoch
ab. Schlimmstenfalls verwenden Sie das nicht zu {\KOMAScript} gehörende
\Package{geometry}-Paket (siehe \cite{package:geometry}) oder verändern Sie
die Satzspiegelparameter von {\LaTeX} selbst. Die von \Package{typearea}
ermittelten Werte finden Sie in der \File{log}-Datei Ihres Dokuments.  Damit
sollten moderate Anpassungen möglich sein. Achten Sie jedoch unbedingt darauf,
dass die Proportionen des Textbereichs mit denen der Seite unter
Berücksichtigung der Bindekorrektur annähernd übereinstimmen.

Sollte es unbedingt erforderlich sein, den Text eineinhalbzeilig zu setzen, so
definieren Sie keinesfalls \Macro{baselinestretch} um. Dieses Vorgehen wird
zwar allzu häufig empfohlen, ist aber seit der Einführung von {\LaTeXe} im
Jahre 1994 obsolet.  Verwenden Sie schlimmstenfalls den Befehl
\Macro{linespread}. Ich empfehle das Paket
\Package{setspace},\IndexPackage{setspace} das nicht zu {\KOMAScript} gehört
(siehe \cite{package:setspace}).  Auch sollten Sie \Package{typearea} nach der
Umstellung des Zeilenabstandes den Satzspiegel für diesen Abstand berechnen
lassen, jedoch für den Titel, besser auch für die Verzeichnisse -- sowie das
Literaturverzeichnis und den Index -- wieder auf normalen Satz umschalten. Das
\Package{setspace}-Paket bietet dafür eine spezielle Umgebung und eigene
Befehle.

Das \Package{typearea}-Paket berechnet auch bei der Option
\OptionValue{DIV}{calc} einen sehr großzügigen Textbereich. Viele konservative
Typografen werden feststellen, dass die resultierende Zeilenlänge noch zu groß
ist. Der berechnete \Var{DIV}-Wert ist ebenfalls in der \File{log}-Datei zum
jeweiligen Dokument zu finden. Sie können also leicht nach dem ersten
\LaTeX-Lauf einen kleineren Wert wählen.

Nicht selten wird mir die Frage gestellt, warum ich eigentlich kapitelweise
auf einer Satzspiegelberechnung herumreite, während es sehr viel einfacher
wäre, nur ein Paket zur Verfügung zu stellen, mit dem man die Ränder wie bei
einer Textverarbeitung einstellen kann.  Oft wird auch behauptet, ein solches
Paket wäre ohnehin die bessere Lösung, da jeder selbst wisse, wie gute Ränder
zu wählen seien, und die Ränder von {\KOMAScript} wären ohnehin nicht gut. Ich
erlaube mir zum Abschluss dieses Kapitels ein passendes Zitat von Hans Peter
Willberg und Friedrich Forssmann, zwei der angesehensten Typografen der
Gegenwart (siehe \cite{TYPO:ErsteHilfe}):
\begin{quote}
  \phantomsection\label{sec:typearea.tips.cite}%
  \textit{Das Selbermachen ist längst üblich, die Ergebnisse oft fragwürdig,
    weil Laien-Typografen nicht sehen, was nicht stimmt und nicht wissen
    können, worauf es ankommt. So gewöhnt man sich an falsche und schlechte
    Typografie.} [\dots] \textit{Jetzt könnte der Einwand kommen, Typografie
    sei doch Geschmackssache. Wenn es um Dekoration ginge, könnte man das
    Argument vielleicht gelten lassen, da es aber bei Typografie in erster
    Linie um Information geht, können Fehler nicht nur stören, sondern sogar
    Schaden anrichten.}
\end{quote}

%%% Local Variables:
%%% mode: latex
%%% coding: iso-latin-1
%%% TeX-master: "../guide"
%%% End:
