diff options
Diffstat (limited to 'macros/latex/contrib/koma-script/doc/typearea-de.tex')
-rw-r--r-- | macros/latex/contrib/koma-script/doc/typearea-de.tex | 2055 |
1 files changed, 2055 insertions, 0 deletions
diff --git a/macros/latex/contrib/koma-script/doc/typearea-de.tex b/macros/latex/contrib/koma-script/doc/typearea-de.tex new file mode 100644 index 0000000000..6cc7f5432b --- /dev/null +++ b/macros/latex/contrib/koma-script/doc/typearea-de.tex @@ -0,0 +1,2055 @@ +% ====================================================================== +% typearea-de.tex +% Copyright (c) Markus Kohm, 2001-2022 +% +% 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.md. +% ====================================================================== +% +% Chapter about typearea of the KOMA-Script guide +% Maintained by Markus Kohm +% +% ====================================================================== + + +\KOMAProvidesFile{typearea-de.tex} + [$Date: 2022-06-05 12:40:11 +0200 (So, 05. Jun 2022) $ + KOMA-Script guide (chapter: typearea)] + +\chapter{Satzspiegelberechnung mit \Package{typearea.sty}} +\labelbase{typearea} + +\BeginIndexGroup% +\BeginIndex{Package}{typearea}% +Viele \LaTeX-Klassen\iffree{, 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. + +\iffalse% Umbruchoptimierung!!! + 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 richtet sich jedoch nicht + an Anwender, sondern an Klassen- und Paketautoren.% +\fi + +\section{Grundlagen der Satzspiegelkonstruktion} +\seclabel{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% + \iffree{ \cite{DANTE:TK0402:MJK}}{. Einen Überblick über einige Möglichkeiten + und der dabei angenommenen Grundsätze gibt + \autoref{cha:typeareaconstruction}}% + . Häufig findet man ein Verfahren, das mit verschiedenen Diagonalen + und deren Schnittpunkten arbeitet. Das gewünschte Ergebnis 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]{Seiten>Format} + \Index[indexmain]{Papier>Format} 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}% + \textnote{Bindekorrektur} + Die Bindekorrektur ist also rechnerischer Bestandteil des + \emph{Bundstegs}\Index{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: + % Umbruchoptiomierung!!! + \iffree{% + \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*} + }{% + % Umbruchkorrektur: Abstände verändert! + \begin{prepareformargin} + \vskip -.5\baselineskip plus .25\baselineskip + \begin{align*} + \Var{Satzspiegelhöhe}\Index{Satzspiegel} : \Var{Satzspiegelbreite} &= + \Var{Seitenhöhe}\Index{Seite} : \Var{Seitenbreite} \\[-2pt] + \Var{oberer~Rand}\Index{Rand} : \Var{unterer~Rand} &= + \text{1} : \text{2} \\[-2pt] + \Var{linker~Rand} : \Var{rechter~Rand} &= \text{1} : \text{1} \\[-2pt] + \Var{innerer~Randanteil} : \Var{äußerer~Rand} &= + \text{1} : \text{2}\\[-2pt] + \Var{Seitenbreite} &= + \Var{Papierbreite}\Index{Papier} - + \Var{Bindekorrektur}\Index{Bindekorrektur} \\[-2pt] + \Var{oberer~Rand} + \Var{unterer~Rand} &= + \Var{Seitenhöhe} - \Var{Satzspiegelhöhe} \\[-2pt] + % + \Var{linker~Rand} + \Var{rechter Rand} &= + \Var{Seitenbreite} - \Var{Satzspiegelbreite} \\[-2pt] + % + \Var{innerer Randanteil} + \Var{äußerer Rand} &= + \Var{Seitenbreite} - \Var{Satzspiegelbreite} \\ + % +% \end{align*} +% \end{prepareformargin}\pagebreak +% \begin{prepareformargin}\vskip-\abovedisplayskip +% \begin{align*} + \Var{innerer~Randanteil} + \Var{Bindekorrektur} &= + \Var{Bundsteg}\index{Bundsteg} + \end{align*} + \end{prepareformargin} + \vskip .5\baselineskip minus .25\baselineskip + }% + \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 + komplette innere Rand ein Element der vollständigen Doppelseite ist. 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: + \iffree{\begin{itemize}}{\begin{itemize}[% Umbuchkorrektur + topsep=.5\baselineskip plus .25\baselineskip minus .33\baselineskip, + partopsep=.5\baselineskip plus .25\baselineskip minus .33\baselineskip, + itemsep=.33\baselineskip plus .25\baselineskip minus .25\baselineskip, + parsep=0pt + ]} + \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}\textnote{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 Wörter 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 darstellt. 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 \DescRef{maincls.cmd.raggedbottom}\IndexCmd{raggedbottom} und + \DescRef{maincls.cmd.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, + \DescRef{maincls.cmd.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 Abstandes der ersten Zeile vom + oberen Rand des Textbereichs sein. + +\iffalse% Umbruchkorrektur + Damit sind alle Grundlagen der Satzspiegelberechnung, die bei + {\KOMAScript} eine Rolle spielen, erklärt. +\else + Soweit die Grundlagen. +\fi +\iffalse% Umbruchkorrektur + Es folgen die beiden von \KOMAScript{} angebotenen Konstruktionen. +\else +\iffalse% Umbruchkorrektur + Wir können also mit den konkreten Konstruktionen beginnen. +\else + In den folgenden beiden Abschnitten werden die von {\KOMAScript} angebotenen + Konstruktionen im Detail vorgestellt. +\fi +\fi +\end{Explain} + + +\section{Satzspiegelkonstruktion durch Teilung} +\seclabel{divConstruction} + +\begin{Explain} + Der einfachste Weg, um zu erreichen, dass der Textbereich dasselbe + Seitenverhältnis aufweist wie die Seite, ist folgender:% + \begin{itemize} + \item Zunächst zieht man an der Innenseite des Papiers den Teil + \Var{BCOR}\important{\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. + \item Dann teilt man die Seite horizontal in die gleiche Anzahl + \Var{DIV}\important{\Var{DIV}} gleich breiter Streifen. + \item 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. + \item Zum inneren Rand gibt man dann noch \Var{BCOR} hinzu. + \end{itemize} + Was nun innerhalb der Seite noch übrig bleibt, ist der + Textbereich.\Index{Text>Bereich} 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 + horizontal und vertikal jeweils 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 + \KOMAoption{captions}{bottombeside}% + \setcapindent{0pt}% + \setlength{\columnsep}{.6em}% + \begin{captionbeside}[{% + Doppelseite mit der Rasterkonstruktion für die klassische + Neunerteilung nach Abzug einer Bindekorrektur% + }]{% + \label{fig:typearea.nineparts}% + \hspace{0pt plus 1ex}% + Doppelseite mit der Rasterkonstruktion für die klassische + Neunerteilung nach Abzug einer Bindekorrektur% + } + [l] + \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} + \end{captionbeside} +% \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 \DescRef{maincls.cmd.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 (\iftrue% Umbruchoptimierung!!!! + siehe ebenfalls + \autoref{sec:typearea.typearea}, \fi\DescPageRef{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% Umbruchoptimierung!!!! + . Siehe hierzu ebenfalls \autoref{sec:typearea.typearea}, % + \else\ (siehe ebenfalls \autoref{sec:typearea.typearea}, % + \fi% + \DescPageRef{typearea.option.DIV.calc}\iffalse\else)\fi.% +\end{Explain}% + + +\section{Satzspiegelkonstruktion durch Kreisschlagen} +\seclabel{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 unbedingt die zum Textbereich passende Schrift + wählen. +% +\iffalse +% Umbruchkorrekturtext + Dies ist als zwingend zu betrachten. +\fi + + Im \Package{typearea}-Paket wird diese Konstruktion dahingehend abgewandelt, + dass durch Auswahl eines ausgezeichneten -- normalerweise unsinnigen -- + \Var{DIV}-Wertes oder einer speziellen, symbolischen Angabe 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. +% +\iffalse +% 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}, \DescPageRef{typearea.option.DIV.calc}. +% +\fi +\end{Explain} + +\LoadCommonFile{options} % \section{Frühe oder späte Optionenwahl} + +\LoadCommonFile{compatibility} % \section{Kompatibilität zu früheren Versionen von \KOMAScript} + +\section{Einstellung des Satzspiegels und der \texorpdfstring{Seitenauf"|teilung}{Seitenaufteilung}} +\seclabel{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 +in \autoref{sec:\LabelBase.options} erwähnt, können die Optionen dabei auf +unterschiedlichen Wegen gesetzt werden. + +In\textnote{Hinweis!} 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. + + +\begin{Declaration} + \OptionVName{BCOR}{Korrektur} +\end{Declaration}% +Mit Hilfe der Option +\OptionVName{BCOR}{Korrektur}\ChangedAt{v3.00}{\Package{typearea}} geben Sie +den absoluten Wert der +Bindekorrektur\Index{Bindekorrektur}\textnote{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} + mit \OptionValue{BCOR}{8.25mm} als Option für \Package{typearea} oder +\begin{lstcode} + \documentclass[a4paper,BCOR=8.25mm]{report} + \usepackage{typearea} +\end{lstcode} + zur Angabe von \OptionValue{BCOR}{8.25mm} als globale Option. + + Bei Verwendung einer \KOMAScript-Klasse sollte das explizite Laden von + \Package{typearea} entfallen: +\begin{lstcode} + \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 +\begin{lstcode} + \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 + einer der Anweisung \DescRef{\LabelBase.cmd.KOMAoptions} oder + \DescRef{\LabelBase.cmd.KOMAoption} wird dann automatisch ein neuer + Satzspiegel mit neuen Randeinstellungen berechnet. +\end{Example} + +Bitte beachten Sie unbedingt\textnote{Achtung!}, dass diese Option bei +Verwendung einer der \KOMAScript-Klassen wie im Beispiel als Klassenoption +oder per \DescRef{\LabelBase.cmd.KOMAoptions} beziehungsweise +\DescRef{\LabelBase.cmd.KOMAoption} nach dem Laden der Klasse übergeben werden +muss. Weder sollte das Paket \Package{typearea} bei Verwendung einer +\KOMAScript-Klasse explizit per \DescRef{\LabelBase.cmd.usepackage} geladen, +noch die Option dabei als optionales Argument angegeben +werden. Wird\textnote{automatische Neuberechnung} die Option per +\DescRef{\LabelBase.cmd.KOMAoptions} oder \DescRef{\LabelBase.cmd.KOMAoption} +nach dem Laden des Pakets geändert, so werden Satzspiegel und Ränder +automatisch neu berechnet.% +% +\EndIndexGroup + + +\begin{Declaration} + \OptionVName{DIV}{Faktor} +\end{Declaration}% +Mit Hilfe der Option +\OptionVName{DIV}{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 +\OptionVName{DIV}{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 \Option{DIV}-Faktoren resultierenden, +theoretischen Satzspiegelgrößen. Dabei werden die weiteren von der +Schriftgröße abhängigen Nebenbedingungen nicht berücksichtigt. + +\begin{table} +% \centering + \KOMAoptions{captions=topbeside}% + \setcapindent{0pt}% + \begin{captionbeside} +% \caption + [{Satzspiegelma"se in Abh"angigkeit von \Option{DIV} bei A4}] + {\label{tab:typearea.typearea}Satzspiegelma"se in Abh"angigkeit von \Option{DIV} + bei A4 ohne Berücksichtigung von \Length{topskip} oder \Option{BCOR}} + [l] + \begin{tabular}[t]{ccccc} + \toprule + & + \multicolumn{2}{c}{Satzspiegel} & \multicolumn{2}{c}{R"ander}\\ + %\raisebox{1.5ex}[0pt]{ + \Option{DIV} + %} + & Breite & H"ohe & oben & innen \\ + \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 + \multicolumn{5}{r}{\small (alle Längen in mm)} + \end{tabular} + \end{captionbeside} +\end{table} + +\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% + \iffalse % Umbruchkorrekturtext + , die zu den Standard-PostScript-Schriften gehört,% + \fi\ wird in {\LaTeX} mit der + Anweisung \verb|\usepackage{bookman}| aktiviert % + \iffalse % Umbruchkorrekturtext + . Die Schriftart Bookman % + \else + und % + \fi 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 + \Option{DIV}-Wert in \Package{typearea} zu gering. Statt eines Werts von 12 + sind Sie nach gründlichem Studium dieses Kapitels einschließlich der + weiterführenden Abschnitte überzeugt, dass der 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% + \iffalse% Umbruchkorrektur + , weil den Band ohnehin nie wieder jemand + anschaut und er nur wegen ISO\,9000 angefertigt wird. Für die Bindung + einschließlich Biegefalz werden % + \else% + . Einschließlich Biegefalz werden dafür % + \fi + 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} +\iftrue% Umbruchoptimierung!!!! +\iftrue + Die voreingestellte Option \Option{a4paper} konnte dabei entfallen. +\else + Option \Option{a4paper} entspricht der Voreinstellung und konnte daher + entfallen. +\fi +\else + Die Option \Option{a4paper} konnte bei der Klasse \Class{scrartcl} entfallen, + da diese der Voreinstellung bei allen \KOMAScript-Klassen entspricht. +\fi +\end{Example} + +Bitte beachten Sie unbedingt\textnote{Achtung!}, dass die Option \Option{DIV} +bei Verwendung einer der \KOMAScript-Klassen wie im Beispiel als Klassenoption +oder per \DescRef{\LabelBase.cmd.KOMAoptions} beziehungsweise +\DescRef{\LabelBase.cmd.KOMAoption} nach dem Laden der Klasse übergeben werden +muss. Weder sollte das Paket \Package{typearea} bei Verwendung einer +\KOMAScript-Klasse explizit per \DescRef{\LabelBase.cmd.usepackage} geladen, +noch die Option dabei als optionales Argument angegeben +werden. Wird\textnote{automatische Neuberechnung} die Option per +\DescRef{\LabelBase.cmd.KOMAoptions} oder \DescRef{\LabelBase.cmd.KOMAoption} +nach dem Laden des Pakets geändert, so werden Satzspiegel und Ränder +automatisch neu berechnet. + +\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 \Option{DIV}-Wert. Diese sind +\autoref{tab:typearea.div} zu entnehmen. Solche festen Werte haben allerdings +den Nachteil\textnote{Achtung!}, dass sie die Laufweite der verwendeten +Schrift nicht berücksichtigen. Das kann bei A4 und recht schmalen Schriften +sehr rasch zu unangenehm hoher Zeichenzahl je Zeile führen. Siehe hierzu die +Überlegungen in \autoref{sec:typearea.basics}. Wird ein anderes Papierformat +gewählt, so berechnet \Package{typearea} selbst einen guten \Option{DIV}-Wert. +Natürlich können Sie diese Berechnung auch für A4 wählen. Hierzu verwenden Sie +\OptionValue{DIV}{calc}\important{\OptionValue{DIV}{calc}} anstelle von +\OptionVNameRef{\LabelBase}{DIV}{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 + \KOMAoptions{captions=topbeside}% + \setcapindent{0pt}% + \begin{captionbeside} + %\caption + [{\Option{DIV}-Voreinstellungen f"ur A4}] + {\label{tab:typearea.div}\Option{DIV}-Voreinstellungen f"ur A4} + [l] + \begin{tabular}[t]{lccc} + \toprule + Grundschriftgr"o"se: & 10\Unit{pt} & 11\Unit{pt} & 12\Unit{pt} \\ + \Option{DIV}: & 8 & 10 & 12 \\ + \bottomrule + \end{tabular} + \end{captionbeside} +\end{table} + +Die in \autoref{sec:typearea.circleConstruction} erwähnte klassische +Konstruktion, der mittelalterliche Buchseitenkanon, ist ebenfalls auswählbar. +Verwenden Sie in diesem Fall anstelle von +\OptionVNameRef{\LabelBase}{DIV}{Faktor} oder \OptionValue{DIV}{calc} einfach +\OptionValue{DIV}{classic}\important{\OptionValue{DIV}{classic}}. Es wird dann +ein \Option{DIV}-Wert ermittelt, der eine möglichst gute Näherung an den +mittelalterlichen Buchseitenkanon darstellt. + +\begin{Example} + In dem bei der Option \OptionVNameRef{\LabelBase}{DIV}{Faktor} aufgeführten + Beispiel mit der Schriftart Bookman gab es ja genau das Problem, dass man + einen zur Schriftart besser passenden \Option{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} +\iffree{\par% + Bitte beachten Sie unbedingt\textnote{Achtung!}, dass diese Option bei + Verwendung einer der \KOMAScript-Klassen % + \iftrue wie im Beispiel \fi% + als Klassenoption oder per \DescRef{\LabelBase.cmd.KOMAoptions} + beziehungsweise \DescRef{\LabelBase.cmd.KOMAoption} nach dem Laden der + Klasse übergeben werden muss. Weder sollte das Paket \Package{typearea} bei + Verwendung einer \KOMAScript-Klasse explizit per + \DescRef{\LabelBase.cmd.usepackage} geladen, noch die Option dabei als + optionales Argument angegeben werden. Wird die Option per + \DescRef{\LabelBase.cmd.KOMAoptions} oder + \DescRef{\LabelBase.cmd.KOMAoption} nach dem Laden des Pakets geändert, so + werden Satzspiegel und Ränder automatisch neu berechnet.% +}{% + \vskip-1\ht\strutbox plus .75\ht\strutbox% Wegen Code im Beispiel am Ende +}% +% +\EndIndexGroup + +\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 \Option{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 \DescRef{\LabelBase.cmd.usepackage} ist also nicht + möglich. Es würde auch nichts nützen, die Option \OptionValue{DIV}{calc} als + optionales Argument von \DescRef{\LabelBase.cmd.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 möglich, mit \DescRef{\LabelBase.cmd.KOMAoptions}% + \PParameter{\OptionValueRef{\LabelBase}{DIV}{calc}} oder + \DescRef{\LabelBase.cmd.KOMAoption}% + \PParameter{\DescRef{\LabelBase.option.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 \Option{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 \OptionValue{DIV}{current}\ChangedAt{v3.00}{\Package{typearea}}% +\important{\OptionValue{DIV}{current}} wird eine Neuberechnung von Satzspiegel +und Rändern angestoßen, wobei genau der \Option{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 unter +Beibehaltung des Teilers \Var{DIV} die Randbedingung sicherstellen will, dass +\Length{textheight} abzüglich \Length{topskip} ein Vielfaches von +\Length{baselineskip} sein sollte. + +Mit \OptionValue{DIV}{last}\ChangedAt{v3.00}{\Package{typearea}}% +\important{\OptionValue{DIV}{last}} 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 \DescRef{\LabelBase.cmd.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 \Option{DIV}-Wert + verwendet werden soll, so muss nur die Einstellung im optionalen Argument + von \DescRef{\LabelBase.cmd.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. + +Falls die letzte Satzspiegelberechnung vor der Verwendung von +\OptionValue{DIV}{last} oder \OptionValue{DIV}{current} mit Hilfe von +\DescRef{\LabelBase.cmd.areaset}\IndexCmd{areaset} stattgefunden hat, wird +übrigens auch die Neuberechnung wieder mit \DescRef{\LabelBase.cmd.areaset} +durchgeführt. Sie entspricht dann +\DescRef{\LabelBase.cmd.areaset}\POParameter{current}% +\PParameter{\Length{textwidth}}\IndexLength{textwidth}% +\PParameter{\Length{textheight}}\IndexLength{textheight}. + +\begin{table} + \caption[{% + Symbolische Werte für Option \DescRef{typearea.option.DIV} und das + \PName{DIV}-Argument von \DescRef{typearea.cmd.typearea}% + }]{% + Mögliche symbolische Werte für die Option \DescRef{typearea.option.DIV} + oder das \PName{DIV}-Argument der Anweisung + \DescRef{typearea.cmd.typearea}\OParameter{BCOR}\Parameter{DIV}% + } + \label{tab:symbolicDIV} + \begin{desctabular} + \pventry{areaset}{Satzspiegel neu + anordnen.\IndexOption{DIV~=\textKValue{areaset}}}% + \pventry{calc}{Satzspiegelberechnung einschließlich Ermittlung eines guten + \Option{DIV}-Wertes erneut + durchführen.\IndexOption{DIV~=\textKValue{calc}}}% + \pventry{classic}{Satzspiegelberechnung nach dem mittelalterlichen + Buchseitenkanon (Kreisberechnung) erneut + durchführen.\IndexOption{DIV~=\textKValue{classic}}}% + \pventry{current}{Satzspiegelberechnung mit dem aktuell gültigen + \Option{DIV}-Wert erneut + durchführen.\IndexOption{DIV~=\textKValue{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~=\textKValue{default}}}% + \pventry{last}{Satzspiegelberechnung mit demselben \PName{DIV}-Argument, + das beim letzten Aufruf angegeben wurde, erneut + durchführen.\IndexOption{DIV~=\textKValue{last}}}% + \end{desctabular} +\end{table} + +Häufig\textnote{Achtung!} 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 \iffalse% Umbruchkorrektur + zwingend \fi 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 zwingend + notwendig, nach \Macro{linespread} den gewählten Durchschuss mit + \Macro{selectfont} zu aktivieren, damit dieser % +\iftrue % Umbruchkorrektur + auch tatsächlich +\fi % + für die Neuberechnung verwendet wird. + + Das gleiche Beispiel sähe unter Verwendung des + \Package{setspace}-Pakets\IndexPackage{setspace}% + \important{\Package{setspace}} + (siehe \cite{package:setspace}) wie folgt aus: +\begin{lstcode} + \documentclass[10pt,twoside,BCOR=12mm,DIV=calc] + {scrreprt} + \usepackage[onehalfspacing]{setspace} + \KOMAoptions{DIV=last} +\end{lstcode} +\end{Example} + +Wie\textnote{Tipp!} man an dem Beispiel sieht, spart man sich mit dem +\Package{setspace}-Paket das Wissen um den korrekten Dehnungswert. Dies gilt +allerdings nur für die Standardschriftgrößen 10\Unit{pt}, 11\Unit{pt} und +12\Unit{pt}. Für alle anderen Schriftgrößen verwendet das Paket +% +\iffalse % Umbruchkorrektur +einen näherungsweise passenden Dehnungswert. +% +\else % +eine Näherung. +\fi + +An\textnote{Achtung!} dieser Stelle erscheint es mir angebracht, darauf +hinzuweisen, dass der Zeilenabstand für die Titelseite wieder auf den normalen +Wert zurückgesetzt werden sollte und außerdem auch die Verzeichnisse mit dem +normalen Zeilenabstand gesetzt werden sollten. +\begin{Example} + Ein\IndexPackage{setspace} vollständiges Beispiel wäre also: +\begin{lstcode} + \documentclass[10pt,twoside,BCOR=12mm,DIV=calc] + {scrreprt} + \usepackage[onehalfspacing]{setspace} + \AfterTOCHead{\singlespacing} + \KOMAoptions{DIV=last} + \begin{document} + \title{Titel} + \author{Markus Kohm} + \begin{spacing}{1} + \maketitle + \end{spacing} + \tableofcontents + \chapter{Ok} + \end{document} +\end{lstcode} + Siehe hierzu auch die Anmerkungen in \autoref{sec:typearea.tips}. Die + Anweisung \DescRef{tocbasic.cmd.AfterTOCHead}\IndexCmd{AfterTOCHead} wird in + \autoref{part:forExperts}, \autoref{cha:tocbasic} auf + \DescPageRef{tocbasic.cmd.AfterTOCHead} vorgestellt. +\end{Example} +Außerdem sei darauf hingewiesen, dass Änderungen am Zeilenabstand auch +Auswirkungen auf Kopf und Fuß der Seite haben können. Dies kann sich +beispielsweise bei Verwendung von \Package{scrlayer-scrpage} auswirken und man +muss dann selbst entscheiden, ob man dort lieber den normalen Durchschuss oder +den veränderten haben will. Siehe dazu auch Option +\DescRef{scrlayer.option.singlespacing} in \autoref{cha:scrlayer}% +\important{\hyperref[cha:scrlayer]{\Package{scrlayer}}}% +\IndexPackage{scrlayer}\IndexOption{singlespacing} auf +\DescPageRef{scrlayer.option.singlespacing}. + +Bitte beachten Sie\iffalse % Umbruchkorrektur +\ unbedingt\fi\textnote{Achtung!}, dass diese Optionen +\iffalse % Umbruchkorrektur +auch zur \else bei \fi Verwendung mit \DescRef{\LabelBase.cmd.KOMAoptions} +oder \DescRef{\LabelBase.cmd.KOMAoption} \iffalse % Umbruchkorrektur +nach dem Laden des Pakets vorgesehen sind und dann \fi eine +automatische\textnote{automatische Neuberechnung} Neuberechnung von +Satzspiegel und Rändern auslösen.% +% +\EndIndexGroup +\EndIndexGroup + + +\begin{Declaration} + \Macro{typearea}\OParameter{BCOR}\Parameter{DIV} + \Macro{recalctypearea} +\end{Declaration}% +\begin{Explain} + Wird die Option \DescRef{\LabelBase.option.DIV} oder die Option + \DescRef{\LabelBase.option.BCOR} nach dem Laden des Pakets + \Package{typearea} gesetzt, so wird intern die Anweisung \Macro{typearea} + aufgerufen. Dabei wird beim Setzen der Option + \DescRef{\LabelBase.option.DIV} für \PName{BCOR} intern der symbolische Wert + \PValue{current} verwendet\iffalse % Umbruchkorrektur + , der aus Gründen der Vollständigkeit auch in \autoref{tab:symbolicBCOR} zu + finden ist\else\ (siehe \autoref{tab:symbolicBCOR})\fi. Beim Setzen der + Option \DescRef{\LabelBase.option.BCOR} wird für \PName{DIV} hingegen der + symbolische Wert \PValue{last} verwendet. Wollen Sie, dass Satzspiegel und + Ränder stattdessen mit dem symbolischen Wert \PValue{current} für + \PName{DIV} neu berechnet werden, so können Sie direkt + \Macro{typearea}\OParameter{BCOR}\PParameter{current} verwenden. +\end{Explain} + +\begin{table} + \caption[{% + Symbolische \PName{BCOR}-Argumente für \DescRef{typearea.cmd.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 + \Option{BCOR}-Wert erneut + durchführen.\IndexOption{BCOR~=\textKValue{current}}} + \end{desctabular} +\end{table} + +Sollen die Werte sowohl von \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 +\DescRef{\LabelBase.cmd.KOMAoptions}% +\PParameter{\OptionVNameRef{\LabelBase}{DIV}{Faktor},% + \OptionVNameRef{\LabelBase}{BCOR}{Korrektur}} werden hingegen Ränder und +Satzspiegel zunächst in Folge von Option \DescRef{\LabelBase.option.DIV} und +dann zusätzlich durch Option \DescRef{\LabelBase.option.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. % + \iffalse% Stimmt so nicht mehr wirklich. + Da am \LaTeX-Kern nur noch zur Beseitigung von Fehlern notwendige % + \else % + Auch wenn am \LaTeX-Kern inzwischen wieder mehr % + \fi % + Änderungen vorgenommen werden, + ist die Wahrscheinlichkeit hoch, dass dies in zukünftigen Versionen von + \LaTeXe{} noch funktionieren wird. Eine Garantie dafür gibt es jedoch + nicht. Die Verwendung innerhalb des Dokuments führt außerdem immer zu einem + Seitenumbruch. +\end{Explain} + +Da\important{\Macro{recalctypearea}} \DescRef{\LabelBase.cmd.KOMAoption}% +\PParameter{\hyperref[desc:\LabelBase.option.DIV.last]{\Option{DIV}}}% +\PParameter{\hyperref[desc:\LabelBase.option.DIV.last]{last}} oder +\DescRef{\LabelBase.cmd.KOMAoptions}% +\PParameter{\OptionValueRef{\LabelBase}{DIV}{last}} beziehungsweise +\Macro{typearea}\POParameter{current}\PParameter{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}}. +\iffalse % Umbruchkorrektur +\begin{Example} + Wenn Ihnen die Schreibweisen +\begin{lstcode} + \KOMAoptions{DIV=last} +\end{lstcode} + oder +\begin{lstcode} + \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 +\begin{lstcode} + \recalctypearea +\end{lstcode} + verwenden. +\end{Example}% +\vskip -1\ht\strutbox plus .75\ht\strutbox% Ende Beispiel+Ende Erklärung +\fi +\EndIndexGroup + + +\begin{Declaration} + \OptionVName{twoside}{Ein-Aus-Wert} + \OptionValue{twoside}{semi} +\end{Declaration}% +Wie in \autoref{sec:typearea.basics} erklärt, hängt +die Randverteilung davon ab, ob ein Dokument ein- oder zweiseitig gesetzt +werden soll. Bei einseitigem Satz sind der linke und 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 Option \Option{twoside} +mitgeteilt werden, ob das Dokument doppelseitig gesetzt wird. Als +\iffree{\PName{Ein-Aus-Wert}}{\PName{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}\important{\OptionValue{twoside}{true}} angenommen, also +doppelseitiger Satz verwendet. Deaktivieren der +Option\important{\OptionValue{twoside}{false}} führt zu einseitigem Satz. + +\begin{table} +% \centering +% \caption + \KOMAoptions{captions=topbeside}\setcapindent{0pt} + \begin{captionbeside}% + [{Standardwerte für einfache Schalter in \KOMAScript}]% + {\label{tab:truefalseswitch}Standardwerte für alle einfachen Schalter in + \KOMAScript}% + [l] + \begin{tabular}[t]{ll} + \toprule + Wert & Bedeutung \\ + \midrule + \PValue{true} & 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} + \end{captionbeside} +\end{table} + +Außer den Werten aus \autoref{tab:truefalseswitch} kann auch noch der +Wert \PValue{semi}\ChangedAt{v3.00}{\Package{typearea}}% +\important{\OptionValue{twoside}{semi}} angegeben werden. Dieser Wert +\PValue{semi} führt zu doppelseitigem Satz mit einseitigen Rändern und +einseitigen, also nicht alternierenden +Marginalien. Eine\ChangedAt{v3.12}{\Package{typearea}} eventuelle +Bindekorrektur (siehe Option \DescRef{\LabelBase.option.BCOR}, +\DescPageRef{typearea.option.BCOR}) wird jedoch ab \KOMAScript~Version 3.12 +wie beim doppelseitigen Satz auf Seiten mit ungerader Nummer dem linken Rand +und auf Seiten mit gerader Nummer dem rechten Rand zugeschlagen. Wird auf +Kompatibilität zu einer früheren +Version\important{\OptionValueRef{\LabelBase}{version}{3.12}} zurückgeschaltet +(siehe \autoref{sec:typearea.compatibilityOptions}, +\autopageref{sec:typearea.compatibilityOptions}), so ist die Bindekorrektur +dagegen auch bei \OptionValue{twoside}{semi} immer Teil des linken Randes. + +Die Option kann % +\iffalse % Umbruchkorrektur +wahlweise \fi % +als Klassenoption bei \DescRef{\LabelBase.cmd.documentclass}, als Paketoption +bei \DescRef{\LabelBase.cmd.usepackage} oder % +\iffalse % Umbruchkorrektur +auch \fi % +nach dem Laden von +\Package{typearea} per \DescRef{\LabelBase.cmd.KOMAoptions} oder +\DescRef{\LabelBase.cmd.KOMAoption} gesetzt werden. Eine Verwendung dieser +Option nach dem Laden von \Package{typearea} führt\textnote{automatische + Neuberechnung} automatisch zur Neuberechnung des Satzspiegels mit +\DescRef{\LabelBase.cmd.recalctypearea} (siehe +\DescPageRef{typearea.cmd.recalctypearea}). War vor der Option +doppelseitiger Satz aktiv, wird noch vor der Neuberechnung auf die nächste +ungerade Seite umbrochen.% +% +\EndIndexGroup + + +\begin{Declaration} + \OptionVName{twocolumn}{Ein-Aus-Wert} +\end{Declaration}% +Für die Berechnung eines guten Satzspiegels mit Hilfe von +\OptionValueRef{\LabelBase}{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 +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}\important{\OptionValue{twocolumn}{true}} angenommen, also +doppelspaltiger Satz verwendet. Ein +Deaktivieren der Option führt wieder zum voreingestellten +einspaltigen Satz. + +Die Option kann als Klassenoption bei \DescRef{\LabelBase.cmd.documentclass}, +als Paketoption bei \DescRef{\LabelBase.cmd.usepackage} oder nach dem Laden +von \Package{typearea} per \DescRef{\LabelBase.cmd.KOMAoptions} oder +\DescRef{\LabelBase.cmd.KOMAoption} gesetzt werden. Eine Verwendung % +\iffalse % Umbruchoptimierung +dieser Option \fi% +nach dem Laden von \Package{typearea} +führt\textnote{automatische Neuberechnung} automatisch zur Neuberechnung des +Satzspiegels mittels \DescRef{\LabelBase.cmd.recalctypearea} (siehe +\DescPageRef{typearea.cmd.recalctypearea}).% +% +\EndIndexGroup + + +\begin{Declaration} + \OptionVName{headinclude}{Ein-Aus-Wert} + \OptionVName{footinclude}{Ein-Aus-Wert} +\end{Declaration}% +\begin{Explain}% + Bisher wurde zwar erklärt, wie die + Satzspiegelkonstruktion\Index{Satzspiegel} funktioniert und in welchem + Verhältnis einerseits die Ränder\Index{Rand} zueinander stehen, andererseits + der Textkörper zur Seite steht, aber eine entscheidende Frage blieb + ausgeklammert: Was genau ist \emph{der Rand}? + + 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. Beim oberen und unteren Rand stellt sich die Frage, wie + Kopf- und Fußzeile\Index{Seiten>Kopf}\Index{Seiten>Fuss=Fuß} 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{Paginierung}\textnote{Paginierung} + \iffalse % Beseitigung von Fußnoten + \unskip\footnote{Unter der Paginierung versteht man die Angabe der + Seitenzahl, wahlweise innerhalb oder außerhalb des Satzspiegels, meist im + Kopf oder Fuß der Seite.} % + \fi 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{Kolumnentitel}\textnote{Kolumnentitel} + \iffalse% Beseitigung von Fußnoten + \unskip\footnote{Unter dem Kolumnentitel versteht man in der Regel die + Wiederholung einer Überschrift mit Titelcharakter. Er steht häufig im + Seitenkopf, seltener im Seitenfuß.} % + \fi 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 aber + 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\important{\OptionValue{headinclude}{true} + \OptionValue{headinclude}{false} \OptionValue{footinclude}{true} + \OptionValue{footinclude}{false}} 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}, +\autopageref{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:scrlayer-scrpage}). + +Bitte beachten Sie unbedingt\textnote{Achtung!}, dass diese Optionen bei +Verwendung einer der \KOMAScript-Klassen als Klassenoptionen oder per +\DescRef{\LabelBase.cmd.KOMAoptions} beziehungsweise +\DescRef{\LabelBase.cmd.KOMAoption} nach dem Laden der Klasse übergeben werden +müssen. Eine Änderung dieser Optionen nach dem Laden von \Package{typearea} +führt dabei nicht\textnote{keine automatische Neuberechnung} 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 +\hyperref[desc:\LabelBase.option.DIV.last]{\Option{DIV}} mit den Werten +\hyperref[desc:\LabelBase.option.DIV.last]{\PValue{last}} oder +\hyperref[desc:\LabelBase.option.DIV.current]{\PValue{current}} (siehe +\DescPageRef{typearea.option.DIV.last}) oder die Anweisung +\DescRef{\LabelBase.cmd.recalctypearea} (siehe +\DescPageRef{typearea.cmd.recalctypearea}).% +% +\EndIndexGroup + +\begin{Declaration} + \OptionVName{mpinclude}{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 (siehe beispielsweise Befehl \DescRef{maincls.cmd.marginpar} +in \cite{l2kurz} oder \autoref{sec:maincls.marginNotes}) 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}, +\autopageref{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}\important{\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: +\begin{lstcode} + \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: % +\iftrue % Umbruchkorrektur + Die Anpassung von \Length{textwidth}\IndexLength{textwidth} und + \Length{marginparwidth}\IndexLength{marginparwidth} nach der Berechnung des + Satzspiegels. Siehe dazu + \DescRef{typearea-experts.cmd.AfterCalculatingTypearea} in + \autoref{sec:typearea-experts.experts}, + \DescPageRef{typearea-experts.cmd.AfterCalculatingTypearea}. +% +\else +% + 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 + \OptionValueRef{\LabelBase}{DIV}{calc}\IndexOption{DIV=calc} (siehe + \DescPageRef{typearea.option.DIV.calc}) berücksichtigt. +% +\fi +\end{Explain} + +Bitte beachten Sie unbedingt\textnote{Achtung!}, dass diese Option bei +Verwendung einer der \KOMAScript-Klassen als Klassenoption oder per +\DescRef{\LabelBase.cmd.KOMAoptions} beziehungsweise oder +\DescRef{\LabelBase.cmd.KOMAoption} nach dem Laden der Klasse übergeben werden +muss. Eine Änderung dieser Option nach dem Laden von \Package{typearea} führt +nicht\textnote{keine automatische Neuberechnung} 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 +\hyperref[desc:\LabelBase.option.DIV.last]{\Option{DIV}} mit den Werten +\hyperref[desc:\LabelBase.option.DIV.last]{\PValue{last}} oder +\hyperref[desc:\LabelBase.option.DIV.current]{\PValue{current}} (siehe +\DescPageRef{typearea.option.DIV.last}) oder die Anweisung +\DescRef{\LabelBase.cmd.recalctypearea} (siehe +\DescPageRef{typearea.cmd.recalctypearea}).% +% +\EndIndexGroup + + +\begin{Declaration} + \OptionVName{headlines}{Zeilenanzahl} + \OptionVName{headheight}{Höhe} +\end{Declaration}% +\BeginIndex{}{Kopf>Hoehe=Höhe}% +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}\important{\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.pagestyle}) 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:scrlayer-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}\important{\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änder +entscheidend ist. Außerdem\textnote{Achtung!} sollten \LaTeX-Längen wie +\Length{baselineskip} keinesfalls im optionalen Argument von +\DescRef{\LabelBase.cmd.documentclass} oder +\DescRef{\LabelBase.cmd.usepackage} verwendet werden. + +Bitte beachten Sie unbedingt\textnote{Achtung!}, dass diese Optionen bei +Verwendung einer der \KOMAScript-Klassen als Klassenoptionen oder per +\DescRef{\LabelBase.cmd.KOMAoptions} beziehungsweise +\DescRef{\LabelBase.cmd.KOMAoption} nach dem Laden der Klasse übergeben werden +müssen. Eine Änderung dieser Optionen nach dem Laden von \Package{typearea} +führt nicht\textnote{keine automatische Neuberechnung} 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 +\hyperref[desc:\LabelBase.option.DIV.last]{\Option{DIV}} mit den Werten +\hyperref[desc:\LabelBase.option.DIV.last]{\PValue{last}} oder +\hyperref[desc:\LabelBase.option.DIV.current]{\PValue{current}} (siehe +\DescPageRef{typearea.option.DIV.last}) oder die Anweisung +\DescRef{\LabelBase.cmd.recalctypearea} (siehe +\DescPageRef{typearea.cmd.recalctypearea}).% +% +\EndIndexGroup + + +\begin{Declaration} + \OptionVName{footlines}{Zeilenanzahl}% + \OptionVName{footheight}{Höhe}% + \Length{footheight}% +\end{Declaration}% +\BeginIndex{}{Fuss=Fuß>Hoehe=Höhe}% +Wie schon für den Kopf fehlt aber noch die Angabe, wie hoch der Fuß sein +soll. Hierzu dienen die Optionen \Option{footlines} und +\Option{footheight}\ChangedAt{v3.12}{\Package{typearea}}. Allerdings ist die +Höhe des Fußes im Gegensatz zur Höhe des Kopfes keine Länge des \LaTeX-Kerns +selbst. Daher definiert \Package{typearea} zur Einführung eine neue Länge +\Length{footheight}\IndexLength[indexmain]{footheight}, falls diese noch nicht +existiert. Ob diese dann auch beispielsweise von Klassen und Paketen für die +Gestaltung von Kopf und Fuß verwendet wird, hängt von den verwendeten Klassen +und Paketen ab. Das \KOMAScript-Paket +\hyperref[cha:scrlayer-scrpage]{\Package{scrlayer-scrpage}}% +\important{\hyperref[cha:scrlayer-scrpage]{\Package{scrlayer-scrpage}}}% +\IndexPackage{scrlayer-scrpage} berücksichtigt \Length{footheight} und +arbeitet somit aktiv mit \Package{typearea} zusammen. Die \KOMAScript-Klassen +berücksichtigen \Length{footheight} hingegen nicht, da sie ohne +Paketunterstützung nur Seitenstile mit einzeiligen Seitenfüßen anbieten. + +Die Option \Option{footlines}\important{\Option{footlines}} setzt man +vergleichbar zu \DescRef{\LabelBase.option.headlines} auf die Anzahl der +Fußzeilen. Normalerweise arbeitet das \Package{typearea}-Paket mit 1,25 +Fußzeilen. Dieser Wert stellt einen Kompromiss dar. Zum einen ist er groß +genug, um auch für eine über- und unterstrichene Fußzeile (siehe +\autoref{sec:maincls.pagestyle}) Platz zu bieten, zum anderen ist er klein +genug, um das Randgewicht nicht zu stark zu verändern, wenn mit einer +einfachen Fußzeile ohne Trennlinien 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 Fußhöhe genauer den tatsächlichen +Erfordernissen anpassen. + +\begin{Example} + Angenommen, im Fuß soll eine zweizeilige Copyright-Angabe gesetzt + werden. Zwar gibt es in \LaTeX{} selbst keinen Test, ob der für den Fuß + vorgesehene Platz dafür genügend Raum bietet, die Überschreitung der + vorgesehenen Höhe resultiert aber wahrscheinlich in einer unausgeglichenen + Verteilung von Satzspiegeln und Rändern. Außerdem führt beispielsweise das + Paket \hyperref[cha:scrlayer-scrpage]{\Package{scrlayer-scrpage}}% + \important{\hyperref[cha:scrlayer-scrpage]{\Package{scrlayer-scrpage}}}% + \IndexPackage{scrlayer-scrpage}, mit dem ein solcher Fuß\-in\-halt gesetzt + werden könnte, durchaus eine entsprechende Überprüfung durch und meldet + gegebenenfalls auch Überschreitungen. Daher ist es sinnvoll, die benötigte + größere Fußhöhe bereits bei der Berechnung des Satzspiegels anzugeben: +\begin{lstcode} + \documentclass[a4paper]{article} + \usepackage[footlines=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[footlines=2.1]{scrartcl} +\end{lstcode} + Befehle, mit denen dann der Inhalt der zweizeiligen Fußzeile + definiert werden kann, sind in \autoref{cha:scrlayer-scrpage} zu finden. +\end{Example} + +In einigen Fällen ist es nützlich, wenn man die Fußhöhe nicht in Zeilen, +sondern direkt als Längenwert angeben kann. Dies ist mit Hilfe der alternativ +verwendbaren Option \Option{footheight}\important{\Option{footheight}} +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änder +entscheidend ist. Außerdem\textnote{Achtung!} sollten \LaTeX-Längen wie +\Length{baselineskip} keinesfalls im optionalen Argument von +\DescRef{\LabelBase.cmd.documentclass} oder +\DescRef{\LabelBase.cmd.usepackage} verwendet werden. + +Bitte beachten Sie unbedingt\textnote{Achtung!}, dass diese Optionen bei +Verwendung einer der \KOMAScript-Klassen als Klassenoptionen oder per +\DescRef{\LabelBase.cmd.KOMAoptions} beziehungsweise +\DescRef{\LabelBase.cmd.KOMAoption} nach dem Laden der Klasse übergeben werden +müssen. Eine Änderung dieser Optionen nach dem Laden von \Package{typearea} +führt nicht\textnote{keine automatische Neuberechnung} 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 +\hyperref[desc:\LabelBase.option.DIV.last]{\Option{DIV}} mit den Werten +\hyperref[desc:\LabelBase.option.DIV.last]{\PValue{last}} oder +\hyperref[desc:\LabelBase.option.DIV.current]{\PValue{current}} (siehe +\DescPageRef{typearea.option.DIV.last}) oder die Anweisung +\DescRef{\LabelBase.cmd.recalctypearea} (siehe +\DescPageRef{typearea.cmd.recalctypearea}).% +\EndIndexGroup + + +\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 +\DescRef{\LabelBase.option.headinclude} und +\DescRef{\LabelBase.option.footinclude} berücksichtigt werden. Die Optionen +\DescRef{\LabelBase.option.headlines}\IndexOption{headlines}\textnote{Achtung!}, +\DescRef{\LabelBase.option.headheight}\IndexOption{headheight}, +\DescRef{\LabelBase.option.footlines}\IndexOption{footlines} und +\DescRef{\LabelBase.option.footheight}\IndexOption{footheight} bleiben in +diesem Fall jedoch unberücksichtigt! Siehe dazu die weiterführenden +Informationen zu \DescRef{typearea-experts.cmd.areaset} auf +\DescPageRef{typearea-experts.cmd.areaset} in +\autoref{sec:typearea-experts.experimental}. + +Die Voreinstellung für \PName{BCOR} ist 0\Unit{pt}. Soll hingegen die aktuelle, +beispielsweise per Option \DescRef{\LabelBase.option.BCOR}\IndexOption{BCOR} +eingestellte Bindekorrektur erhalten bleiben, sollte man den symbolischen Wert +\PValue{current} als optionales Argument verwenden. + +\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. + +\iffalse % Umbruchkorrekturtext + 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:% +\else % +\iffalse % + Ein quadratischer Gedichtband im Format 15\Unit{cm}\,:\,15\Unit{cm} mit + mit 1\Unit{cm} Binderand gesetzt werden, ginge so:% +\else % + Soll stattdessen ein Gedichtband mit quadratischem Textbereich der + Seitenlänge 15\Unit{cm} und + einem Binderand von 1\Unit{cm} gesetzt + werden, so ist Folgendes möglich:% +\fi % +\fi % +% Korrektur von Code am Ende eines Beispiels am Ende einer Erklärung +\begin{lstcode}[belowskip=-1.5\baselineskip] + \documentclass{gedichte} + \usepackage{typearea} + \areaset[1cm]{15cm}{15cm} +\end{lstcode}% +\end{Example}% +\EndIndexGroup + + +\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}\important{\OptionValue{DIV}{areaset}} möglich, +wobei \DescRef{\LabelBase.cmd.KOMAoptions}\PParameter{DIV=areaset} der +Anweisung +\begin{lstcode} + \areaset[current]{\textwidth}{\textheight} +\end{lstcode} +entspricht. Dasselbe Ergebnis erhält man% +\iffalse auch\fi% Umbruchkorrekturtext! +, wenn \OptionValueRef{\LabelBase}{DIV}{last} verwendet wird und der +Satzspiegel zuletzt per \DescRef{\LabelBase.cmd.areaset} eingestellt wurde.% +% +\EndIndexGroup + +\iffalse% Umbruchkorrekturtext: Alternativen +\iftrue% +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 +Pakets \Package{geometry}\IndexPackage{geometry}\important{\Package{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% +\fi + + +\section{Einstellung des Papierformats}% +\seclabel{paperTypes}% +\BeginIndexGroup + +Das Papierformat ist ein \iffalse entscheidendes \fi% Umbruchkorrekturtext +Grundmerkmal eines Dokuments. Wie +bereits bei der Vorstellung der \iffalse unterstützten \fi% Umbruchkorrekturtext +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. + + +\begin{Declaration} + \OptionVName{paper}{Format} + \OptionVName{paper}{Ausrichtung} +\end{Declaration}% +Die Option \Option{paper}\ChangedAt{v3.00}{\Package{typearea}} ist das +zentrale Element der Formatauswahl\important[i]{% + \begin{tabular}[t]{@{}l@{}l@{}} + \KOption{paper} & \PValue{letter}, \PValue{legal}, \\ + & \PValue{executive}, \\ + & \PValue{A0}, \PValue{A1}, \PValue{A2} \dots\\ + & \PValue{B0}, \PValue{B1}, \PValue{B2} \dots\\ + & \PValue{C0}, \PValue{C1}, \PValue{C2} \dots\\ + & \PValue{D0}, \PValue{D1}, \PValue{D2} \dots\end{tabular}} % +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\important{% + \begin{tabular}[t]{@{}l@{}l@{}} + \KOption{paper} & \PValue{landscape}, \\ + & \PValue{seascape} + \end{tabular}% +} werden dadurch unterstützt, dass man die Option ein weiteres Mal mit dem +Wert \PValue{landscape}\Index{Papier>Ausrichtung} oder +\PValue{seascape}\ChangedAt{v3.02c}{\Package{typearea}} angibt. Dabei +unterscheiden sich \PValue{landscape} und \PValue{seascape} nur darin, dass +das Programm \File{dvips} bei \PValue{landscape} um -90\Unit{\textdegree} +dreht, während bei \PValue{seascape} um +90\Unit{\textdegree} gedreht +wird. Hilfreich ist \PValue{seascape} also vor allem dann, wenn ein +PostScript-Anzeigeprogramm die Seiten im Querformat auf dem Kopf stellt. +Damit der Unterschied eine Rolle spielt, darf auch die nachfolgend +beschriebene Option \DescRef{\LabelBase.option.pagesize}% +\IndexOption{pagesize}\important{\DescRef{\LabelBase.option.pagesize}} nicht +deaktiviert sein. + +Zusätzlich kann das \PName{Format} auch in der Form +\PName{Breite}\texttt{:}\PName{Höhe}\ChangedAt{v3.01b}{\Package{typearea}}% +\important{\OptionVName{paper}{Breite\textup{:}Höhe}} beziehungsweise +\PName{Höhe}\texttt{:}\PName{Breite}\ChangedAt{v3.22}{\Package{typearea}}% +\important{\OptionVName{paper}{Höhe\textup{:}Breite}} angegeben +werden. Welcher Wert die \PName{Höhe} und welcher die \PName{Breite} ist, +richtet sich nach der Ausrichtung des Papiers. Mit +\OptionValue{paper}{landscape} oder \OptionValue{paper}{seascape} ist der +kleinere Wert die \PName{Höhe} und der größere Wert die \PName{Breite}. Mit +\OptionValue{paper}{portrait}\important{\OptionValue{paper}{portrait}} ist +dagegen der kleinere Wert die \PName{Breite} und der größere Wert die +\PName{Höhe}. + +Es\textnote{Achtung!} wird darauf hingewiesen, dass bis Version~3.01a der +erste Wert immer die \PName{Höhe} und der zweite Wert die \PName{Breite} +war. Dagegen war von Version~3.01b bis Version~3.21a der erste Wert immer die +\PName{Breite} und der zweite Wert immer die \PName{Höhe}. Dies ist +insbesondere dann zu beachten, wenn mit einer entsprechenden +Kompatibilitätseinstellung (siehe Option \DescRef{\LabelBase.option.version}% +\IndexOption{version}\important{\DescRef{\LabelBase.option.version}}, +\autoref{sec:typearea.compatibilityOptions}, +\DescPageRef{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 (Breite:Höhe) + 5\Unit{cm}\,:\,3\Unit{cm}, so ist dies mit +\begin{lstcode} + \documentclass{article} + \usepackage[headinclude=false,footinclude=false, + paper=landscape,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\textnote{\KOMAScript{} + vs. Standardklassen} zu den Standardklassen, bei denen in der Voreinstellung +das amerikanische Format letter verwendet wird. + +Bitte beachten Sie unbedingt\textnote{Achtung!}, dass diese Option bei +Verwendung einer der \KOMAScript-Klassen als Klassenoption oder per +\DescRef{\LabelBase.cmd.KOMAoptions} beziehungsweise +\DescRef{\LabelBase.cmd.KOMAoption} nach dem Laden der Klasse übergeben werden +muss. Eine Änderung des Papierformats oder der Papierausrichtung mit Hilfe +der Anweisung \DescRef{\LabelBase.cmd.KOMAoptions}\textnote{keine automatische + Neuberechnung} oder \DescRef{\LabelBase.cmd.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 \hyperref[desc:\LabelBase.option.DIV.last]{\Option{DIV}} mit den Werten +\hyperref[desc:\LabelBase.option.DIV.last]{\PValue{last}} oder +\hyperref[desc:\LabelBase.option.DIV.current]{\PValue{current}} (siehe +\DescPageRef{typearea.option.DIV.last}) oder die Anweisung +\DescRef{\LabelBase.cmd.recalctypearea} (siehe +\DescPageRef{typearea.cmd.recalctypearea}).% +\EndIndexGroup + + +\begin{Declaration} + \OptionVName{pagesize}{Ausgabetreiber} +\end{Declaration}% +\begin{Explain}% + Die oben genannten Mechanismen zur Auswahl des Papierformats \iffree{haben + nur insofern einen Einfluss auf die Ausgabe, als interne {\LaTeX}-Maße + gesetzt werden}{führen nur zum Setzen interner {\LaTeX}-Maße}. Das Paket + \Package{typearea} verwendet diese \iffree{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. % + \iffree{% + Wird direkt aus dem DVI-Format in eine Low-Level-Druckersprache wie PCL% + \iftrue% Umbruchkorrektur + \footnote{PCL ist eine Familie von Druckersprachen, die HP für seine + Tinten- und Laserdrucker verwendet.}% + \fi \ oder ESC/P2% + \iftrue% Umbruchkorrektur + \footnote{ESC/P2 ist die Druckersprache, die EPSON für seine 24-Nadel- und + ältere Tinten- oder Laserdrucker benutzt.}% + \fi \ beziehungsweise ESC/P-R% + \iftrue% Umbruchkorrektur + \footnote{ESC/P-R ist die Druckersprache, die EPSON aktuell für Tinten- + und Laserdrucker benutzt.}% + \fi \ ausgegeben, spielt dies normalerweise keine Rolle% + }{% + In früheren Zeiten, als DVI zum Ausruck noch direkt in + Low-Level-Druckersprachen übertragen wurde, spielte dies keine Rolle% + }, da auch bei diesen Ausgaben der 0-Bezugspunkt wie bei DVI links oben + liegt. \iffree{Wird aber}{Heutzutage wird aber meist} in Sprachen wie + \iffree{PostScript\Index{PostScript} oder }{}% Umbruchkorrekturtext + PDF\Index{PDF} übersetzt, bei denen der 0-Bezugspunkt an anderer Stelle + liegt und außerdem das Papierformat in der Ausgabedatei angegeben werden + sollte\iffree{, so}{. Dabei} 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} oder \File{dvipdfm} kann diese Angabe in Form + einer \Macro{special}-Anweisung erfolgen. Bei Verwendung von {pdf\TeX}, + {lua\TeX}, {\XeTeX} oder {V\TeX} werden deren Papierformat-Längen + entsprechend gesetzt.% +\end{Explain} +Mit der Option \Option{pagesize} kann eingestellt werden, für welchen +\PName{Ausgabetreiber} die Papiergröße in das Dokument geschrieben wird. Die +unterstützten \PName{Ausgabetreiber} sind \autoref{tab:typearea.outputdriver} +\iffalse auf \autopageref{tab:typearea.outputdriver}\fi zu +entnehmen. Voreingestellt\ChangedAt{v3.17}{\Package{typearea}} ist +\Option{pagesize}. Diese Verwendung der Option ohne Angabe eines Wertes +entspricht \OptionValue{pagesize}{auto}. +% +\begin{table} + \caption{Ausgabetreiber für Option \OptionVName{pagesize}{Ausgabetreiber}} + \begin{desctabular} + \pventry{auto}{Falls die pdf\TeX-spezifischen Register + \Macro{pdfpagewidth}\IndexLength{pdfpagewidth} und + \Macro{pdfpageheight}\IndexLength{pdfpageheight} oder die + lua\TeX-spezifischen Register \Macro{pagewidth}\IndexLength{pagewidth} + und \Macro{pageheight}\IndexLength{pageheight} vorhanden sind, wird + der Ausgabetreiber \PValue{pdftex} aktiviert. Zusätzlich wird auch der + Ausgabetreiber \PValue{dvips} + verwendet. Diese Einstellung ist grundsätzlich auch für \XeTeX{} + geeignet.% + \IndexOption{pagesize~=\textKValue{auto}}}% + \pventry{automedia}{Dies entspricht dem Ausgabetreiber + \PValue{auto}. Allerdings werden zusätzlich auch noch die + \mbox{V\TeX}-spezifischen Register + \Macro{mediawidth}\IndexLength{mediawidth} und + \Macro{mediaheight}\IndexLength{mediaheight} gesetzt, falls diese + definiert sind.% + \IndexOption{pagesize~=\textKValue{automedia}}}% + \entry{\PValue{false}, \PValue{no}, \PValue{off}}{% + Die Papiergröße wird nicht an den Ausgabetreiber + gemeldet.% + \IndexOption{pagesize~=\textKValue{false}}}% + \pventry{dvipdfmx}{\ChangedAt{v3.05a}{\Package{typearea}}Die Papiergröße + wird als + \Macro{special}\PParameter{pagesize=\PName{Breite},\PName{Höhe}} in die + DVI-Datei geschrieben. Der Name des Ausgabetreibers kommt daher, dass + das Programm \File{dvipdfmx} eine Pa\-pier\-for\-mat\-um\-schal\-tung + über diese Anweisung auch innerhalb des Dokuments erlaubt.% + \IndexOption{pagesize~=\textKValue{dvipdfmx}}}% + \pventry{dvips}{Bei Verwendung innerhalb der Dokumentpräambel wird die + Papiergröße über + \Macro{special}\PParameter{pagesize=\PName{Breite},\PName{Höhe}} in das + Dokument geschrieben. Da das Programm \File{dvips} keine + Pa\-pier\-for\-mat\-um\-schal\-tung innerhalb des Dokuments unterstützt, + wird bei Bedarf im Dokument ein recht unsauberer Hack verwendet, um die + Umschaltung nach Möglichkeit dennoch zu + erreichen. Pa\-pier\-for\-mat\-um\-schal\-tung nach der Dokumentprämbel + bei gleichzeitiger Verwendung des Ausgabetreibers \PValue{dvips} + erfolgen daher auf eigene Gefahr!% + \IndexOption{pagesize~=\textKValue{dvips}}}% + \entry{\PValue{pdftex}, \PValue{luatex}}{% + \ChangedAt{v3.20}{\Package{typearea}}Die Papiergröße + wird über die pdf\TeX-spezifischen Register + \Macro{pdfpagewidth}\IndexLength{pdfpagewidth} und + \Macro{pdfpageheight}\IndexLength{pdfpageheight} oder die + lua\TeX-spezifischen Register \Macro{pagewidth}\IndexLength{pagewidth} + und \Macro{pageheight}\IndexLength{pageheight} gesetzt. Dies ist + auch jederzeit innerhalb des Dokuments problemlos + möglich.% + \IndexOption{pagesize~=\textKValue{pdftex}}% + \IndexOption{pagesize~=\textKValue{luatex}}}% + \end{desctabular} + \label{tab:typearea.outputdriver} +\end{table} + +\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}[% + aboveskip=.5\baselineskip plus .1\baselineskip minus .1\baselineskip,% + belowskip=.4\baselineskip plus .1\baselineskip minus .1\baselineskip] + \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 Spezialgröß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}% +\iffree{}{% + \vskip-1\ht\strutbox plus .75\ht\strutbox% Wegen Beispiel am Ende der Erklärung +}% +\EndIndexGroup +% +\EndIndexGroup + +% Umbruchverbesserung: +%\iffree{}{\clearpage} +\section{Tipps} +\seclabel{tips} + +Insbesondere für die Erstellung von schriftlichen Arbeiten während des +Studiums findet man häufig Vorschriften\textnote{Satzvorschriften + vs. gute~Typografie}, 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. +\iffalse % Umbruchkorrektur +Kaum ein Text, der mit einer derartigen Schrift gesetzt ist, wirkt +gleichmäßig. So wird häufig % +\else Häufig wird % +\fi % +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 +\DescRef{\LabelBase.option.DIV}\important{\DescRef{\LabelBase.option.DIV}} der +Satzspiegel moderat angepasst werden. Von der Verwendung von +\DescRef{\LabelBase.cmd.areaset} zu diesem Zweck rate ich jedoch +ab. Schlimmstenfalls verwenden Sie das nicht zu {\KOMAScript} gehörende +\Package{geometry}-Paket\important{\Package{geometry}}\IndexPackage{geometry} +(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. Mit Hilfe von Option +\DescRef{typearea-experts.option.usegeometry}% +\important{\DescRef{typearea-experts.option.usegeometry}}, die Sie in +\autoref{part:forExperts} finden, kann außerdem die Zusammenarbeit von +\Package{typearea} und \Package{geometry} verbessert werden. 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}\important{\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. Näheres dazu finden Sie bei der Erklärung zu +\OptionValueRef{\LabelBase}{DIV}{current}% +\important{\OptionValueRef{\LabelBase}{DIV}{current}}. + +Das \Package{typearea}-Paket berechnet auch bei der Option +\OptionValueRef{\LabelBase}{DIV}{calc}% +\important{\OptionValueRef{\LabelBase}{DIV}{calc}} einen sehr großzügigen +Textbereich. Viele konservative Typografen werden feststellen, dass die +resultierende Zeilenlänge noch zu groß ist. Der berechnete +\DescRef{\LabelBase.option.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\textnote{Was ist besser?} 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\textnote{Zitat!} 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} +% +\EndIndexGroup + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: "scrguide-de.tex" +%%% coding: utf-8 +%%% ispell-local-dictionary: "de_DE" +%%% eval: (flyspell-mode 1) +%%% End: |