You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
158 lines
6.0 KiB
158 lines
6.0 KiB
% ======================================================================
|
|
% common-oddorevenpage.tex
|
|
% Copyright (c) Markus Kohm, 2001-2019
|
|
%
|
|
% This file is part of the LaTeX2e KOMA-Script bundle.
|
|
%
|
|
% This work may be distributed and/or modified under the conditions of
|
|
% the LaTeX Project Public License, version 1.3c of the license.
|
|
% The latest version of this license is in
|
|
% http://www.latex-project.org/lppl.txt
|
|
% and version 1.3c or later is part of all distributions of LaTeX
|
|
% version 2005/12/01 or later and of this work.
|
|
%
|
|
% This work has the LPPL maintenance status "author-maintained".
|
|
%
|
|
% The Current Maintainer and author of this work is Markus Kohm.
|
|
%
|
|
% This work consists of all files listed in manifest.txt.
|
|
% ----------------------------------------------------------------------
|
|
% common-oddorevenpage.tex
|
|
% Copyright (c) Markus Kohm, 2001-2019
|
|
%
|
|
% Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz,
|
|
% Version 1.3c, verteilt und/oder veraendert werden.
|
|
% Die neuste Version dieser Lizenz ist
|
|
% http://www.latex-project.org/lppl.txt
|
|
% und Version 1.3c ist Teil aller Verteilungen von LaTeX
|
|
% Version 2005/12/01 oder spaeter und dieses Werks.
|
|
%
|
|
% Dieses Werk hat den LPPL-Verwaltungs-Status "author-maintained"
|
|
% (allein durch den Autor verwaltet).
|
|
%
|
|
% Der Aktuelle Verwalter und Autor dieses Werkes ist Markus Kohm.
|
|
%
|
|
% Dieses Werk besteht aus den in manifest.txt aufgefuehrten Dateien.
|
|
% ======================================================================
|
|
%
|
|
% Paragraphs that are common for several chapters of the KOMA-Script guide
|
|
% Maintained by Markus Kohm
|
|
%
|
|
% ----------------------------------------------------------------------
|
|
%
|
|
% Absätze, die mehreren Kapiteln der KOMA-Script-Anleitung gemeinsam sind
|
|
% Verwaltet von Markus Kohm
|
|
%
|
|
% ======================================================================
|
|
|
|
\KOMAProvidesFile{common-oddorevenpage.tex}
|
|
[$Date: 2019-11-19 12:56:28 +0100 (Tue, 19 Nov 2019) $
|
|
KOMA-Script guide (common paragraphs)]
|
|
|
|
\section{Erkennung von rechten und linken Seiten}
|
|
\seclabel{oddOrEven}%
|
|
\BeginIndexGroup
|
|
\BeginIndex{}{Seiten>gerade}%
|
|
\BeginIndex{}{Seiten>ungerade}%
|
|
|
|
\IfThisCommonFirstRun{}{%
|
|
Es gilt sinngemäß, was in
|
|
\autoref{sec:\ThisCommonFirstLabelBase.oddOrEven} geschrieben
|
|
wurde. Falls Sie also \autoref{sec:\ThisCommonFirstLabelBase.oddOrEven}
|
|
bereits gelesen und verstanden haben, können Sie in
|
|
\autoref{sec:\ThisCommonLabelBase.oddOrEven.next} auf
|
|
\autopageref{sec:\ThisCommonLabelBase.oddOrEven.next} fortfahren.%
|
|
}
|
|
|
|
\IfThisCommonLabelBase{scrextend}{}{% Umbruchkorrektur
|
|
Bei doppelseitigen Dokumenten wird zwischen linken und rechten Seiten
|
|
unterschieden. Dabei hat eine linke Seite immer eine gerade Nummer und eine
|
|
rechte Seite immer eine ungerade Nummer. %
|
|
\IfThisCommonLabelBase{maincls}{%
|
|
Die Erkennung von rechten und linken Seiten ist damit gleichbedeutend mit
|
|
der Erkennung von Seiten mit ungerader oder gerader Nummer. In
|
|
\iffree{dieser Anleitung}{diesem Buch} ist vereinfachend auch von
|
|
ungeraden und geraden Seiten die Rede.%
|
|
|
|
% Umbruchkorrekturtext
|
|
\iftrue%
|
|
Bei einseitigen Dokumenten existiert die Unterscheidung zwischen linken
|
|
und rechten Seiten nicht. Dennoch gibt es natürlich auch bei einseitigen
|
|
Dokumenten sowohl Seiten mit gerader als auch Seiten mit ungerader
|
|
Nummer.%
|
|
\fi%
|
|
}{%
|
|
\IfThisCommonLabelBase{scrlttr2}{%
|
|
In der Regel werden Briefe einseitig gesetzt. Sollen Briefe mit
|
|
einseitigem Layout jedoch auf Vorder- und Rückseite gedruckt oder
|
|
ausnahmsweise tatsächlich doppelseitige Briefe erstellt werden, kann
|
|
unter Umständen das Wissen, ob man sich auf einer Vorder- oder einer
|
|
Rückseite befindet, nützlich sein.%
|
|
}{}%
|
|
}%
|
|
}
|
|
|
|
\begin{Declaration}
|
|
\Macro{Ifthispageodd}\Parameter{Dann-Teil}\Parameter{Sonst-Teil}
|
|
\end{Declaration}%
|
|
Will\IfThisCommonLabelBase{maincls}{%
|
|
\ChangedAt{v3.28}{\Class{scrbook}\and \Class{scrreprt}\and
|
|
\Class{scrartcl}}%
|
|
}{%
|
|
\IfThisCommonLabelBase{scrlttr2}{%
|
|
\ChangedAt{v3.28}{\Class{scrlttr2}}%
|
|
}{%
|
|
\IfThisCommonLabelBase{scrextend}{%
|
|
\ChangedAt{v3.28}{\Package{scrextend}}%
|
|
}{}%
|
|
}%
|
|
} %
|
|
man bei \KOMAScript{} feststellen, ob ein Text auf einer geraden oder einer
|
|
ungeraden Seite ausgegeben wird, so verwendet man die Anweisung
|
|
\Macro{Ifthispageodd}. Dabei wird das Argument \PName{Dann-Teil} nur dann
|
|
ausgeführt, wenn man sich aktuell auf einer ungeraden Seite
|
|
befindet. Anderenfalls kommt das Argument \PName{Sonst-Teil} zur Anwendung.
|
|
%
|
|
\IfThisCommonLabelBase{scrextend}{\iffalse}{\csname iftrue\endcsname}%
|
|
\begin{Example}
|
|
Angenommen, Sie wollen einfach nur ausgeben, ob ein Text auf einer geraden
|
|
oder ungeraden Seite ausgegeben wird. Sie könnten dann beispielsweise mit
|
|
der Eingabe{\phantomsection\xmpllabel{Ifthispageodd}}
|
|
\begin{lstcode}
|
|
Dies ist eine Seite mit
|
|
\Ifthispageodd{un}{}gerader Seitenzahl.
|
|
\end{lstcode}
|
|
\iffree{}{mit leerem \PName{Sonst-Teil} }% Umbruchkorrekturtext!!!
|
|
die Ausgabe
|
|
\begin{quote}
|
|
Dies ist eine Seite mit \Ifthispageodd{un}{}gerader Seitenzahl.
|
|
\end{quote}
|
|
erhalten.\iffree{ Beachten Sie, dass in diesem Beispiel das Argument
|
|
\PName{Sonst-Teil} leer geblieben ist.}{}% Umbruchkorrekturtext!!!
|
|
\end{Example}
|
|
\fi
|
|
|
|
Da die Anweisung \Macro{Ifthispageodd} mit einem Mechanismus arbeitet, der
|
|
einem Label und einer Referenz darauf sehr ähnlich ist, werden nach jeder
|
|
Textänderung mindestens zwei \LaTeX-Durchläufe benötigt. Erst dann ist die
|
|
Entscheidung korrekt. Im ersten Durchlauf wird für die
|
|
Entscheidung eine Heuristik verwendet.
|
|
|
|
Näheres zur Problematik der Erkennung von linken und rechten Seiten oder
|
|
geraden und ungeraden Seitennummern ist für Experten in
|
|
\autoref{sec:maincls-experts.addInfos},
|
|
\DescPageRef{maincls-experts.cmd.Ifthispageodd} zu finden.%
|
|
\IfThisCommonLabelBase{scrextend}{%
|
|
\ Ein Beispiel zur Verwendung von \Macro{Ifthispageodd} ist in
|
|
\autoref{sec:maincls.oddOrEven} auf \PageRefxmpl{maincls.Ifthispageodd}
|
|
angegeben.}{}%
|
|
\EndIndexGroup
|
|
%
|
|
\EndIndexGroup
|
|
|
|
|
|
%%% Local Variables:
|
|
%%% mode: latex
|
|
%%% coding: utf-8
|
|
%%% TeX-master: "../guide"
|
|
%%% End:
|
|
|