\ProvidesFile{layout.tex}[2003/04/16 KOMA-Script Anleitung]
% ============================================================================
% layout.tex 
% Copyright (c) 2001 Markus Kohm and the authors.
%
% This file is part of the LaTeX2e KOMA-Script-Bundle
%
% This file can be redistributed and/or modified under the terms of the LaTeX
% Project Public License Version 1.0 distributed together with this file. See
% LEGAL.TXT or LEGALDE.TXT.
%
% This bundle is written specialy for use at german-language. So the main
% documentation is german. There may also be an english documentation. See
% readme.txt, if you search for it.
% ----------------------------------------------------------------------------
% layout.tex
% Copyright (c) 2001 Markus Kohm und bei den weiteren Autoren.
%
% Diese Datei ist Teil des LaTeX2e KOMA-Script-Paketes.
%
% Diese Datei kann nach den Regeln der LaTeX Project Public Licence 
% Version 1.0, wie sie zusammen mit dieser Datei verteilt wird,
% weiterverbreitet und/oder modifiziert werden. Siehe dazu auch LEGAL.TXT oder
% LEGALDE.TXT.
%
% Dieses Paket ist fuer den deutschen Sprachraum konzipiert. Daher ist auch
% diese Anleitung komplett in Deutsch. Moeglicherweise existiert auch eine
% englische Version der Anleitung. Falls Sie eine solche benoetigen, schauen
% Sie bitte in liesmich.txt nach, ob eine solche vorhanden ist.
% ============================================================================
%
% Modul:    Kopf- und Fusszeilen
% Autoren:  Markus Kohm (MJK) <markus.kohm@gmx.de>
% Inhalt:   Kopf- und Fusszeilen mit scrpage
% Sprache:  Deutsch
% Zeichensatz der Kommentare:
%           US-ASCII
%
%
\chapter{Kopf- und Fußzeilen mit \Package{scrpage2}}\label{cha:scrpage}
%
\BeginIndex{Package}{scrpage2}%
Wie bereits in \autoref{cha:typearea} zur Bestimmung des
Satzspiegels hingewiesen wurde, stellt \KOMAScript{} ein Werkzeug
zur Verfügung, um die im Layout definierten Freiräume für
Kopf- und Fußzeilen auch mit Inhalt zu füllen.

\BeginIndex{Package}{scrpage}%
Dazu dient in \KOMAScript{} das Paket \Package{scrpage2}, das eine
stark erweiterte Variante des originalen \Package{scrpage} darstellt.
Verglichen mit dem häufig anzutreffenden Paket
\Package{fancyhdr} \cite{package:fancyhdr} ist \Package{scrpage2}
extrem flexibel in seiner Benutzung. Weiterhin
ist es durch seine Nähe zu den \KOMAScript{}-Klassen dort gut
integriert und somit eine perfekte Ergänzung der
Standardfunktionalität.

Für \Package{scrpage2} und \Package{scrpage} gilt, dass sie nicht an
die \KOMAScript{}-Klassen gebunden sind.  Sie können mit jeder anderen
Dokumentenklasse, zum Beispiel den Standardklassen eingesetzt werden.
Für neue Dokumente sollte unbedingt das neue Paket \Package{scrpage2}
benutzt werden -- die alte Version steht aus Gründen der
Kompatibilität jedoch weiterhin zur Verfügung. Dieses Kapitel
fokussiert auf \Package{scrpage2}.  
Befehle, die in gleicher Form bei
\Package{scrpage} vorkommen,
werden als solche markiert \ScrpageMark{}(siehe Rand). Treten in der
neuen Variante Abweichungen auf, wird im Text an
markierten\ScrpageNote{} Stellen darauf hingewiesen.
%
\EndIndex{Package}{scrpage}

\begin{Explain}% Einführung zu Kopfzeilen
  Um die nachfolgende Beschreibung zu verstehen, muss noch einiges zu
  \LaTeX{} gesagt werden.  Grundlegend definiert der \LaTeX-Kern die
  Standardseitenstile \PValue{empty}, welcher eine völlig undekorierte
  Seite erzeugt, und \PValue{plain}, welcher meist nur die Seitenzahl
  enthält. Weiterhin ist in vielen Klassen der Stil \PValue{headings}
  zu finden, welcher eine komplexe Seitendekoration erzeugt, wobei es
  hier noch die Untervariante \PValue{myheadings} gibt. Dieser
  Seitenstil \PValue{myheadings} ist wie \PValue{headings} gestaltet,
  jedoch müssen die sonst automatisch aktualisierten Kolumnentitel
  manuell gesetzt werden.  Ausführlicher wird das im Abschnitt
  \ref{sec:maincls.pageStyle} beschrieben.  Weiterhin ist zu beachten,
  dass einige \LaTeX{}-Befehle für die aktuelle
  Seite auf den Seitenstil \PValue{plain} wechseln, auch wenn der
  Autor einen anderen Stil, zum Beispiel \PValue{headings}, eingestellt
  hat.  Das bedeutet, dass zu einem \PValue{headings}-Stil auch ein
  passender \PValue{plain}-Stil vorhanden sein sollte.
  
  Das Paket \Package{scrpage2} definiert dazu einen
  \PValue{headings}-Stil namens \PValue{scrheadings} und einen
  korrespondieren \PValue{plain}-Seitenstil, der einfach
  \PValue{scrplain} heißt.  Letzteren direkt zu aktivieren ist
  eigentlich nicht notwendig, da dies automatisch durch
  \PValue{scrheadings} geschieht.  Eine Ausnahme gibt es nur, wenn
  \PValue{scrheadings} nicht genutzt wird, man aber eigene Stile mit
  \PValue{scrplain} kombinieren will.  Dazu muss vor dem eigenen Stil
  \PValue{scrplain} mindestens einmal, beispielsweise mit
  \Macro{pagestyle}\Parameter{scrplain}%
  \Macro{pagestyle}\Parameter{eigenerStil}, aktiviert werden.
  % next sentence is not not important; shall only reduce
  % stretching of paragraphs
  Dadurch wird der originale \PValue{plain}-Seitenstil mit
  \Package{scrpage2}-Stil \PValue{scrplain} ersetzt und
  ist somit im Folgenden aktiv.
\end{Explain}

\section{Grundlegende Funktionen}\label{sec:scrpage.basics}
\subsection{Vordefinierte Seitenstile}\label{sec:scrpage.basics.buildIn}
% \lehead ...
% scrheadings
% \headmark \pagemark 

\begin{Declaration}
  \PValue{scrheadings}\\
  \PValue{scrplain}
\end{Declaration}%
\BeginIndex{Pagestyle}{scrheadings}\BeginIndex{Pagestyle}{scrplain}%
\Index{Seitenstil}%
Das Paket \Package{scrpage2} liefert einen eigenen Seitenstil namens
\PValue{scrheadings}.  Dieser Seitenstil kann mittels
\Macro{pagestyle}\PParameter{scrheadings} aktiviert werden.  Wird
dieser Seitenstil benutzt, dann ist gleichzeitig ein dazu passender
\PValue{plain}-Stil verfügbar.  Passend bedeutet, dass auch der
\PValue{plain}-Stil auf in \autoref{sec:scrpage.basics.format}
vorgestellten Befehle, die beispielsweise die Kopfbreite ändern,
reagiert. Die Aktivierung des Seitenstils \PValue{scrheadings} oder
des zugehörigen \PValue{plain}-Stils hat keine Auswirkung darauf, ob
mit manuellen oder automatischen Kolumnentiteln gearbeitet wird (siehe
\autoref{sec:scrpage.basics.mark}).

\begin{Declaration}
  \Macro{lehead}%
    \OParameter{scrplain-links-gerade}\Parameter{scrheadings-links-gerade}\\
  \Macro{cehead}%
    \OParameter{scrplain-mittig-gerade}\Parameter{scrheadings-mittig-gerade}\\
  \Macro{rehead}%
    \OParameter{scrplain-rechts-gerade}\Parameter{scrheadings-rechts-gerade}\\
  \Macro{lefoot}%
    \OParameter{scrplain-links-gerade}\Parameter{scrheadings-links-gerade}\\
  \Macro{cefoot}%
    \OParameter{scrplain-mittig-gerade}\Parameter{scrheadings-mittig-gerade}\\
  \Macro{refoot}%
    \OParameter{scrplain-rechts-gerade}\Parameter{scrheadings-rechts-gerade}\\
  \Macro{lohead}%
    \OParameter{scrplain-links-ungerade}\Parameter{scrheadings-links-ungerade}\\
  \Macro{cohead}%
    \OParameter{scrplain-mittig-ungerade}\Parameter{scrheadings-mittig-ungerade}\\
  \Macro{rohead}%
    \OParameter{scrplain-rechts-ungerade}\Parameter{scrheadings-rechts-ungerade}\\
  \Macro{lofoot}%
    \OParameter{scrplain-links-ungerade}\Parameter{scrheadings-links-ungerade}\\
  \Macro{cofoot}%
    \OParameter{scrplain-mittig-ungerade}\Parameter{scrheadings-mittig-ungerade}\\
  \Macro{rofoot}%
    \OParameter{scrplain-rechts-ungerade}\Parameter{scrheadings-rechts-ungerade}\\
  \Macro{ihead}%
    \OParameter{scrplain-innen}\Parameter{scrheadings-innen}\\
  \Macro{chead}%
    \OParameter{scrplain-zentriert}\Parameter{scrheadings-zentriert}\\
  \Macro{ohead}%
    \OParameter{scrplain-außen}\Parameter{scrheadings-außen}\\
  \Macro{ifoot}%
    \OParameter{scrplain-innen}\Parameter{scrheadings-innen}\\
  \Macro{cfoot}%
    \OParameter{scrplain-zentriert}\Parameter{scrheadings-zentriert}\\
  \Macro{ofoot}%
    \OParameter{scrplain-außen}\Parameter{scrheadings-außen}
\end{Declaration}%
\BeginIndex{Cmd}{lehead}\BeginIndex{Cmd}{cehead}\BeginIndex{Cmd}{rehead}%
\BeginIndex{Cmd}{ihead}\BeginIndex{Cmd}{chead}\BeginIndex{Cmd}{ohead}%
\BeginIndex{Cmd}{lohead}\BeginIndex{Cmd}{cohead}\BeginIndex{Cmd}{rohead}%
\BeginIndex{Cmd}{lefoot}\BeginIndex{Cmd}{cefoot}\BeginIndex{Cmd}{refoot}%
\BeginIndex{Cmd}{ifoot}\BeginIndex{Cmd}{cfoot}\BeginIndex{Cmd}{rfoot}%
\BeginIndex{Cmd}{lofoot}\BeginIndex{Cmd}{cofoot}\BeginIndex{Cmd}{rofoot}%
Diese Seitenstile sind so definiert, dass sowohl im Kopf als auch im
Fuß drei Felder vorhanden sind, deren Inhalt modifiziert werden kann.
Die Befehle zur Modifikation sind in \autoref{fig:scrpage.leheadetall}
verdeutlicht. Die in der Mitte dargestellten Befehle modifizieren sowohl
die Felder der linken als auch der rechten Seite.

\begin{figure}
  \centering
  \setlength{\unitlength}{1mm}\begin{picture}(100,65)(0,10)\small
    \put(0,12){\dashbox{2}(40,56){linke Seite}}
    \put(60,12){\dashbox{2}(40,56){rechte Seite}}
                                % Felder: oben links
    \put(1,63){\framebox(8,4){~}}
    \put(16,63){\framebox(8,4){~}}
    \put(31,63){\framebox(8,4){~}}
                                % Felder: oben rechts
    \put(61,63){\framebox(8,4){~}}
    \put(76,63){\framebox(8,4){~}}
    \put(91,63){\framebox(8,4){~}}
                                % Felder: unten links
    \put(1,13){\framebox(8,4){~}}
    \put(16,13){\framebox(8,4){~}}
    \put(31,13){\framebox(8,4){~}}
                                % Felder: unten rechts
    \put(61,13){\framebox(8,4){~}}
    \put(76,13){\framebox(8,4){~}}
    \put(91,13){\framebox(8,4){~}}
                                % die Befehle und Pfeile
                                % für beidseitig
                                % 
    \put(50,65){\makebox(0,0){\Macro{ihead}}}
    \put(44,65){\vector(-1,0){4}}\put(56,65){\vector(1,0){4}}
    \put(50,58){\makebox(0,0){\Macro{chead}}}
    \put(44,58){\line(-1,0){24}}\put(56,58){\line(1,0){24}}
    \put(20,58){\vector(0,1){4}}\put(80,58){\vector(0,1){4}}
    \put(50,51){\makebox(0,0){\Macro{ohead}}}
    \put(44,51){\line(-1,0){40}}\put(56,51){\line(1,0){40}}
    \put(4,51){\vector(0,1){11}}\put(96,51){\vector(0,1){11}}
                                %
    \put(50,15){\makebox(0,0){\Macro{ifoot}}}
    \put(56,15){\vector(1,0){4}}\put(44,15){\vector(-1,0){4}}
    \put(50,22){\makebox(0,0){\Macro{cfoot}}}
    \put(44,22){\line(-1,0){24}}\put(56,22){\line(1,0){24}}
    \put(20,22){\vector(0,-1){4}}\put(80,22){\vector(0,-1){4}}
    \put(50,29){\makebox(0,0){\Macro{ofoot}}}
    \put(44,29){\line(-1,0){40}}\put(56,29){\line(1,0){40}}
    \put(4,29){\vector(0,-1){11}}\put(96,29){\vector(0,-1){11}}
                                % Befehle für einseitig
    \put(5,69){\makebox(0,0)[b]{\Macro{lehead}}}
    \put(20,69){\makebox(0,0)[b]{\Macro{cehead}}}
    \put(35,69){\makebox(0,0)[b]{\Macro{rehead}}}
                                %
    \put(65,69){\makebox(0,0)[b]{\Macro{lohead}}}
    \put(80,69){\makebox(0,0)[b]{\Macro{cohead}}}
    \put(95,69){\makebox(0,0)[b]{\Macro{rohead}}}
                                %
    \put(5,11){\makebox(0,0)[t]{\Macro{lefoot}}}
    \put(20,11){\makebox(0,0)[t]{\Macro{cefoot}}}
    \put(35,11){\makebox(0,0)[t]{\Macro{refoot}}}
                                %
    \put(65,11){\makebox(0,0)[t]{\Macro{lofoot}}}
    \put(80,11){\makebox(0,0)[t]{\Macro{cofoot}}}
    \put(95,11){\makebox(0,0)[t]{\Macro{rofoot}}}
  \end{picture}
  \caption[Befehle zur Manipulation der
    \Package{scrpage2}-Seitenstile]%
    {Befehle zur Manipulation der Seitenstile \PValue{scrheadings} und
      \PValue{scrplain} in ihrer Zuordnung zu den manipulierten
      Seitenelementen}
  \label{fig:scrpage.leheadetall}
\end{figure}

\begin{Example}
Angenommen man möchte zentriert im Seitenfuß die Seitenzahl
dargestellt haben, dann benutzt man einfach:
\begin{small}
\begin{verbatim}
  \cfoot{\pagemark}
\end{verbatim}
\end{small}
Sollen die Seitenzahlen im Kopf außen und die
Kolumnentitel\Index{Kolumnentitel} innen stehen, dann erfolgt dies mit:
\begin{small}
\begin{verbatim}
  \ohead{\pagemark}
  \ihead{\headmark}
  \cfoot{}
\end{verbatim}
\end{small}
Das \Macro{cfoot}\PParameter{} ist nur dann notwendig, wenn eine
möglicherweise im Fuß vorhandene Seitenzahl entfernt werden muss.
\end{Example}

Die anderen Befehle, die direkt nur einem Feld zugeordnet sind,
können für anspruchsvollere Vorhaben genutzt werden.

\begin{Example}
Angenommen, man hat den Auf"|trag, einen Jahresbericht einer Firma
zu erstellen, dann könnte das so angegangen werden:
\begin{small}
\begin{verbatim}
  \ohead{\pagemark}
  \rehead{Jahresbericht 2001}
  \lohead{\headmark}
  \cefoot{Firma WasWeißIch}
  \cofoot{Abteilung Entwicklung}
\end{verbatim}
\end{small}
Natürlich muss man hier dafür sorgen, dass mittels \Macro{cofoot}
der Fuß der rechten Seite aktualisiert wird, wenn eine neue 
 Abteilung  im Bericht besprochen wird.
\end{Example}

Wie oben dargestellt, gibt es einen zu \PValue{scrheadings}
korrespondierenden \PValue{plain}-Seitenstil.
Da es auch möglich sein soll, diesen Stil anzupassen,
unterstüt"-zen die Befehle ein optionales Argument.
Damit kann der Inhalt des entsprechenden Feldes
im \PValue{plain}-Seitenstil modifiziert werden.

\begin{Example}
Um für die Nutzung von \PValue{scrheadings} die Position der
Seitenzahlen festzulegen, kann man folgendes benutzen:
\begin{small}
\begin{verbatim}
  \cfoot[\pagemark]{}
  \ohead[]{\pagemark}
\end{verbatim}
\end{small}
Wird nun der Stil \PValue{plain} genutzt, beispielsweise weil
\Macro{chapter} eine neue Seite beginnt und darauf umschaltet,
dann steht die Seitenzahl zentriert im Seitenfuß.
\end{Example}
%
\EndIndex{Pagestyle}{scrheadings}\EndIndex{Pagestyle}{scrplain}%

% Die folgende Deklaration und Erklaerung wurde eingefuegt von
% mjk 2001-08-18
\begin{Declaration}
  \Macro{clearscrheadings}\\
  \Macro{clearscrplain}\\
  \Macro{clearscrheadfoot}
\end{Declaration}%
\BeginIndex{Cmd}{clearscrheadings}%
\BeginIndex{Cmd}{clearscrplain}%
\BeginIndex{Cmd}{clearscrheadfoot}%
Will man sowohl den Seitenstil \PValue{scrheadings} als auch den dazu
gehörenden \PValue{plain}-Seitenstil von Grund auf neu definieren,
muss man häufig zusätzlich einige der bereits belegten Seitenelemente
löschen.  Da man selten alle Elemente mit neuem Inhalt füllt, sind
dazu in den meisten Fällen mehrere Befehle mit leeren Parametern
notwendig.
Mit Hilfe dieser drei Befehle ist das Löschen schnell und
gründlich möglich. Während \Macro{clearscrheadings} lediglich alle
Felder des Seitenstils \PValue{scrheadings} und \Macro{clearscrplain}
alle Felder des zugehörigen \PValue{plain}-Seitenstils löscht, werden
von \Macro{clearscrheadfoot} alle Felder beider Seitenstile auf leere
Inhalte gesetzt.
\begin{Example}
  Sie wollen unabhängig davon, wie die Seitenstile derzeit aussehen,
  die Standardform der \KOMAScript-Klassen bei zweiseitigem Satz
  erreichen. Dies ist mit nur drei Befehlen möglich:
  \begin{small}
\begin{verbatim}
  \clearscrheadfoot
  \ohead{\headmark}
  \ofoot[\pagemark]{\pagemark}
\end{verbatim}
  \end{small}
  Ohne die Befehle \Macro{clearscrheadfoot}, \Macro{clearscrheadings}
  und \Macro{clearscrplain} wären doppelt so viele Anweisungen und
  neun weitere leere Argumente notwendig:
  \begin{small}
\begin{verbatim}
  \ihead[]{}
  \chead[]{}
  \ohead[]{\headmark}
  \ifoot[]{}
  \cfoot[]{}
  \ofoot[\pagemark]{\pagemark}
\end{verbatim}
  \end{small}
  Einige davon könnten natürlich entfallen, wenn man von einer
  konkreten Vorbelegung ausginge.
\end{Example}
%
\EndIndex{Cmd}{clearscrheadings}%
\EndIndex{Cmd}{clearscrplain}%
\EndIndex{Cmd}{clearscrheadfoot}%
%
\EndIndex{Cmd}{lehead}\EndIndex{Cmd}{cehead}\EndIndex{Cmd}{rehead}%
\EndIndex{Cmd}{ihead}\EndIndex{Cmd}{chead}\EndIndex{Cmd}{ohead}%
\EndIndex{Cmd}{lohead}\EndIndex{Cmd}{cohead}\EndIndex{Cmd}{rohead}%
\EndIndex{Cmd}{lefoot}\EndIndex{Cmd}{cefoot}\EndIndex{Cmd}{refoot}%
\EndIndex{Cmd}{ifoot}\EndIndex{Cmd}{cfoot}\EndIndex{Cmd}{rfoot}%
\EndIndex{Cmd}{lofoot}\EndIndex{Cmd}{cofoot}\EndIndex{Cmd}{rofoot}%

% Satz leicht geaendert: mjk 2001-08-18
In den vorausgehenden Beispielen wurden schon zwei
Befehle benutzt, die noch gar nicht besprochen wurden.
Das soll jetzt nachgeholt werden.

% Die folgende Deklaration und Erklaerung wurde eingefuegt von
% mjk 2001-08-17
\begin{Declaration}
  \Macro{leftmark}\\
  \Macro{rightmark}
\end{Declaration}%
\BeginIndex{Cmd}{leftmark}\BeginIndex{Cmd}{rightmark}%
Diese beiden Befehle erlauben es auf die Kolumnentitel zuzugreifen,
die normalerweise für die linke bzw. die rechte Seite gedacht
sind. Diese beiden Befehle werden nicht von \Package{scrpage}
bzw. \Package{scrpage2}, sondern direkt vom \LaTeX-Kern zur
Verfügung gestellt. Wenn in diesem Kapitel vom Kolumnentitel der
linken Seite oder vom Kolumnentitel der rechten Seite die Rede ist,
dann ist damit eigentlich der Inhalt von \Macro{leftmark}
bzw. \Macro{rightmark} gemeint.
%
\EndIndex{Cmd}{leftmark}\EndIndex{Cmd}{rightmark}%


\BeginIndex{Cmd}{headmark}
\begin{Declaration}
\Macro{headmark}
\end{Declaration}%
\ScrpageMark{}%
Dieser Befehl ermöglicht es, auf die Inhalte der Kolumnentitel
zuzugreifen.
Im Gegensatz zu den originalen \LaTeX{}-Befehlen
\Macro{leftmark} und \Macro{rightmark} braucht man
nicht auf die richtige Zuordnung zur linken oder rechten
Seite zu achten.
\EndIndex{Cmd}{headmark}

\BeginIndex{Cmd}{pagemark}
\begin{Declaration}
\Macro{pagemark}
\end{Declaration}%
\ScrpageMark{}%
Dieser Befehl ermöglicht den Zugriff auf die Seitenzahl. Im
\autoref{sec:scrpage.basics.format} wird der Befehl
\Macro{pnumfont} zur Formatierung der Seitenzahl vorgestellt,
den \Macro{pagemark} automatisch berücksichtigt.
\EndIndex{Cmd}{pagemark}

\BeginIndex{Cmd}{pagestyle}\BeginIndex{Pagestyle}{useheadings}
\begin{Declaration}
\Option{useheadings}
\end{Declaration}%
Das Paket \Package{scrpage2} ist in erster Linie dafür gedacht, dass
die bereitgestellten Stile benutzt oder eigene Stile definiert
werden.  Jedoch kann es notwendig sein, auch auf einen von der
Dokumentenklasse zur Verfügung gestellten Stil zurückzuschalten.
Dieses mit \Macro{pagestyle}\PParameter{headings} vorzunehmen wäre
naheliegend, hat aber den Nachteil, dass die nachfolgend besprochenen
Befehle \Macro{automark} und \Macro{manualmark} nicht wie erwartet
funktionieren.  Aus diesem Grund sollte auf die originalen Stile mit
\Macro{pagestyle}\PParameter{useheadings} umgeschalten werden. Eine
solche Umschaltung hat dann keine Auswirkung darauf, ob mit manuellen
oder automatischen Kolumnentiteln gearbeitet wird.
\EndIndex{Cmd}{pagestyle}\EndIndex{Pagestyle}{useheadings}

\subsection{Manuelle und automatische Kolumnentitel}
\label{sec:scrpage.basics.mark}
% \automark \manualmark 
%
Gewöhnlich gibt es zu einem \PValue{headings}-Stil eine
\emph{my}-Variante. Ist ein solcher Stil aktiv, dann werden die
Kolumnentitel nicht mehr automatisch aktualisiert.  Bei
\Package{scrpage2} wird ein anderer Weg beschritten.  Ob die
Kolumnentitel lebend sind oder nicht, bestimmen die Befehle
\Macro{automark} und \Macro{manualmark}. Die Voreinstellung kann auch
bereits beim Laden des Paketes über die Optionen \Option{automark} und
\Option{manualmark} beeinflusst werden (siehe
\autoref{sec:scrpage.basics.options},
\autopageref{page:scrpage.automark}).

\BeginIndex{Cmd}{manualmark}
\begin{Declaration}
\Macro{manualmark}
\end{Declaration}%
Wie der Name bereits verdeutlicht, schaltet \Macro{manualmark} die
Aktualisierung der Kolumnentitel aus.  Es bleibt somit dem Nutzer
überlassen, für eine Aktualisierung bzw. für den Inhalt der
Kolumnentitel zu sorgen.  Dazu stehen die Befehle
\Macro{markboth}\IndexCmd{markboth} und
\Macro{markright}\IndexCmd{markright} bereit.
\EndIndex{Cmd}{manualmark}

% Ergaenzt mjk 2001-07-17
\BeginIndex{Cmd}{automark}
\begin{Declaration}
  \Macro{automark}\OParameter{rechte Seite}\Parameter{linke Seite}
\end{Declaration}%
Das Makro \Macro{automark} hingegen aktiviert die automatische
Aktualisierung. Für die beiden Parameter sind die Bezeichnungen der
Gliederungsebenen\Index{Gliederungsebenen} einzusetzen, deren Titel an
entsprechender Stelle erscheinen soll. Gültige Werte für die Parameter
sind: \PValue{chapter}, \PValue{section}, \PValue{subsection},
\PValue{subsubsection}, \PValue{paragraph} und \PValue{subparagraph}.
Das optionale Argument \PName{rechte Seite} ist ver\-ständlicherweise
nur für zweiseitigen Satz gedacht. Im einseitigen Satz sollten Sie
normalerweise darauf verzichten. Mit Hilfe der Option
\Option{autooneside}\IndexOption{autoondeside} können Sie auch
einstellen, dass das optionale Argument im
einseitigen\Index{einseitig} Satz automatisch ignoriert wird (siehe
\autoref{sec:scrpage.basics.options}).
\begin{Example}
Wird beispielsweise mit einer \emph{book}-Klasse gearbeitet,
dessen höch\-ste Gliederungsebene \emph{chapter} ist, dann
stellt nach einem vorhergehenden \Macro{manualmark} der Befehl
\begin{small}
\begin{verbatim}
  \automark[section]{chapter}
\end{verbatim}
\end{small}
den Originalzustand wieder her. Bevorzugt man stattdessen,
die tieferen Gliederungsebenen angezeigt zu bekommen, dann
erfolgt dies mit:
\begin{small}
\begin{verbatim}
  \automark[subsection]{section}
\end{verbatim}
\end{small}
\end{Example}

\begin{Explain}
  Die Markierung der höheren Gliederungsebene wird mit
  Hilfe von \Macro{markboth}\IndexCmd{markboth} gesetzt. Die
  Markierung der tieferen Gliederungsebene wird mit
  \Macro{markright}\IndexCmd{markright}
  bzw. \Macro{markleft}\IndexCmd{markleft} gesetzt.
  Der entsprechende Aufruf erfolgt indirekt über die jeweiligen
  Gliederungsbefehle. Die Anweisung \Macro{markleft} wird von
  \Package{scrpage2} bereitgestellt und ist vergleichbar zu
  \Macro{markright} aus dem \LaTeX-Kern definiert. Obwohl sie nicht
  als internes Makro definiert ist, wird von einem direkten Gebrauch
  abgeraten.
\end{Explain}
\EndIndex{Cmd}{automark}


\subsection{Formatierung der Kopf- und Fußzeilen}
\label{sec:scrpage.basics.format}
% \headfont \pnumfont
% \setheadwidth \setfootwidth
% \set(head|foot)(top|sep|bot)line
Im vorherigen Abschnitt ging es hauptsächlich um inhaltliche
Dinge.
Das genügt natürlich nicht, um die gestalterischen Ambitionen
zu befriedigen. Deshalb soll es sich in diesem Abschnitt
ausschließlich darum drehen.
\BeginIndex{Cmd}{headfont}\BeginIndex{Cmd}{pnumfont}
\begin{Declaration}
\Macro{headfont}\\
\Macro{pnumfont}
\end{Declaration}%
\ScrpageMark{}%
Die Schriftformatierung übernimmt
der Befehl \Macro{headfont} für den Seitenkopf und -fuß
und \Macro{pnumfont} für die Seitenzahl.
\begin{Example}
Um beispielsweise den Kopf und Fuß in fetter serifenloser Schrift zu setzen,
und die Seitenzahl geneigt serif erscheinen zu lassen,
nutzt man folgende Definitionen.
\begin{small}
\begin{verbatim}
  \renewcommand{\headfont}{\normalfont\sffamily\bfseries}
  \renewcommand{\pnumfont}{\normalfont\rmfamily\slshape}
\end{verbatim}
\end{small}
\end{Example}
\EndIndex{Cmd}{headfont}\EndIndex{Cmd}{pnumfont}
%
Ab Version 2.8p der \KOMAScript{}-Klassen wurde die Schnittstelle
für Schriftattribute vereinheitlicht.
Wird \Package{srcpage2} in Verbindung mit einer dieser Klassen
verwendet, dann sollte die Zuweisung in der Art erfolgen, wie
sie im \autoref{sec:maincls.font} beschrieben wird.
\begin{Example}
Statt dem \Macro{renewcommand} wird dann der Befehl
\Macro{setkomafont} verwendet.
Die vorhergehenden Definitionen lauten dann:
\begin{small}
\begin{verbatim}
  \setkomafont{pagehead}{\normalfont\sffamily\bfseries}
  \setkomafont{pagenumber}{\normalfont\rmfamily\slshape}
\end{verbatim}
\end{small}
\end{Example}

\BeginIndex{Cmd}{setheadwidth}\BeginIndex{Cmd}{setfootwidth}
\begin{Declaration}
\Macro{setheadwidth}\OParameter{Verschiebung}\Parameter{Breite}\\
\Macro{setfootwidth}\OParameter{Verschiebung}\Parameter{Breite}
\end{Declaration}%
Normalerweise entsprechen die Breiten von Kopf- und Fußzeile der Breite
des Textbereichs.\Index{Kopfbreite}\Index{Fußbreite}
Die Befehle \Macro{setheadwidth} und \Macro{setfootwidth}
ermöglichen dem Anwender, auf einfache Weise die Breiten seinen
Bedürfnissen anzupassen.
Das obligatorische Argument \PName{Breite} nimmt den Wert der Breite
des Kopfes bzw. des Fußes auf, \PName{Verschiebung} ist ein
Längenmaß für die Verschiebung des entsprechenden Elements in Richtung
des äußeren Seitenrandes.

Für die möglichen Standardfälle akzeptiert das obligatorische Argument
\PName{Breite} auch folgende symbolische Werte:
\begin{labeling}[\ --]{\PValue{textwithmarginpar}}
\item[\PValue{paper}] die Breite des Papiers
\item[\PValue{page}] die Breite der Seite
\item[\PValue{text}] die Breite des Textbereichs
\item[\PValue{textwithmarginpar}] die Breite des Textbereichss inklusive dem
Seitenrand
\item[\PValue{head}] die aktuelle Breite des Seitenkopfes
\item[\PValue{foot}] die aktuelle Breite des Seitenfußes
\end{labeling}
Der Unterschied zwischen \PValue{paper} und \PValue{page} besteht
darin, dass \PValue{page} die Breite des Papiers abzüglich der
Bindekorrektur ist, falls das
\Package{typearea}-Paket\IndexPackage{typearea} verwendet wird (siehe
\autoref{cha:typearea}). Ohne Verwendung von \Package{typearea}
sind \PValue{paper} und \PValue{page}
identisch.%mjk-2001-08-17

\begin{Example}
  Angenommen man möchte ein Seitenlayout wie im
  \emph{\LaTeX-Begleiter}, bei dem die Kopfzeile in den Rand ragt,
  dann geschieht das ganz einfach mit:
\begin{small}
\begin{verbatim}
  \setheadwidth[0pt]{textwithmarginpar}
\end{verbatim}
\end{small}
%
und sieht dann auf einer rechten Seite folgendermaßen aus:
%
\begin{XmpTopPage}
        \XmpHeading{10,25}{85}
        \thinlines\XmpRule{10,23}{85}
        \XmpSetText[\XmpTopText]{10,20}
        \XmpMarginNote{83,10.8}
\end{XmpTopPage}
%
Soll der Seitenfuß die gleiche Breite und Ausrichtung haben, dann hat
man jetzt zwei Wege.
Der erste ist,  man wiederholt das Gleiche für den Seitenfuß mit:
\begin{small}
\begin{verbatim}
  \setfootwidth[0pt]{textwithmarginpar}
\end{verbatim}
\end{small}
%
oder man greift auf den anderen symbolischen Wert \PValue{head} zurück,
da der Kopf bereits die gewünschte Breite hat.
\begin{small}
\begin{verbatim}
  \setfootwidth[0pt]{head}
\end{verbatim}
\end{small}
\end{Example}

Wird keine Verschiebung angegeben, das heißt auf das optionale Argument
verzichtet, dann erscheint der Kopf bzw. der Fuß symmetrisch auf
der Seite angeordnet. Es wird somit ein Wert für die Verschiebung
automatisch ermittelt, der der aktuellen Seitengestalt entspricht.

\begin{Example}
Entsprechend dem vorherigen Beispiel wird hier auf das optionale
Argument verzichtet:
\begin{small}
\begin{verbatim}
  \setheadwidth{textwithmarginpar}
\end{verbatim}
\end{small}
%
und sieht dann auf einer rechten Seite folgendermaßen aus:
%
\begin{XmpTopPage}
        \XmpHeading{5,25}{85}
        \thinlines\XmpRule{5,23}{85}
        \XmpSetText[\XmpTopText]{10,20}
        \XmpMarginNote{83,10.8}
\end{XmpTopPage}
\end{Example}

Wie zu sehen, ist der Kopf jetzt nach innen verschoben, wobei
die Kopfbreite sich nicht geändert hat. Die Verschiebung ist
so berechnet, dass die Seitenproportionen auch hier sichtbar werden.
\EndIndex{Cmd}{setheadwidth}\EndIndex{Cmd}{setfootwidth}

\BeginIndex{Cmd}{setheadtopline}\BeginIndex{Cmd}{setheadsepline}
\BeginIndex{Cmd}{setfootseptline}\BeginIndex{Cmd}{setfootbotline}
\begin{Declaration}
\Macro{setheadtopline}\OParameter{Länge}\Parameter{Dicke}\\
\Macro{setheadsepline}\OParameter{Länge}\Parameter{Dicke}\\
\Macro{setfootsepline}\OParameter{Länge}\Parameter{Dicke}\\
\Macro{setfootbotline}\OParameter{Länge}\Parameter{Dicke}
\end{Declaration}%
Entsprechend den Größenparametern für die Kopf- und Fußzeile
gibt es auch Befehle, die die Dimensionen der Linien im Kopf und
Fuß modifizieren können.

\begin{labeling}[\ --]{\Macro{setfootsepline}}
\item[\Macro{setheadtopline}] modifiziert die Parameter für die Linie
über dem Seitenkopf
\item[\Macro{setheadsepline}] modifiziert die Parameter für die Linie
zwischen Kopf und Textkörper
\item[\Macro{setfootsepline}] modifiziert die Parameter für die Linie
zwischen Text und Fuß
\item[\Macro{setfootbotline}] modifiziert die Parameter für die Linie
unter dem Seitenfuß
\end{labeling}

Das obligatorische Argument \PName{Dicke} bestimmt, wie stark
die Linie gezeichnet wird. 
Das optionale Argument \PName{Länge} akzeptiert die
gleichen symbolischen Werte wie \PName{Breite} bei
\Macro{setheadwidth}, als auch einen normalen Längenausdruck.
Solange im Dokument dem optionalen Argument \PName{Länge} kein Wert
zugewiesen wurde, passt sich die entsprechende Linienlänge automatisch der
Breite des Kopfes bzw. des Fußes an.

Möchte man diesen Automatismus für eine Linie wieder restaurieren, dann
nutzt man im Längenargument den Wert \PValue{auto}.
\begin{Declaration}
\Macro{setheadtopline}\OParameter{auto}\Parameter{current}\\
\Macro{setheadtopline}\OParameter{auto}\Parameter{}
\end{Declaration}%
Die hier am Befehl \Macro{setheadtopline} illustrierten Argumente
sind natürlich auch für die anderen drei Längenbefehle gültig.

Enthält das obligatorische Argument den Wert \PValue{current} oder wird
leer gelassen, dann wird die Dicke der Linie nicht verändert.
Das kann genutzt werden, wenn die Länge der Linie aber nicht die
Dicke modifiziert werden soll.

\begin{Example}
Soll beispielsweise der Kopf mit einer kräftigen Linie von 2\,pt
darüber und einer normalen von 0,4\,pt zwischen Kopf und Text
abgesetzt werden, dann erfolgt das mit:
\begin{small}
\begin{verbatim}
  \setheadtopline{2pt}
  \setheadsepline{.4pt}
\end{verbatim}
\end{small}
%
\begin{XmpTopPage}
        \XmpHeading{10,25}{70}
        \thinlines\XmpRule{10,23}{70}
        \thicklines\XmpRule{10,28}{70}
        \XmpSetText[\XmpTopText]{10,20}
        \XmpMarginNote{83,10.8}
\end{XmpTopPage}

Die automatische Anpassung an die Kopf- und Fußbreiten illustriert
folgendes Beispiel:
\begin{small}
\begin{verbatim}
  \setfootbotline{2pt}
  \setfootsepline[text]{.4pt}
  \setfootwidth[0pt]{textwithmarginpar}
\end{verbatim}
\end{small}

%\phantomsection für hyperref-\pageref-Link jum-2001/11/24
\phantomsection\label{page:scrpage.autoLineLength}%
\begin{XmpBotPage}
        \XmpHeading{10,18}{85}
        \thinlines\XmpRule{17,21}{70}
        \thicklines\XmpRule{10,16}{85}
        \XmpSetText[\XmpBotText]{10,33}
        \XmpMarginNote{83,24.5}
\end{XmpBotPage}
\end{Example}
%
Nun mag nicht jedem die Ausrichtung der Linie über der Fußzeile
gefallen, sondern es wird erwartet, dass sie linksbündig zum
Text ist.
Diese Einstellung kann nur global in Form einer Paketoption erfolgen
und wird im folgenden Abschnitt
\ref{sec:scrpage.basics.options} mit anderen Optionen beschrieben.
\EndIndex{Cmd}{setheadtopline}\EndIndex{Cmd}{setheadsepline}
\EndIndex{Cmd}{setfootseptline}\EndIndex{Cmd}{setfootbotline}

\subsection{Optionen beim Laden des Paketes}\label{sec:scrpage.basics.options}
% head(in|ex)clude foot(in|ex)clude --> typearea
% headtopline headsepline footbotline footsepline (plain...)
% komastyle standardstyle
% markuppercase markusecase
% automark manualmark
\vspace{-1ex}
\BeginIndex{Option}{headinclude}\BeginIndex{Option}{footinclude}
\BeginIndex{Option}{headexclude}\BeginIndex{Option}{footexclude}
\begin{Declaration}
\Option{headinclude}\\
\Option{headexclude}\\
\Option{footinclude}\\
\Option{footexclude}
\end{Declaration}%
Diese Optionen bestimmen, ob der Seitenkopf bzw.\,der Seitenfuß
für die Satzspiegel zum Text\-kör\-per gezählt werden.
Die durch die Verwendung der Parameter notwendigen Einstellungen
werden vom Paket \Package{typearea}
(siehe \autoref{sec:typearea.options})
vorgenommen, wenn dieses Paket nach \Package{scrpage2} geladen wird.
Wichtig ist hier, dass bei Verwendung einer \KOMAScript{}-Klasse
diese Optionen bei der Dokumentenklasse und nicht bei \Package{scrpage2}
angegeben werden müssen, um eine Wirkung zu erzielen.
\EndIndex{Option}{headinclude}\EndIndex{Option}{footinclude}
\EndIndex{Option}{headexclude}\EndIndex{Option}{footexclude}

\BeginIndex{Option}{headtopline}\BeginIndex{Option}{plainheadtopline}
\BeginIndex{Option}{headsepline}\BeginIndex{Option}{plainheadsepline}
\BeginIndex{Option}{footsepline}\BeginIndex{Option}{plainfootsepline}
\BeginIndex{Option}{footbotline}\BeginIndex{Option}{plainfootbotline}
\begin{Declaration}
\Option{headtopline} und \Option{plainheadtopline}\\
\Option{headsepline} und \Option{plainheadsepline}\\
\Option{footsepline} und \Option{plainfootsepline}\\
\Option{footbotline} und \Option{plainfootbotline}
\end{Declaration}%
Eine Grundeinstellung für die Linien unter und über den Kopf- und
Fußzeilen kann mit diesen Optionen vorgenommen werden.
Diese Einstellungen gelten dann als Standard für alle mit \Package{scrpage2}
definierten Seitenstile.
Wird eine von diesen Optionen verwendet, dann wird eine Linienstärke
von 0,4\,pt eingesetzt.
Da es zum Seitenstil \PValue{scrheadings} einen entsprechenden
\PValue{plain}-Stil gibt, kann mit den \Option{plain\dots}-Optionen
auch die entsprechende Linie des \PValue{plain}-Stils konfiguriert
werden. Diese \Option{plain}-Optionen wirken aber nur, wenn auch
die korrespondierende Option ohne \Option{plain} aktiviert wurde.
Somit zeigt die Option \Option{plainheadtopline}
ohne \Option{headtopline} keine Wirkung.

Bei diesen Optionen ist zu beachten, dass der entsprechende
Seitenteil in den Textbereich des Satzspiegels mit übernommen wird,
wenn eine Linie aktiviert wurde.
Wird also mittels \Option{headsepline} die Trennlinie zwischen
Kopf und Text aktiviert, dann wird automatisch mittels
\Package{typearea} der Satzspiegel so berechnet, dass der Seitenkopf
Teil des Textblocks ist.

Die Bedingungen für die Optionen des vorhergehenden Abschnitts
gelten auch für diesen Automatismus.
Das bedeutet, dass das Paket \Package{typearea} nach \Package{scrpage2}
geladen werden muss, beziehungsweise, dass bei Verwendung einer
\KOMAScript{}-Klasse, die Optionen
\Option{headinclude} und \Option{footinclude} explizit bei
\Macro{documentclass} gesetzt werden müssen, um Kopf- bzw. Fußzeile
in den Texblock zu übernehmen.

\EndIndex{Option}{headtopline}\EndIndex{Option}{plainheadtopline}
\EndIndex{Option}{headsepline}\EndIndex{Option}{plainheadsepline}
\EndIndex{Option}{footsepline}\EndIndex{Option}{plainfootsepline}
\EndIndex{Option}{footbotline}\EndIndex{Option}{plainfootbotline}

\BeginIndex{Option}{ilines}%
\BeginIndex{Option}{clines}%
\BeginIndex{Option}{olines}%
\Index{Linienausrichtung}%
\begin{Declaration}
\Option{ilines}\\
\Option{clines}\\
\Option{olines}
\end{Declaration}%
Bei der Festlegung der Linienlängen
kann es vorkommen, dass die Linie zwar die gewünschte Länge aber nicht
die erwünschte Ausrichtung hat, da sie im Kopf- bzw. Fußbereich
zentriert wird. Mit den hier vorgestellten Paketoptionen kann
global für alle mit \Package{scrpage2} definierten Seitenstile diese
Vorgabe modifiziert werden.
Dabei setzt \Option{ilines} die Ausrichtung so, dass die Linien an
den inneren Rand verschoben werden. Die Option \Option{clines}
verhält sich wie die Standardeinstellung und \Option{olines}
richtet am äußeren Rand aus.

\begin{Example}
  Hier gilt es, das Beispiel zu \Macro{setfootsepline} auf Seite
  \pageref{page:scrpage.autoLineLength} mit dem folgenden zu
  vergleichen, um die Wirkung der Option \Option{ilines} zu sehen.
  \begin{small}
\begin{verbatim}
  \usepackage[ilines]{scrpage2}
  \setfootbotline{2pt}  
  \setfootsepline[text]{.4pt}
  \setfootwidth[0pt]{textwithmarginpar}
\end{verbatim}
  \end{small}
% Der folgende Text wurde erg"anzt um den Seitenumbruch zu verbessern,
% mjk-2001-10-05:
  \enlargethispage*{2\baselineskip}
  Allein die Verwendung der Option \Option{ilines} führt dabei zu der
  geänderten Ausgabe, die nachfolgend veranschaulicht wird:
%
\begin{XmpBotPage}
        \XmpHeading{10,18}{85}
        \thinlines\XmpRule{10,21}{70}
        \thicklines\XmpRule{10,16}{85}
        \XmpSetText[\XmpBotText]{10,33}
        \XmpMarginNote{83,24.5}
\end{XmpBotPage}
  Die Trennlinie zwischen Text und Fuß wird bündig innen im Fußteil
  gesetzt und nicht wie bei der Standardeinstellung zentriert.
\end{Example}
\EndIndex{Option}{ilines}\EndIndex{Option}{clines}\EndIndex{Option}{olines}

% \phantomsection für hyperref-\pageref-Link jum-2001/11/24
\phantomsection%
\BeginIndex{Option}{automark}\BeginIndex{Option}{manualmark}
\begin{Declaration}
\Option{automark}\label{page:scrpage.automark}\\
\Option{manualmark}
\end{Declaration}%
Diese Optionen setzen gleich zu Beginn des Dokuments die Einstellung,
ob eine automatische Aktualisierung der Kolumnentitel erfolgt.
Die Option \Option{automark} schaltet die automatische
Aktualisierung ein, \Option{manualmark} deaktiviert sie.
% Das Folgende wurde ergaenzt, weil dazu die haeufigsten Fragen
% bzw. falschen Bug-Reports im Support kamen.
% mjk-2001-09-21:
Ohne Verwendung einer der beiden Optionen bleibt die Einstellung
erhalten, die beim Laden des Paketes gültig war.
\begin{Example}
  Sie laden das Paket \Package{scrpage2} unmittelbar nach der Klasse
  \Class{scrreprt} und ohne weitere Optionen. Dazu schreiben Sie:
  \begin{small}
\begin{verbatim}
  \documentclass{scrreprt}
  \usepackage{scrpage2}
\end{verbatim}
  \end{small}
  Da bei \Class{scrreprt} der Seitenstil \PValue{plain} voreingestellt
  ist, ist dies auch jetzt noch der Fall. Außerdem entspricht die
  Voreinstellung \PValue{plain} manuellen Kolumnentiteln. Wenn Sie
  also anschließend mit
  \begin{small}
\begin{verbatim}
  \pagestyle{scrheadings}
\end{verbatim}
  \end{small}
  auf den Seitenstil \PValue{scrheadings} umschalten, sind noch immer
  manuelle Kolumnentitel eingestellt.

  Verwenden Sie stattdessen die Dokumentklasse \Class{scrbook}, so
  ist nach
  \begin{small}
\begin{verbatim}
  \documentclass{scrbook}
  \usepackage{scrpage2}
\end{verbatim}
  \end{small}
  der Seitenstil \PValue{headings} mit automatischen Kolumnentiteln
  aktiviert. Bei Umschaltung auf den Seitenstil \PValue{scrheadings}
  bleiben automatische Kolumnentitel eingeschaltet. Dabei werden dann
  weiterhin die Markierungsmakros von \Class{scrbook} verwendet.

  Verwenden Sie hingegen
  \begin{small}
\begin{verbatim}
  \usepackage[automark]{scrpage2}
\end{verbatim}
  \end{small}
  so wird unabhängig von der verwendeten Klasse auf automatische
  Kolumnentitel umgeschaltet, wobei die Markierungsmakros von
  \Package{scrpage2} genutzt werden.
  Natürlich wirkt sich dies auf den Seitenstil
  \PValue{plain} von \Class{scrreprt} nicht aus. Die Kolumnentitel
  werden erst sichtbar, wenn auf den Seitenstil
  \PValue{scrheadings}\IndexPagestyle{scrheadings} oder
  \PValue{useheadings} oder einen selbstdefinierten Seitenstil mit
  Kolumnentiteln umgeschaltet wird.
\end{Example}
\EndIndex{Option}{automark}\EndIndex{Option}{manualmark}


% Folgende Deklaration und Erklaerung wurde eingefügt von
% mjk 2001-08-17:
\BeginIndex{Option}{autooneside}
\begin{Declaration}
  \Option{autooneside}
\end{Declaration}%
Diese Option sorgt dafür, dass das optionale Argument von
\Macro{automark}\IndexCmd{automark} im einseitigen Satz automatisch
ignoriert wird. Siehe hierzu auch die Erläuterung zum Befehl
\Macro{automark} in \autoref{sec:scrpage.basics.mark}.
\EndIndex{Option}{autooneside}


\BeginIndex{Option}{komastyle}\BeginIndex{Option}{standardstyle}
\begin{Declaration}
\Option{komastyle}\\
\Option{standardstyle}
\end{Declaration}%
Diese Optionen bestimmen, wie der vordefinierte Seitenstil
\PValue{scrheadings} gestaltet ist.
Bei \Option{komastyle} wird eine Definition vorgenommen, wie
sie den \KOMAScript{}-Klassen entspricht.
Bei den \KOMAScript{}-Klas\-sen ist dies die Voreinstellung und 
kann somit auch für andere Klassen gesetzt werden.

Die Option \Option{standardstyle} definiert \PValue{scrheadings}
wie es von den Standardklassen erwartet wird.
Außerdem wird hier automatisch \Option{markuppercase} aktiviert,
es sei denn, \Option{markusedcase} wird ebenfalls als Option übergeben. 
\EndIndex{Option}{komastyle}\EndIndex{Option}{standardstyle}

\BeginIndex{Option}{markuppercase}\BeginIndex{Option}{markusedcase}
\begin{Declaration}
\Option{markuppercase}\\
\Option{markusedcase}
\end{Declaration}%
Für die Funktionalität von \Macro{automark} modifiziert
\Package{scrpage2} interne Befehle, die die Gliederungsbefehle
benutzen, um die lebenden Kolumnentitel zu setzen.
Da einige Klassen, im Gegensatz
zu den \KOMAScript{}-Klassen, die Kolumnentitel in Großbuchstaben
schreiben, muss \Package{scrpage2} wissen, wie die genutzte
Dokumentenklasse die lebenden Kolumnentitel darstellt.

Die Option \Option{markuppercase} zeigt \Package{scrpage2},
dass die benutzte Klasse die Großschreibweise benutzt.
Die Option \Option{markusedcase} sollte angegeben werden,
wenn die benutzte Dokumentenklasse keine Großschreibweise
verwendet.
Die Optionen sind nicht geeignet, eine entsprechende
Darstellung zu erzwingen. Es kann somit zu unerwünschten
Effekten kommen, wenn die Angabe nicht dem Verhalten
der Dokumentenklasse entspricht.
\EndIndex{Option}{markuppercase}\EndIndex{Option}{markusedcase}

% Die folgende Deklaration und Erklaerung wurde eingefuegt von
% mjk 2001-08-18
\begin{Declaration}
  \Option{nouppercase}
\end{Declaration}%
\BeginIndex{Option}{nouppercase}%
Wie in der Erklärung zu den Optionen \Option{markuppercase} und
\Option{markusedcase} bereits ausgeführt wurde, gibt es Klassen und
auch Pakete, die beim Setzen der lebenden
Kolumnentitel\Index{Kolumnentitel} mit Hilfe einer der Anweisungen
\Macro{MakeUppercase} oder \Macro{uppercase} den gesamten Eintrag in
Großbuchstaben wandeln. Mit der Option \Option{nouppercase} können
diese beiden Anweisungen im Kopf und im Fuß außer Kraft gesetzt
werden. Das gilt aber nur für Seitenstile, die mit Hilfe von
\Package{scrpage2} definiert werden. Dazu zählen auch
\PValue{scrheadings} und der zugehörige \PValue{plain}-Seitenstil.

Die verwendete Methode ist äußerst brutal und kann dazu führen, dass
auch erwünschte Änderungen von Klein- in
Großbuchstaben\Index{Grossbuchstaben=Großbuchstaben} unterbleiben. Da
diese Fälle nicht sehr häufig sind, stellt \Option{nouppercase} aber
meist eine brauchbare Lösung dar.
\begin{Example}
  Sie verwenden die Standardklasse \Class{book}\IndexClass{book},
  wollen aber, dass die lebenden Kolumnentitel nicht in
  Großbuchstaben, sondern in normaler gemischter Schreibweise gesetzt
  werden. Die Präambel Ihres Dokuments könnte dann wie folgt beginnen:
  \begin{small}
\begin{verbatim}
  \documentclass{book}
  \usepackage[nouppercase]{scrpage2}
  \pagestyle{scrheadings}
\end{verbatim}
  \end{small}
  Die Umschaltung auf den Seitenstil \PValue{scrheadings} ist
  notwendig, weil sonst der Seitenstil \PValue{headings} verwendet
  wird, der von der Option \Option{nouppercase} nicht behandelt wird.
\end{Example}

In einigen Fällen setzen nicht nur Klassen, sondern auch Pakete
lebende Kolumnentitel in Großbuchstaben. Auch in diesen Fällen hilft
\Option{nouppercase} meist, um zu gemischter Schreibweise
zurückzuschalten.
%
\EndIndex{Option}{nouppercase}


\section{Seitenstile selbst gestalten}\label{sec:scrpage.UI}
%
% 
\subsection{Die Anwenderschnittstelle}\label{sec:scrpage.UI.user}
% \deftripstyle
\BeginIndex{Cmd}{deftripstyle}\Index{Seitenstil}
Nun möchte man ja nicht immer an die vorgegebenen Seitenstile gebunden sein,
sondern auch seiner Kreativität freien Lauf lassen.
Manchmal ist man auch dazu gezwungen, weil ein bestimmtes
\emph{Corporate Identity} einer Firma es verlangt.
Der einfachste Weg damit umzugehen ist
\begin{Declaration}
\Macro{deftripstyle}\Parameter{Name}%
\OParameter{LA}\OParameter{LI}%
\Parameter{KI}\Parameter{KM}\Parameter{KA}%
\Parameter{FI}\Parameter{FM}\Parameter{FA}
\end{Declaration}%
\ScrpageMark{}%
Die einzelnen Felder haben folgende Bedeutung:
\begin{labeling}[\,--]{\PName{Name}}
\item[\PName{Name}] die Bezeichnung des Seitenstils, um ihn mit
        \Macro{pagestyle}\Parameter{Name} zu aktivieren
\item[\PName{LA}] die Dicke der äußeren Linien, d.\,h. der Linien über
der Kopfzeile und unter der Fußzeile (optional)
\item[\PName{LI}] die Dicke der inneren Linie, d.\,h. der Linien die Kopf und
Fuß vom Textkörper trennen (optional)
\item[\PName{KI}] Inhalt des Feldes im Kopf innenseitig oder bei einseitigem
Layout links
\item[\PName{KM}] Inhalt des Feldes im Kopf zentriert
\item[\PName{KA}] Inhalt des Feldes im Kopf außenseitig oder bei einseitigem
Layout rechts
\item[\PName{FI}] Inhalt des Feldes im Fuß innenseitig oder bei einseitigem
Layout links
\item[\PName{FM}] Inhalt des Feldes im Fuß zentriert
\item[\PName{FA}] Inhalt des Feldes im Fuß außenseitig oder bei einseitigem
Layout rechts
\end{labeling}

Der Befehl \Macro{deftripstyle} stellt sicherlich die einfachste
Möglichkeit dar, Seitenstile zu definieren.
Leider sind damit auch Einschränkungen verbunden,
da in einem Seitenbereich mit einem durch \Macro{deftripstyle} deklarierten 
Seitenstil keine Änderung der Kopf- und Fußlinien erfolgen kann.

\begin{Example}
Vorgegeben sei ein doppelseitiges Layout, bei dem die Kolumnentitel
innen erscheinen sollen.
Weiterhin soll der Dokumententitel, in diesem Fall kurz \glqq Bericht\grqq,
an den Außenrand in den Kopf, die Seitenzahl soll zentriert in den Fuß.
\begin{small}
\begin{verbatim}
  \deftripstyle{DerBericht}%
                {\headmark}{}{Bericht}%
                {}{\pagemark}{}
\end{verbatim}
\end{small}

Sollen weiterhin die Linien über dem Kopf und unter dem Fuß
mit 2\,pt erscheinen und der ganze Textkörper mit dünnen Linien
von 0,4\,pt von Kopf und Fuß abgesetzt werden, dann erweitert
man vorherige Definition.
\begin{small}
\begin{verbatim}
  \deftripstyle{DerBericht}[2pt][.4pt]%
                {\headmark}{}{Bericht}%
                {}{\pagemark}{}
\end{verbatim}
\end{small}
%
\typeout{^^J--- Ignore underfull and overfull \string\hbox:}
\begin{center}\setlength{\unitlength}{1mm}\begin{picture}(100,50)\scriptsize
\thinlines
\put(5,0){\line(0,1){50}}
\put(55,0){\line(0,1){50}}
\put(5,50){\line(1,0){40}}
\put(55,50){\line(1,0){40}}
%
\thicklines
\put(45,0){\line(0,1){50}}
\put(95,0){\line(0,1){50}}
\put(5,0,){\line(1,0){40}}
\put(55,0){\line(1,0){40}}
%
\XmpHeading[Bericht\hfill 2. Das Auge]{11,46}{30}
\XmpHeading[2.1 Netzhaut\hfill Bericht]{59,46}{30}
\XmpHeading[\hfill 14\hfill]{11,6.5}{30}
\XmpHeading[\hfill 15\hfill]{59,6.5}{30}
\put(11,43){\makebox(0,0)[tl]{\parbox{30mm}{\tiny%
        \textbf{2.1 Netzhaut}\\
        \XmpText[49]}}}
\put(59,43){\makebox(0,0)[tl]{\parbox{30mm}{\tiny%
        \XmpText[51]}}}
%
\thinlines
\XmpRule{11,44.5}{30}\XmpRule{59,44.5}{30}
\XmpRule{11,8}{30}\XmpRule{59,8}{30}
\linethickness{1pt}
\XmpRule{11,48}{30}\XmpRule{59,48}{30}
\XmpRule{11,5}{30}\XmpRule{59,5}{30}
\end{picture}\end{center}
\typeout{^^J--- Don't ignore underfull and overfull \string\hbox:^^J}
\end{Example}
\EndIndex{Cmd}{deftripstyle}

\subsection{Die Expertenschnittstelle}\label{sec:scrpage.UI.expert}
% \defpagestyle \newpagestyle \providepagestyle \renewpagestyle
\BeginIndex{Cmd}{defpagestyle}\BeginIndex{Cmd}{newpagestyle}
\BeginIndex{Cmd}{renewpagestyle}\BeginIndex{Cmd}{providepagestyle}
\Index{Seitenstil}
Einfache Seitenstile, wie sie mit \Macro{deftripstyle} deklariert
werden können, sind erfahrungsgemäß selten.
Entweder verlangt ein Professor, dass die Diplomarbeit so aussieht
wie seine eigene -- und wer will ihm da \emph{ernsthaft} widersprechen --
oder eine Firma möchte, dass die halbe Finanzbuchhaltung im
Seitenfuß auf"|taucht. Alles kein Problem, denn es gibt noch:
\begin{Declaration}
\Macro{defpagestyle}\Parameter{Name}\Parameter{Kopfdefinition}\Parameter{Fußdefinition}\\
\Macro{newpagestyle}\Parameter{Name}\Parameter{Kopfdefinition}\Parameter{Fußdefinition}\\
\Macro{renewpagestyle}\Parameter{Name}\Parameter{Kopfdefinition}\Parameter{Fußdefinition}\\
\Macro{providepagestyle}\Parameter{Name}\Parameter{Kopfdefinition}\Parameter{Fußdefinition}
\end{Declaration}%
\ScrpageMark{}%
Dies sind die Befehle, die die volle Kontrolle über die Gestaltung
eines Seitenstils ermöglichen. Der Aufbau ist bei allen vier
Definitionen gleich, sie unterscheiden sich nur in Hinsicht
der Wirkungsweise.
\begin{labeling}[\ --]{\Macro{providepagestyle}}
\item[\Macro{defpagestyle}] definiert immer einen neuen Seitenstil.
Existiert bereits einer mit diesem Namen, wird dieser
überschrieben.
\item[\Macro{newpagestyle}] definiert einen neuen Seitenstil. Wenn schon
einer mit diesem Namen existiert, wird ein Fehler ausgegeben.
\item[\Macro{renewpagestyle}] definiert einen bestehenden Seitenstil um. Wenn noch
keiner mit diesem Namen existiert, wird ein Fehler ausgegeben.
\item[\Macro{providepagestyle}] definiert einen neuen Seitenstil nur dann,
wenn dieser vorher noch nicht existiert.
\end{labeling}

Am Beispiel von \Macro{defpagestyle} soll die Syntax der Definitionen
im Folgenden erläutert werden.
\begin{labeling}[\,--]{\PName{Kopfdefinition}}
\item[\PName{Name}] die Bezeichnung des Seitenstils für \Macro{pagestyle}\Parameter{Name}
\item[\PName{Kopfdefinition}] die Deklaration des Seitenkopfes bestehend aus
fünf Teilen, wobei die in runden Klammern stehenden Angaben optional sind:
\AParameter{OLL,OLD}\Parameter{GS}\Parameter{US}\Parameter{ES}\AParameter{ULL,ULD}
\item[\PName{Fußdefinition}] die Deklaration des Seitenfußes bestehend aus
fünf Teilen, wobei die in runden Klammern stehenden Angaben optional sind:
\AParameter{OLL,OLD}\Parameter{GS}\Parameter{US}\Parameter{ES}\AParameter{ULL,ULD}
\end{labeling}

Wie zu sehen ist, haben Kopf- und Fußdefinition identischen Aufbau. Die einzelnen
Parameter haben folgende Bedeutung:
\begin{labeling}[\ --]{\PName{OLD}}
\item[\PName{OLL}] obere Linienlänge: Kopf = außen, Fuß = Trennlinie
\item[\PName{OLD}] obere Liniendicke
\item[\PName{GS}]  Definition für die \emph{gerade} Seite
\item[\PName{US}]  Definition für die \emph{ungerade} Seite
\item[\PName{ES}]  Definition für \emph{einseitiges} Layout
\item[\PName{ULL}] untere Linienlänge Kopf = Trennlinie, Fuß = außen
\item[\PName{ULD}] untere Liniendicke
\end{labeling}

Werden die optionalen Linienargumente nicht gesetzt, dann
bleibt das Verhalten weiterhin durch die im \autoref{sec:scrpage.basics.format}
vorgestellten Linienbefehle konfigurierbar.
In der alten Version \Package{scrpage}\ScrpageNote{} sind die Linienargumente
obligatorisch.

Die drei Felder \PName{GS}, \PName{US} und \PName{ES} entsprechen Boxen, die
die Breite des Kopf- bzw. Fußteils haben.
Die entsprechenden Definitionen erscheinen in diesen Boxen linksbündig.
Um somit etwas links- \emph{und} rechtsseitig in den Boxen zu platzieren,
kann der Zwischenraum mit \Macro{hfill} gestreckt werden:
%
\begin{verbatim}
  {\headmark\hfill\pagemark}
\end{verbatim}

Um zusätzlich etwas zentriert erscheinen zu lassen, ist eine erweiterte
Definition notwendig.
Die Befehle \Macro{rlap} und \Macro{llap} setzen die übergebenen Argumente.
Für \LaTeX{} erscheint es aber so, dass diese Texte eine Breite von Null
haben. Nur so erscheint der mittlere Text auch wirklich zentriert.
%
\begin{verbatim}
  {\rlap{\headmark}\hfill Text zentriert\hfill\llap{\pagemark}}
\end{verbatim}

Dies und die Verwendung der Expertenschnittstelle in Zusammenhang mit
anderen Befehlen von \Package{scrpage2} nun als abschließendes Beispiel.

\begin{Example}
Im Beispiel wird die Dokumentenklasse \Class{scrbook} genutzt.
Das bedeutet, es liegt im Dokument standardmäßig zweiseitiges
Layout vor.
Für das Paket \Package{scrpage2} wird festgelegt, dass mit
automatisch aktualisierten Kolumnentiteln gearbeitet wird und
dass im Seitenstil \PValue{scrheadings} eine Trennlinie zwischen
Kopf und Text gezogen wird.

\begin{small}\begin{verbatim}
  \documentclass{scrbook}
  \usepackage[automark,headsepline]{scrpage2}
\end{verbatim}\end{small}

Mit Hilfe der Expertenschnittstelle werden zwei Seitenstile
definiert. Der erste legt keine Linienargumente fest, im
zweiten wird die Linie über dem Kopf mit einer Dicke
von 1\,pt und die Linie unter dem Kopf mit 0\,pt festgelegt. 

\begin{small}\begin{verbatim}
  \defpagestyle{ohneLinien}{%
    {Beispiel\hfill\headmark}
    {\headmark\hfill ohne Linien}
    {\rlap{Beispiel}\hfill\headmark\hfill%
     \llap{ohne Linien}}
  }{%
    {\pagemark\hfill}
    {\hfill\pagemark}
    {\hfill\pagemark\hfill}
  }
\end{verbatim}\end{small}

\begin{small}\begin{verbatim}
  \defpagestyle{mitLinien}{%
    (\textwidth,1pt)
    {mit Linien\hfill\headmark}
    {\headmark\hfill mit Linien}
    {\rlap{\KOMAScript}\hfill \headmark\hfill%
     \llap{mit Linien}}
    (0pt,0pt)
  }{%
    (\textwidth,.4pt)
    {\pagemark\hfill}
    {\hfill\pagemark}
    {\hfill\pagemark\hfill}
    (\textwidth,1pt)
  }
\end{verbatim}\end{small}

Gleich zu Beginn wird der Seitenstil \PValue{scrheadings}
aktiviert.
Mit \Macro{chapter} wird ein neues Kapitel begonnen.
Weiterhin wird automatisch durch \Macro{chapter}
der Seitenstil für diese Seite auf \PValue{plain} gesetzt.
Auch wenn das folgende \Macro{chead} recht unüblich ist, und
auch nicht besonders gelungen ist, zeigt es doch, dass durch
Modifikation das \PValue{plain}-Stils ein Kolumnentitel
erzeugt werden kann.
Grundsätzlich sollte jedoch davon Abstand genommen werden,
da sonst der Markierungscharakter der \PValue{plain}-Seite
verloren geht. Es ist wichtiger anzuzeigen, dass hier ein
neues Kapitel beginnt, als dass ein Abschnitt dieser
Seite einen bestimmten Titel trägt.

\begin{small}\begin{verbatim}
  \begin{document}
  \pagestyle{scrheadings}
  
  \chapter{Thermodynamik}
  \chead[\leftmark]{}
  \section{Hauptsätze}
  Jedes System besitzt eine extensive Zustandsgröße
  Energie. Sie ist in einem abgeschlossenen System konstant.
\end{verbatim}\end{small}

\begin{XmpTopPage}
        \XmpHeading[\hfill\textsl{1. Thermodynamik}\hfill]{10,27}{70}
        \put(10,17){\normalsize\textbf{\sffamily 1.Thermodynamik}}
        \put(10,12){\textbf{\sffamily 1.1 Hauptsätze}}
        \XmpSetText[%
        Jedes System besitzt eine extensive Zustandsgröße]{10,9}
\end{XmpTopPage}

Nach dem Seitenwechsel ist dann der Seitenstil \PValue{scrheadings}
aktiv, und somit auch die Trennlinie aus den Paketoptionen
sichtbar.
\begin{small}\begin{verbatim}
  Es existiert eine Zustandsgröße, genannt die Entropie,
  eines Systems, deren zeitliche Änderung sich aus
  Entropieströmung und Entropieerzeugung zusammensetzt.
\end{verbatim}\end{small}
\begin{XmpTopPage}
        \XmpHeading[\textsl{1. Thermodynamik}\hfill]{20,27}{70}
        \thinlines\XmpRule{20,25}{70}
        \XmpSetText[%
        Es existiert eine Zustandsgröße, genannt die En"-tropie,
     eines Systems, deren zeitliche Änderung sich aus
     Entropieströmung und Entropieerzeugung zusammensetzt.]{20,21}
\end{XmpTopPage}

Wiederum nach einem Seitenwechsel wird auf manuelle Kolumnentitel
gewechselt und der Seitenstil \PValue{ohneLinien} aktiviert.
Da keine Linienargumente bei der Definition dieses Stils
genutzt wurden, wird die Standard-Linienkonfiguration
verwendet, die hier eine Linie zwischen Kopf und Text zeichnet,
da \Option{headsepline} als Argument für \Package{scrpage2}
angegeben wurde.
\begin{small}\begin{verbatim}
  \manualmark
  \pagestyle{ohneLinien}
  \section{Exergie und Anergie}
  \markright{Energieumwandlung}
  Man bezeichnet die bei der Einstellung des
  Gleichgewichts mit der Umgebung maximal
  gewinnbare Arbeit als Exergie.
\end{verbatim}\end{small}
\begin{XmpTopPage}
        \XmpHeading[\slshape Energieumwandlung\hfill ohne Linien]{10,27}{70}
        \thinlines\XmpRule{10,25}{70}
        \XmpSetText[%
        \textbf{\sffamily 1.2 Exergie und Anergie}\\
        Man bezeichnet die bei der Einstellung des
  Gleichgewichts mit der Umgebung maximal
  gewinnbare Arbeit als Exergie.]{10,21}
\end{XmpTopPage}

Nach dem Wechsel auf die folgende linke Seite wird der
Seitenstil \PValue{mitLinien} aktiviert.
Die Linieneinstellungen werden hier nun angewendet und entsprechend
der Definition dargestellt.
\begin{small}\begin{verbatim}
  \pagestyle{mitLinien}
  \renewcommand{\headfont}{\itshape\bfseries}
  Den nicht in Exergie umwandelbaren Anteil einer
  Energie nennt man Anergie \Var{B}.
  \[ B = U + T (S_1 - S_u) - p (V_1 - V_u)\] 
  \end{document}
\end{verbatim}\end{small}
\begin{XmpTopPage}
        \XmpHeading[\itshape\bfseries mit Linien\hfill 1. Thermodynamik]{20,27}{70}
        \thicklines\XmpRule{20,29}{70}
        \XmpSetText[%
        Den nicht in Exergie umwandelbaren Anteil einer
  Energie nennt man Anergie $B$. 
  \[ B = U + T (S_1 - S_u) - p (V_1 - V_u)\] ]{20,20}
\end{XmpTopPage}
\end{Example}
\EndIndex{Cmd}{defpagestyle}\EndIndex{Cmd}{newpagestyle}
\EndIndex{Cmd}{renewpagestyle}\EndIndex{Cmd}{providepagestyle}

\subsection{Seitenstile verwalten}\label{sec:scrpage.UI.cfgFile}
% scrpage.cfg
\BeginIndex{File}{scrpage.cfg}
Bei längerer Arbeit mit verschiedenen Seitenstilen wird sich, je nach
Geschmack und Aufgabenstellung, ein fester Satz an benutzten Stilen
etablieren.
Um nicht bei jedem neuen Projekt eine große Kopieraktion von den Daten
eines Projekts zum neuen Projekt starten zu müssen, liest \Package{scrpage2}
am Ende seiner Initialisierungsphase die Datei \File{scrpage.cfg} ein.
In dieser Datei können dann Seitenstile definiert sein, die viele
Projekte gemeinsam nutzen können.
\EndIndex{File}{scrpage.cfg}
\EndIndex{Package}{scrpage2}

\section{Autoren}
\label{sec:scrpage.authors}
Die folgenden Autoren waren an diesem Kapitel beteiligt oder haben die Vorlage
dafür geliefert.
% In folgener Aufzaehlung den Namen des Autors, der fuer das Kapitel
% verantwortlich ist bitte mit \textbf{} hervorheben.
\begin{itemize}
\item Markus Kohm \TextEMail{Markus.Kohm@gmx.de}
\item \textbf{Jens-Uwe Morawski}
\end{itemize}
%%% Local Variables:
%%% mode: latex
%%% TeX-master: "scrguide2"
%%% End: 
