summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/tudscr/source/tudscr-title.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/tudscr/source/tudscr-title.dtx')
-rw-r--r--macros/latex/contrib/tudscr/source/tudscr-title.dtx1604
1 files changed, 1604 insertions, 0 deletions
diff --git a/macros/latex/contrib/tudscr/source/tudscr-title.dtx b/macros/latex/contrib/tudscr/source/tudscr-title.dtx
new file mode 100644
index 0000000000..b6ec69ff30
--- /dev/null
+++ b/macros/latex/contrib/tudscr/source/tudscr-title.dtx
@@ -0,0 +1,1604 @@
+% \CheckSum{1406}
+% \iffalse meta-comment
+%
+% TUD-Script -- Corporate Design of Technische Universität Dresden
+% ----------------------------------------------------------------------------
+%
+% Copyright (C) Falk Hanisch <hanisch.latex@outlook.com>, 2012-2019
+%
+% ----------------------------------------------------------------------------
+%
+% 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 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 Falk Hanisch.
+%
+% ----------------------------------------------------------------------------
+%
+% Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz
+% in der Version 1.3c, verteilt und/oder verändert werden. Die aktuelle
+% Version dieser Lizenz ist http://www.latex-project.org/lppl.txt und
+% Version 1.3c oder später ist Teil aller Verteilungen von LaTeX 2005/12/01
+% oder später und dieses Werks. Dieses Werk hat den LPPL-Verwaltungs-Status
+% "author-maintained", wird somit allein durch den Autor verwaltet. Der
+% aktuelle Verwalter und Autor dieses Werkes ist Falk Hanisch.
+%
+% ----------------------------------------------------------------------------
+%
+% \fi
+%
+% \CharacterTable
+% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+% Digits \0\1\2\3\4\5\6\7\8\9
+% Exclamation \! Double quote \" Hash (number) \#
+% Dollar \$ Percent \% Ampersand \&
+% Acute accent \' Left paren \( Right paren \)
+% Asterisk \* Plus \+ Comma \,
+% Minus \- Point \. Solidus \/
+% Colon \: Semicolon \; Less than \<
+% Equals \= Greater than \> Question mark \?
+% Commercial at \@ Left bracket \[ Backslash \\
+% Right bracket \] Circumflex \^ Underscore \_
+% Grave accent \` Left brace \{ Vertical bar \|
+% Right brace \} Tilde \~}
+%
+% \iffalse
+%%% From File: tudscr-title.dtx
+%<*dtx>
+% \fi
+%
+\ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi
+\ProvidesFile{tudscr-title.dtx}[2019/08/20 v2.06c TUD-Script\space%
+ (title)%
+]
+%
+% \iffalse
+\documentclass[english,ngerman,xindy]{tudscrdoc}
+\ifpdftex{
+ \usepackage[T1]{fontenc}
+ \usepackage[ngerman=ngerman-x-latest]{hyphsubst}
+}{
+ \usepackage{fontspec}
+}
+\usepackage{babel}
+\usepackage{tudscrfonts}
+\KOMAoptions{parskip=half-}
+\usepackage{bookmark}
+\usepackage[babel]{microtype}
+
+\CodelineIndex
+\RecordChanges
+\GetFileInfo{tudscr-title.dtx}
+\title{\file{\filename}}
+\author{Falk Hanisch\qquad\expandafter\mailto\expandafter{\tudscrmail}}
+\date{\fileversion\nobreakspace(\filedate)}
+
+\begin{document}
+ \maketitle
+ \tableofcontents
+ \DocInput{\filename}
+\end{document}
+%</dtx>
+% \fi
+%
+% \selectlanguage{ngerman}
+%
+% \changes{v2.02}{2014/06/23}{Paket \pkg{titlepage} nicht weiter unterstützt}^^A
+% \changes{v2.05}{2015/07/13}{Titel für Poster}^^A
+%
+% \section{Titelei für die \TUDScript-Klassen}
+%
+% Zusätzlich zu den \KOMAScript-Varianten werde für die \TUDScript-Klassen
+% spezielle, im \TUDCD gehaltene Ausführungen von Titelseite und Titelkopf
+% bereitgestellt. Zusätzlich gibt es auch eine Umschlagsseite (Cover), welche
+% in beiden Gestaltungsvarianten genutzt werden kann.
+%
+% Für Titelseite und Titelkopf werden durch \TUDScript eine monochrome Version,
+% eine Version mit leichtem Farbeinsatz und eine durchweg farbige Version im
+% \TUDCD bereitgestellt. Dabei wird auch das Aussehen und die Position des
+% Titels analog zu den Überschriften auf Teile- und Kapitelseiten festgelegt.
+%
+% \StopEventually{\PrintIndex\PrintChanges\PrintToDos}
+%
+% \iffalse
+%<*class&body>
+% \fi
+%
+% \subsection{Optionen und Schriftelemente für die Titelei}
+%
+% \iffalse
+%</class&body>
+%<*class&option>
+%<*book|report|article>
+% \fi
+%
+% \begin{option}{subjectthesis}
+% \begin{macro}{\if@tud@subjectthesis}
+% Die alte \cls{tudbook}-Klasse hat den Typ der Arbeit in der Betreffzeile des
+% Titels gesetzt. Um dieses Verhalten nachbilden zu können, wird diese Option
+% zur Verfügung gestellt.
+% \begin{macrocode}
+\newif\if@tud@subjectthesis
+\TUD@key{subjectthesis}[true]{%
+ \TUD@set@ifkey{subjectthesis}{@tud@subjectthesis}{#1}%
+}
+% \end{macrocode}
+% \end{macro}^^A \if@tud@subjectthesis
+% \end{option}^^A subjectthesis
+% \begin{option}{titlesignature}
+% \changes{v2.06}{2018/08/21}{neu}^^A
+% \begin{macro}{\if@tud@titlesignature}
+% \changes{v2.06}{2018/08/21}{neu}^^A
+% Von einigen Fakultäten wird eine Unterschrift der Autoren auf der Titelseite
+% verlangt. Diese Option dient zum Aktivieren dieser Unterschriftenzeile am
+% Ende der Titelseite.
+% \begin{macrocode}
+\newif\if@tud@titlesignature
+\TUD@key{titlesignature}[true]{%
+ \TUD@set@ifkey{titlesignature}{@tud@titlesignature}{#1}%
+}
+% \end{macrocode}
+% \end{macro}^^A \if@tud@titlesignature
+% \end{option}^^A titlesignature
+%
+% \iffalse
+%</book|report|article>
+%<*poster>
+% \fi
+%
+% \begin{option}{titlepage}
+% \begin{macro}{\tud@titlepage@deactivate}
+% Für Poster gibt es keine separate Titelseite sondern nur einen Titelkopf.
+% Falls die falsche Einstellung gewählt ist, wird diese deaktiviert und eine
+% Warnung ausgegeben.
+% \begin{macrocode}
+\DefineFamilyMember{KOMA}
+\DefineFamilyKey{KOMA}{titlepage}[true]{%
+ \TUD@set@numkey{titlepage}{@tempa}{\TUD@bool@numkey,{firstiscover}{2}}{#1}%
+ \ifx\FamilyKeyState\FamilyKeyStateProcessed%
+ \AtEndOfFamilyOptions{\tud@titlepage@deactivate}%
+ \fi%
+}
+\newcommand*\tud@titlepage@deactivate{%
+ \if@titlepage%
+ \KOMAoptions{titlepage=false}%
+ \ClassWarning{\TUD@Class@Name}{%
+ The class `\TUD@Class@Name' can't be used with\MessageBreak%
+ activated titlepage option. It will be enforced to\MessageBreak%
+ `titlepage=false'%
+ }%
+ \renewcommand*\tud@titlepage@deactivate{%
+ \if@titlepage\KOMAoptions{titlepage=false}\fi%
+ }%
+ \fi%
+}
+\AtBeginDocument{\tud@titlepage@deactivate}
+% \end{macrocode}
+% \end{macro}^^A \tud@titlepage@deactivate
+% \end{option}^^A titlepage
+%
+% \iffalse
+%</poster>
+%</class&option>
+%<*class&body>
+% \fi
+%
+% \begin{KOMAfont}{thesis}
+% \begin{KOMAfont}{titlepage}
+% \changes{v2.01}{2014/04/24}{Explizite Wahl der genutzten Schriftstärke}^^A
+% \changes{v2.02}{2014/08/29}{Anpassungen für \pkg{fontspec}}^^A
+% Diese Font-Elemente werden auf der Titelseite verwendet. \opt{thesis}, um den
+% Typ der Arbeit und ggf. den zu erlangenden akademischen Grad zu setzen.
+% Allerdings kommt Letzteres nur zum Tragen, wenn die Option \opt{subjectthesis}
+% deaktiviert ist. Es wird die gleiche Schrift wie für den Titel verwendet,
+% allerdings etwas kleiner. \opt{titlepage} für alle Zusatzinformationen wie
+% Autor, Datum etc.
+% \begin{macrocode}
+%<*book|report|article>
+\newkomafont{thesis}{%
+ \usekomafont{title}%
+ \tud@thesis@fontsize%
+}
+%</book|report|article>
+\newkomafont{titlepage}{%
+ \raggedtitle%
+ \sffamily%
+ \mdseries%
+ \usesizeofkomafont{subsection}%
+ \tud@color{\tud@title@fontcolor}%
+}
+% \end{macrocode}
+% \end{KOMAfont}^^A titlepage
+% \end{KOMAfont}^^A thesis
+%
+% \subsection{Titelseite und Titelkopf}
+% \subsubsection{Parameter für Titelseite und Titelkopf}
+%
+% \begin{macro}{\thanks}
+% \begin{macro}{\footnotemark}
+% Die Befehle \cs{thanks} und \cs{footnotemark} werden mit \cs{robustify}
+% behandelt, um die Makros vor dem Expandieren zu schützen. Dies ist z.\,B. für
+% \cs{tud@multiple@split} aber auch für weitere Felder auf dem Titel nötig.
+% \begin{macrocode}
+\robustify{\thanks}
+\robustify{\footnotemark}
+% \end{macrocode}
+% \end{macro}^^A \footnotemark
+% \end{macro}^^A \thanks
+% \begin{macro}{\tud@maketitle}
+% \changes{v2.01a}{2014/06/03}{Fehler bei Nutzung von \cs{subtitle} behoben}^^A
+% \changes{v2.02}{2014/06/23}{\val{firstiscover} wird als Wert für die Option
+% \opt{titlepage} unterstützt}^^A
+% \changes{v2.02}{2014/07/19}{Im zweispaltigen Satz wird für den Titelkopf
+% \cs{tud@title@twocolumn} verwendet}^^A
+% \changes{v2.02}{2014/09/05}{Titelseite mit \cs{tud@maketitle@page}}^^A
+% \changes{v2.06}{2018/08/16}{Unterstützung von \cs{frontispiece}}^^A
+% \changes{v2.06}{2018/08/21}{\cs{emailaddress} für Autorangaben}^^A
+% \changes{v2.06}{2018/08/21}{Unterschriftenfeld für Autoren}^^A
+% \begin{macro}{\tud@title@pagenumber}
+% \changes{v2.02}{2014/06/23}{neu}^^A
+% \begin{parameter}{cdtitle}
+% \changes{v2.03}{2015/01/12}{neu}^^A
+% \begin{parameter}{cd}
+% \changes{v2.03}{2015/01/12}{neu}^^A
+% \begin{parameter}{pagenumber}
+% \changes{v2.02}{2014/09/05}{neu}^^A
+% Bei der entsprechend gewählten Layoutoption, wird eine neue Titelseite im \CD
+% gesetzt. Damit auf das Standardverhalten von \KOMAScript{} zurückgestellt
+% werden kann, wird der ursprüngliche \cs{maketitle}-Befehl bei der Abarbeitung
+% der Layoutoptionen gesichert (siehe \cs{tud@cd@process}) und kann ggf.
+% wiederhergestellt bzw. mit \cs{tud@cs@use} verwendet werden. Ist das Layout
+% des \CDs gefordert wird entweder mit \cs{tud@maketitle@page} eine Titelseite
+% gesetzt~-- wobei sich diese in ihrer Struktur am originalen \cs{maketitle}
+% orientiert~-- oder das Titelkopflayout wird angepasst.
+% \begin{macrocode}
+\newcommand*\tud@title@pagenumber{}
+\let\tud@title@pagenumber\relax
+\newcommand*\tud@maketitle[1][]{%
+ \begingroup%
+ \cleardoublepage%
+% \end{macrocode}
+% Das optionale Argument wird für das Setzen der Parameter verwendet.
+% \begin{macrocode}
+ \TUD@parameter@set{title}{#1}%
+% \end{macrocode}
+% Ist das \CD für den Titel deaktiviert, wird mit \cs{tud@cs@use} der originale
+% \KOMAScript-Befehl \cs{maketitle} aufgerufen. Wird die erste Seite als Cover
+% gesetzt, werden mit \cs{tud@cover@fixmargins} ggf. die Ränder an das gegebene
+% Layout von \pkg{geometry} angepasst.
+% \begin{macrocode}
+ \ifcase\tud@cd@title@num\relax% false
+ \if@titlepageiscoverpage%
+ \tud@cover@fixmargins%
+ \fi%
+ \ifx\tud@title@pagenumber\relax%
+ \tud@cs@use{maketitle}%
+ \else%
+ \tud@cs@use{maketitle}[\tud@title@pagenumber]%
+ \fi%
+ \tud@if@tudheadings{\currentpagestyle}{%
+ \ifstr{\titlepagestyle}{empty}{\thispagestyle{empty.tudheadings}}{}%
+ }{}%
+% \end{macrocode}
+% Für die \TUDScript-Klassen gibt es für doe Titleseite sowie den Titelkopf
+% separate Befehle. Sollte keine explizite Auswahl der Schriften erfolgt sein,
+% so werden die \CD-Schriften aktiviert.
+% \begin{macrocode}
+ \else% !false
+ \if@tud@parameter@ps@font@set\else%
+ \if@tud@cdfont@active\else%
+ \if@tud@cdfont@heavy%
+ \TUDoptions{cdfont=heavy}%
+ \else%
+ \TUDoptions{cdfont=true}%
+ \fi%
+ \fi%
+ \fi%
+%<*book|report|article>
+ \if@titlepage%
+ \tud@maketitle@page%
+ \else%
+%</book|report|article>
+ \tud@maketitle@inpage%
+%<*book|report|article>
+ \fi%
+%</book|report|article>
+ \fi%
+ \endgroup%
+ \setcounter{footnote}{0}%
+ \global\let\and\relax%
+}
+% \end{macrocode}
+% Die einzelnen Parameter dienen zur Einstellung der Titelseite und entsprechen
+% in ihrem Verhalten den gleichnamigen Klassenoptionen.
+% \begin{macrocode}
+\TUD@parameter@family{title}{%
+%<*book|report|article>
+ \TUD@parameter@def{titlepage}[true]{\KOMAoption{titlepage}{#1}}%
+ \TUD@parameter@def{titlesignature}[true]{\TUDoption{titlesignature}{#1}}%
+%</book|report|article>
+ \TUD@parameter@def{pagenumber}{\def\tud@title@pagenumber{#1}}%
+ \TUD@parameter@def{cdtitle}[true]{\TUDoption{cdtitle}{#1}}%
+ \TUD@parameter@let{cd}{cdtitle}%
+ \TUD@parameter@def{cdgeometry}[true]{\TUDoption{cdgeometry}{#1}}%
+% \end{macrocode}
+% Mit \cs{TUD@parameter@ps@def} werden alle verfügbaren Parameter für
+% die Kopf- und Fußzeilen definiert.
+% \begin{macrocode}
+ \TUD@parameter@ps@def{#1}%
+% \end{macrocode}
+% Für den Fall, dass ein Wert nicht in der Schlüssel"=Wert"=Notation angegeben
+% wurde, wird versucht, das gegebene Argument als Seitenzahl zu verwenden.
+% \begin{macrocode}
+ \TUD@parameter@handler@value{pagenumber}%
+}
+% \end{macrocode}
+% \end{parameter}^^A pagenumber
+% \end{parameter}^^A cd
+% \end{parameter}^^A cdtitle
+% \end{macro}^^A \tud@title@pagenumber
+% \end{macro}^^A \tud@maketitle
+% \begin{macro}{\maketitle}
+% \begin{environment}{titlepage}
+% Der originale Befehl wird gesichert und danach überschrieben.
+% \begin{macrocode}
+\tud@cs@store{maketitle}
+\let\maketitle\tud@maketitle
+% \end{macrocode}
+% Abschließend wird dafür Sorge getragen, dass bei einem aktivierten Seitenstil
+% aus der \pgs{tudheadings}-Reihe der Titel ebenfalls in diesem gesetzt wird,
+% auch wenn das Layout des \CDs selber nicht aktiv ist.
+% \begin{macrocode}
+\patchcmd{\titlepage}{\thispagestyle{empty}}{%
+ \tud@if@tudheadings{\currentpagestyle}{%
+ \thispagestyle{empty.tudheadings}%
+ }{%
+ \thispagestyle{empty}%
+ }%
+}{}{\tud@patch@wrn{titlepage}}
+% \end{macrocode}
+% \end{environment}^^A titlepage
+% \end{macro}^^A \maketitle
+%
+% \iffalse
+%<*book|report|article>
+% \fi
+%
+% \subsubsection{Die Definition der Titelseite}
+%
+% \begin{macro}{\tud@maketitle@page}
+% \changes{v2.02}{2014/09/05}{neu}^^A
+% \begin{macro}{\tud@titleback}
+% Bei der entsprechend gewählten Layoutoption, wird eine neue Titelseite im \CD
+% gesetzt. Damit auf das Standardverhalten von \KOMAScript{} zurückgestellt
+% werden kann, wird der standardmäßige \cs{maketitle}-Befehl nur wenn notwendig
+% überschrieben (siehe \cs{tud@cd@process}) und kann ggf. wiederhergestellt
+% werden. Der Befehl selbst orientiert sich dabei in seiner Struktur an dem
+% originalen \cs{maketitle}. Für die ggf. farbige Ausgabe der Titelrückseite
+% wird das Hilfmakro \cs{tud@titleback} definiert. Eine Seitenzahl für den
+% Titel kann mit \cs{tud@title@pagenumber} angegeben werden.
+% \begin{macrocode}
+\newcommand*\tud@titleback{}
+\newcommand*\tud@maketitle@page{%
+% \end{macrocode}
+% Es wird durch die \KOMAScript-Option \opt{titlepage} unterschieden, ob eine
+% Titelseite oder aber ein Titelkopf gesetzt werden soll. In Abhängigkeit davon
+% werden Farben für die Schriften und den Seitenhintergrund festgelegt. Hierfür
+% wird die entsprechende Layoutoption ausgewertet und entsprechend dieser die
+% Werte belegt.
+% \begin{macrocode}
+ \renewcommand*\tud@title@fontcolor{}%
+ \ifcase\tud@cd@title@num\relax\or\or% litecolor
+ \renewcommand*\tud@title@fontcolor{HKS41}%
+ \or% barcolor
+ \renewcommand*\tud@title@fontcolor{HKS41}%
+ \or% bicolor
+ \renewcommand*\tud@title@fontcolor{HKS41}%
+ \or% color
+ \renewcommand*\tud@title@fontcolor{HKS41!30}%
+ \or% full
+ \renewcommand*\tud@title@fontcolor{HKS41!30}%
+ \fi%
+% \end{macrocode}
+% Die Titelseite mit unterschiedlich Varianten der farbigen Ausprägung.
+% \begin{macrocode}
+ \begin{titlepage}%
+ \tud@cd@specialpage@set{title}%
+% \end{macrocode}
+% Dieser Teil entspricht der Standarddefinition. Für das Setzen des Covers ist
+% ein Großteil der Einstellungen irrelevant und wird übersrpungen.
+% \begin{macrocode}
+ \ifx\tud@title@pagenumber\relax\else%
+ \setcounter{page}{\tud@title@pagenumber}%
+ \fi%
+% \end{macrocode}
+% Dieser Teil entspricht der Standarddefinition. Für das Setzen des Covers ist
+% ein Großteil der Einstellungen irrelevant und wird übersrpungen.
+% \begin{macrocode}
+ \if@tud@coverpage\else%
+ \addtokomafont{footnote}{\sffamily}%
+ \let\footnotesize\small%
+ \let\footnoterule\relax%
+ \let\footnote\thanks%
+ \renewcommand*\thefootnote{\@fnsymbol\c@footnote}%
+ \let\@oldmakefnmark\@makefnmark%
+ \renewcommand*\@makefnmark{\rlap\@oldmakefnmark}%
+% \end{macrocode}
+% Das Paket \pkg{hyperref} definiert im Normalfall die Fußnoten so um, dass es
+% anklickbare Links erzeugt. Damit dies auf der Titelseite zu ungewollten
+% Effekten führt, werden die Hyperlinks hier deaktiviert. Leider macht dies
+% \pkg{hyperref} direkt beim Laden. Da die \TUDScript-Klassen aber nun mal zwei
+% unterschiedliche Titel bereitstellen und die Möglichkeit bestehen soll, dass
+% Layout per später Optionswahl noch zu ändern, muss der interne Code aus
+% \pkg{hyperref} hier noch einmal für den TUD-Titel aufgerufen werden.
+% \begin{macrocode}
+ \tud@x@hyperref@realfootnotes%
+% \end{macrocode}
+% Die Option für eine Umschlagseite \opt{titlepage}|=|\val{firstiscover} wird
+% im Gegensatz zu den \KOMAScript-Klassen nur für einen optionalen Schmutztitel
+% \cs{extratitle} und nicht für die eigentliche Titelseite unterstützt. Für
+% dieses Unterfangen ist bei \TUDScript der Befehl \cs{makecover} mit den
+% dazugehörigen Parametern zu nutzen.
+% \begin{macrocode}
+ \ifx\@extratitle\@empty%
+ \if@titlepageiscoverpage%
+ \ClassWarning{\TUD@Class@Name}{%
+ Using option `titlepage=firstiscover' is only\MessageBreak%
+ possible with an extra title. Alternatively you can\MessageBreak%
+ create a cover with `\string\makecover'%
+ }%
+ \@titlepageiscoverpagefalse%
+ \fi%
+ \ifx\@frontispiece\@empty\else%
+ \if@twoside\null\fi%
+ \fi%
+ \else%
+% \end{macrocode}
+% Der Teil ist aus den \KOMAScript-Klassen übernommen, damit werden die
+% Seitenränder für ein Cover festgelegt.
+% \begin{macrocode}
+ \if@titlepageiscoverpage%
+ \edef\titlepage@restore{%
+ \noexpand\endgroup%
+ \noexpand\global\noexpand\@colht\the\@colht%
+ \noexpand\global\noexpand\@colroom\the\@colroom%
+ \noexpand\global\vsize\the\vsize%
+ \noexpand\global\noexpand\@titlepageiscoverpagefalse%
+ \noexpand\let\noexpand\titlepage@restore\noexpand\relax%
+ }%
+ \begingroup%
+ \tud@cover@setmargins%
+ \else%
+ \let\titlepage@restore\relax%
+ \fi%
+ \noindent\@extratitle%
+ \fi%
+ \next@tpage%
+ \ifx\@frontispiece\@empty\else%
+ \noindent\@frontispiece%
+ \fi%
+ \next@tdpage%
+ \fi%
+% \end{macrocode}
+% Das ganze Layout wird vertikal so verschoben, dass der Titel auf der gleichen
+% Höhe steht wie die Überschriften auf Teil- und Kapitelseiten.
+% \begin{macrocode}
+ \tud@cd@headstartvskip%
+ \TUD@deprecated@lengthcs{pageheadingsvskip}%
+ \vspace*{\tud@dim@pageheadingsvskip}%
+ \tud@cd@vphantom%
+ \setparsizes{\z@}{\z@}{\z@\@plus1fil}\par@updaterelative%
+% \end{macrocode}
+% Damit die Farbeinstellungen der Schriften lokal begrenzt bleiben, wird dieser
+% Teil des Titels in einer Gruppe gesetzt.
+% \begin{macrocode}
+ {\usekomafont{titlepage}{%
+% \end{macrocode}
+% Zunächst der Kopf des Titels.
+% \begin{macrocode}
+ \tud@maketitle@head%
+% \end{macrocode}
+% Nachdem bereits \cs{@titlehead} und \cs{@subject} gesetzt worden, folgen nun
+% die weiteren Felder wie vom \CD~-- mehr oder weniger~-- vorgegeben auf der
+% Titelseite in unterschiedlichen Größen und Schriftstärken.
+% \begin{macrocode}
+ {\usekomafont{title}{\tud@title@format{\@title}\par}}%
+% \end{macrocode}
+% Der Untertitel wird ggf. in der gleichen Schrift gesetzt wie der Titel,
+% allerdings etwas kleiner.
+% \begin{macrocode}
+ \ifx\@subtitle\@empty\else%
+ {\usekomafont{partnumber}{\nobreak\tud@sec@strut}}%
+ {\usekomafont{subtitle}{\tud@title@format{\@subtitle}\par}}%
+ \fi%
+ \vskip 2\bigskipamount%
+% \end{macrocode}
+% Ausgabe eines Autors oder mehrerer Autoren ggf. mit Zusatzinformationen.
+% \begin{macrocode}
+ \let\tud@split@author@do\tud@split@author@title%
+ \tud@multiple@split{@author}\par%
+ \vskip 2ex\@plus1ex\@minus1ex%
+% \end{macrocode}
+% Die Titelseite unterscheidet sich ein wenig, abhängig davon ob eine eine
+% Abschlussarbeit gesetzt wird oder nicht. Falls dies nicht der Fall ist, dann
+% wird das angegebene bzw. das heutige Datum und ggf. die Ergänzung ausgegeben.
+% \begin{macrocode}
+ \ifx\@thesis\@empty%
+ \if@tud@coverpage\else%
+ \ifx\@date\@empty\else%
+ \vskip 2ex\@plus.1fill%
+ {\usekomafont{date}{\tud@date@print\par}}%
+ \fi%
+ \fi%
+ \vskip 2ex\@plus.25fill%
+% \end{macrocode}
+% Ist eine Abschlussarbeit angegeben, so wird zusätzlich unterschieden, ob
+% diese bereits~-- gesteuert durch die Option \opt{subjectthesis}~-- in der
+% Betreffzeile angegeben wurde oder aber separat und in deutlicherer Form auf
+% dem Titelblatt ausgegeben werden soll. Sowohl Arbeitstyp als auf akademischer
+% Grad werden dabei im Verhältnis 1:2 zwischen allen weiteren Angaben auf dem
+% Titel vertikal ausgerichtet.
+% \begin{macrocode}
+ \else%
+ \vskip 2ex\@plus.25fill%
+ \if@tud@subjectthesis\else%
+ {\usekomafont{thesis}{\tud@title@format{\@thesis}\par}}%
+ \vskip 2ex\@plus1ex\@minus1ex%
+ \fi%
+% \end{macrocode}
+% Ebenfalls wird in Abhängigkeit von der Option \opt{subjectthesis} der
+% angestrebte akademische Grad ausgegeben.
+% \begin{macrocode}
+ \if@tud@coverpage\else%
+ \ifx\@graduation\@empty\else%
+ \def\@tempc{%
+ \@graduation%
+ \ifx\@graduationabbreviation\@empty\else%
+ \nobreakspace\@graduationabbreviation%
+ \fi%
+ }%
+ {\usekomafont{titlepage}{\graduationtext\par}}%
+ \vskip 2.5ex\@plus1ex\@minus1ex%
+ {\usekomafont{thesis}{\tud@title@format{\@tempc}\par}}%
+ \vskip 3ex\@plus1ex\@minus1ex%
+ \fi%
+ \fi%
+ \vskip 2ex\@plus.5fill%
+ \fi%
+% \end{macrocode}
+% \ToDo{Befehl zum Angeben optionaler Inhalte, bspw. ein Bild}[v2.07]
+% Wenn Betreuer angegeben wurden, dann werden diese auf dem Titel ausgeben. Um
+% diese Titelseite auch für Dissertationen verwenden zu können, ist ein Feld
+% für Gutachter vorgesehen. Außerdem wird für Promotionsschriften ein Feld für
+% Fachreferenten bereitgehalten. Das Format der Ausgabe ist dabei identisch.
+% Darauf folgend wird der betreuende Hochschullehrer ausgegeben.
+% \begin{macrocode}
+ \if@tud@coverpage\else%
+ \tud@title@names{referee}%
+ \tud@title@names{advisor}%
+ \tud@title@names{supervisor}%
+ \tud@title@names{professor}%
+% \end{macrocode}
+% Bei einer Abschlussarbeit gehört normalerweise auch ein Abgabedatum auf den
+% Titel. Sollte keines angegeben sein, so erscheint eine Warnung. Es wird an
+% Stelle dessen das angegebene Enddatum oder aber das heutige Datum verwendet.
+% Durch das Paket \pkg{tudscrsupervisor} wird zusätzlich das Feld \cs{@duedate}
+% definiert, welches hier ggf. für auf ein nutzbares Datum geprüft wird.
+% \begin{macrocode}
+ \ifx\@thesis\@empty\else%
+ \tud@date@check%
+ \ifx\@date\@empty\else%
+ \vskip 2ex\@plus1ex\@minus1ex%
+ \ifxblank{\datetext}{}{\datetext\tud@title@delimiter}%
+ {\usekomafont{date}{\tud@date@print\par}}%
+% \end{macrocode}
+% Zusätzlich kann noch ein Datum der mündlichen Verteidigung angegeben werden.
+% \begin{macrocode}
+ \ifx\@defensedate\@empty\else%
+ \ifxblank{\defensedatetext}{}{%
+ \defensedatetext\tud@title@delimiter%
+ }%
+ {\usekomafont{date}{\@defensedate\par}}%
+ \fi%
+ \fi%
+ \fi%
+% \end{macrocode}
+% Hier erfolgt die Ausgabe der Unterschriftenzeile, falls gewünscht. Ist nur
+% ein Autor angegeben, wird die Box für die Unterschrift rechtsbündig erzeugt.
+% \begin{macrocode}
+ \if@tud@titlesignature%
+ \let\tud@split@@author@do\tud@split@author@signature%
+ \vskip\tud@len@signatureskip\noindent%
+ \tud@ifin@and{\@@author}{}{\hfill}%
+ \tud@multiple@split{@@author}%
+ \fi%
+ \fi%
+% \end{macrocode}
+% Zu guter Letzt kann das Standard-Verlagsfeld befüllt werden.
+% \begin{macrocode}
+ \ifx\@publishers\@empty\else%
+ \vskip 2ex\@plus.25fill%
+ {\usekomafont{publishers}{\@publishers\par}}%
+ \vskip\z@\@plus.25fill%
+ \fi%
+ }}%
+% \end{macrocode}
+% Die Rückseite des Titels wird~-- wie bei \KOMAScript~-- bloß bei zweiseitigem
+% Satz ausgegeben. Für diese Klassen wird aufgrund der möglicherweise farbigen
+% Rückseite das Hilfsmakro \cs{tud@titleback} benötigt.
+% \begin{macrocode}
+ \let\tud@titleback\relax%
+ \if@twoside%
+ \@tempswatrue%
+ \ifx\@uppertitleback\@empty\ifx\@lowertitleback\@empty%
+ \@tempswafalse%
+ \fi\fi%
+ \if@tempswa%
+ \gdef\tud@titleback{%
+ \next@tpage%
+ \begin{minipage}[t]{\textwidth}%
+ \@uppertitleback%
+ \end{minipage}\par%
+ \vfill%
+ \begin{minipage}[b]{\textwidth}%
+ \@lowertitleback%
+ \end{minipage}\par%
+ \@thanks\let\@thanks\@empty%
+ }%
+ \fi%
+ \fi%
+% \end{macrocode}
+% Es werden Schriftart, die Schriftstärke, sowie die Farbe der Seite und des
+% Kopfes und die Linienstärke des Querbalkens und die \DDC-Logos aus den
+% Einstellungen übernommen.
+% \begin{macrocode}
+ \def\@tempa{%
+ \renewcommand*\tud@pagecolor{}%
+ \ifcase\tud@cd@title@num\relax\or% true
+ \tud@locked@num@preset{tud@head@bar@num}{0}%
+ \or% litecolor
+ \tud@locked@num@set{tud@head@bar@num}{1}%
+ \or% barcolor
+ \tud@locked@num@set{tud@head@bar@num}{2}%
+ \or% bicolor
+ \tud@locked@num@set{tud@head@bar@num}{3}%
+ \or% color
+ \renewcommand*\tud@pagecolor{HKS41}%
+ \tud@locked@num@set{tud@head@bar@num}{1}%
+ \or% full
+ \renewcommand*\tud@pagecolor{HKS41}%
+ \tud@locked@num@set{tud@head@bar@num}{3}%
+ \fi%
+ \tud@color{\tud@title@fontcolor}%
+ \thispagestyle{empty.tudheadings}%
+% \end{macrocode}
+% Im Kompatibilitätsmodus für die Version~v2.02 wird im Zweifelsfall die Seite
+% für den Fuß mit \DDC-Logo vergrößert.
+% \begin{macrocode}
+ \tud@if@v@lower{2.03}{\tud@ddc@enlargepage}{}%
+ }%
+% \end{macrocode}
+% Bei der Ausgabe des Covers werden lediglich die Farb- und Schriftdefinitionen
+% benötigt, die Seite kann danach beendet werden.
+% \begin{macrocode}
+ \if@tud@coverpage%
+ \begingroup%
+ \@tempa%
+ \cleardoubleemptypage%
+ \endgroup%
+ \else%
+% \end{macrocode}
+% Beim Titel selbst muss noch ausgewertet werden, wie die Rückseite zu
+% gestalten ist. Sollte als Klassenoption das strikte Beginnen aller Teile
+% oder Kapitel auf einer rechten Seite aktiviert sein (\opt{open}|=|\val{right})
+% und zusätzlich bei farbigem \CD auch die Rückseiten farbig geleert werden, so
+% erfolgt dies auch für die Titelseite. Die Klasse \cls{tudscrartcl} setzt
+% lediglich die Titelseite farbig, die Rückseite niemals.
+% \begin{macrocode}
+%<*book|report>
+ \tud@cleardoublespecialpage[\tud@titleback]{%
+%</book|report>
+%<*article>
+ \begingroup%
+%</article>
+ \@tempa%
+ \begingroup%
+ \let\thispagestyle\@gobble%
+ \next@tpage%
+ \endgroup%
+%<*article>
+ \endgroup%
+ \tud@titleback%
+%</article>
+%<*book|report>
+ }%
+%</book|report>
+% \end{macrocode}
+% Die Danksagung ist identisch zu \KOMAScript.
+% \begin{macrocode}
+ \ifx\@dedication\@empty\else%
+ \next@tdpage\null\vfill%
+ {\centering\usekomafont{dedication}{\@dedication\par}}%
+ \vskip\z@\@plus3fill%
+ \@thanks\let\@thanks\@empty%
+ \cleardoubleemptypage%
+ \fi%
+ \fi%
+ \end{titlepage}%
+}
+% \end{macrocode}
+% \end{macro}^^A \tud@titleback
+% \end{macro}^^A \tud@maketitle@page
+%
+% \iffalse
+%</book|report|article>
+% \fi
+%
+% \subsubsection{Die Definition des Titelkopfes}
+%
+% \begin{macro}{\tud@maketitle@inpage}
+% \changes{v2.05}{2015/07/13}{neu}^^A
+% \begin{macro}{\tud@maketitle@@inpage}
+% \changes{v2.05}{2015/07/13}{neu}^^A
+% Das sind die internen Makros für einen Titelkopf (\opt{titlepage}|=|\val{no}),
+% welche sich stark an den orginalen \KOMAScript-Befehlen orientieren.
+% \begin{macrocode}
+\newcommand*\tud@maketitle@inpage{%
+ \renewcommand*\tud@title@fontcolor{}%
+ \ifcase\tud@cd@title@num\relax\or\else% *color
+ \ifstr{\tud@pagecolor}{HKS41}{}{\renewcommand*\tud@title@fontcolor{HKS41}}%
+ \fi%
+ \par%
+ \ifx\tud@title@pagenumber\relax\else%
+ \ifnum\tud@title@pagenumber=\@ne\relax\else%
+ \ClassWarning{\TUD@Class@Name}{%
+ Optional argument of \string\maketitle\space ignored\MessageBreak%
+ at notitlepage-mode%
+ }%
+ \fi%
+ \fi%
+% \end{macrocode}
+% Dieser Teil ist mehr oder weniger funktional identisch zu \KOMAScript.
+% \begin{macrocode}
+ \begingroup%
+ \let\titlepage@restore\relax%
+ \renewcommand*\thefootnote{\@fnsymbol\c@footnote}%
+ \let\@oldmakefnmark\@makefnmark%
+ \renewcommand*\@makefnmark{\rlap\@oldmakefnmark}%
+ \next@tdpage%
+% \end{macrocode}
+% Hier wird überprüft, ob das Dokument zweispaltig gesetzt wird und zusätzlich
+% das Paket \pkg{multicol} geladen wurde. Ist letzteres nicht der Fall, wird
+% der Titel einspaltig ausgegeben und anschließend der im Zweispaltensatz
+% begonnen.
+% \begin{macrocode}
+ \def\tud@res@a##1{##1}%
+ \if@twocolumn\ifnum\col@number>\@ne\relax%
+ \def\tud@res@a##1{\twocolumn[{##1}]}%
+ \fi\fi%
+ \ifx\@extratitle\@empty%
+ \ifx\@frontispiece\@empty\else%
+ \if@twoside\null\fi%
+ \fi
+ \else%
+ \tud@res@a{\@makeextratitle}%
+ \fi%
+ \next@tpage%
+ \ifx\@frontispiece\@empty\else%
+ \tud@res@a{\@makefrontispiece}%
+ \fi%
+ \next@tdpage%
+ \tud@res@a{\tud@maketitle@@inpage}%
+ \ifx\titlepagestyle\@empty\else\thispagestyle{\titlepagestyle}\fi%
+ \@thanks%
+ \endgroup%
+}
+% \end{macrocode}
+% Hier erfolgt die Ausgabe des Titelkopfes.
+% \begin{macrocode}
+\newcommand*\tud@maketitle@@inpage{%
+ \global\@topnum=\z@%
+ \tud@cd@headstartvskip%
+%<*book|report|article>
+ \TUD@deprecated@lengthcs{headingsvskip}%
+ \vspace*{\tud@dim@headingsvskip}%
+ \tud@cd@vphantom%
+%</book|report|article>
+ \setparsizes{\z@}{\z@}{\z@\@plus1fil}\par@updaterelative%
+% \end{macrocode}
+% Damit die Farbeinstellungen der Schriften lokal begrenzt bleiben, wird dieser
+% Teil des Titels in einer Gruppe gesetzt. Außerdem werden
+% wie auch für die Titelseite die Hyperlinks der Fußnoten deaktiviert.
+% \begin{macrocode}
+ {\usekomafont{titlepage}{%
+ \tud@x@hyperref@realfootnotes%
+% \end{macrocode}
+% Bei einem Titelkopf ist nur die Variante möglich, dass eine Abschlussarbeit
+% in der Betreffzeile angegeben wird.
+% \begin{macrocode}
+%<*book|report|article>
+ \TUDoptions{subjectthesis=true}%
+%</book|report|article>
+% \end{macrocode}
+% Ähnlich wie bei der Titelseite wird auch beim Titelkopf die Inhalte von
+% \cs{@titlehead} und \cs{@subject} so nach oben verschoben, dass der Titel
+% selbst auf der gewünschten Höhe landet.
+% \begin{macrocode}
+ \tud@maketitle@head%
+% \end{macrocode}
+% Der eigentliche Titel nach dem Titelkopf.
+% \begin{macrocode}
+ {\usekomafont{title}{\tud@title@format{\@title}\par}}%
+ \ifx\@subtitle\@empty\else%
+ \vskip 1ex\@plus.5ex\@minus.5ex%
+ {\usekomafont{subtitle}{\tud@title@format{\@subtitle}\par}}%
+ \fi%
+ \vskip 2ex\@plus1ex\@minus1ex%
+% \end{macrocode}
+% Ausgabe eines Autors oder mehrerer Autoren ggf. mit Zusatzinformationen.
+% \begin{macrocode}
+%<*book|report|article>
+ \vskip 2\bigskipamount%
+ \let\tud@split@author@do\tud@split@author@title%
+ \tud@multiple@split{@author}\par%
+% \end{macrocode}
+% Ausgabe von Datum, Verlag und Danksagung wie im Original.
+% \begin{macrocode}
+ \ifx\@date\@empty\else%
+ \vskip 2ex\@plus1ex\@minus1ex%
+ {\usekomafont{date}{\tud@date@print\par}}%
+ \fi%
+ \ifx\@publishers\@empty\else%
+ \vskip 2ex\@plus1ex\@minus1ex%
+ {\usekomafont{publishers}{\@publishers\par}}%
+ \fi%
+ \ifx\@dedication\@empty\else%
+ \vskip 2ex\@plus1ex\@minus1ex%
+ {\centering\usekomafont{dedication}{\@dedication\par}}%
+ \fi%
+% \end{macrocode}
+% Falls Felder genutzt wurden, die nur auf der Titelseite, nicht aber im
+% Titelkopf ausgegeben werden, dann wird eine Warnung ausgegeben.
+% \begin{macrocode}
+ \ifx\@graduation\@empty\else\tud@title@wrn{graduation}\fi%
+ \ifx\@referee\@empty\else\tud@title@wrn{referee}\fi%
+ \ifx\@advisor\@empty\else\tud@title@wrn{advisor}\fi%
+ \ifx\@supervisor\@empty\else\tud@title@wrn{supervisor}\fi%
+ \ifx\@professor\@empty\else\tud@title@wrn{professor}\fi%
+% \end{macrocode}
+% Am Ende wird noch etwas vertikaler Abstand eingefügt.
+% \begin{macrocode}
+ \vskip 2\bigskipamount%
+%</book|report|article>
+ \ifnum\col@number>\@ne\relax%
+ \ifdefvoid{\multicolsep}{}{%
+ \ifisskip{\multicolsep}{\vspace{-\multicolsep}}{}%
+ }%
+ \fi%
+% \end{macrocode}
+% Wird das \DDC-Logo im Kompatibilitätsmodus für die Version~v2.02 gesetzt,
+% muss dafür am unteren Rand entsprechend Platz gelassen werden.
+% \begin{macrocode}
+ \tud@if@v@lower{2.03}{\tud@ddc@enlargepage[\titlepagestyle]}{}%
+ }}%
+}
+% \end{macrocode}
+% \end{macro}^^A \tud@maketitle@@inpage
+% \end{macro}^^A \tud@maketitle@inpage
+% \begin{macro}{\tud@maketitle@head}
+% \changes{v2.06}{2018/08/17}{neu}^^A
+% Mit diesem Makro wird dafür gesorgt, dass Titelkopf und Typisierung so
+% postioniert werden, dass der Titel selbst vertikal nicht verschoben wird.
+% Hierfür wird von allem, was über der Überschrift positioniert werden soll,
+% die Höhe bestimmt werden, um einen entsprechenden Offset einfügen zu können.
+% Dafür wird eine temporäre Standardbox verwendet. In diesen wird der Inhalt
+% für die beiden Felder \cs{@titlehead} bzw. \cs{@subject} abgelegt und die
+% sich daraus kumulierende Höhe in \cs{@tempdima} gespeichert. Vor dem Setzen
+% der Felder kann nun der notwendige vertikale Freiraum vor dem eigentlichen
+% Titel für \cs{@titlehead} und \cs{@subject} abgezogen werden. Anschließend
+% wird die Box ausgegeben und der Aufbau der Titelseite kann beginnen.
+% \begin{macrocode}
+\newcommand*\tud@maketitle@head{%
+ \setbox\z@\vbox{%
+ \ifx\@titlehead\@empty\else%
+ {\usekomafont{titlehead}{%
+ \begin{minipage}[t]{\textwidth}%
+ \@titlehead\tud@sec@strut%
+ \end{minipage}%
+ }}%
+ \fi%
+%<*book|report|article>
+ \tud@thesis@tosubject%
+%</book|report|article>
+ \ifx\@subject\@empty\else%
+ \par\medskip%
+ {\usekomafont{subject}{%
+ \@subject\tud@sec@strut%
+ }}%
+ \fi%
+ }%
+% \end{macrocode}
+% Der ermittelte Offset muss~-- warum auch immer~-- um \val{1pt} vergrößert
+% werden. Zusätzlich wird ein mittlerer Abstand zwischen Kopf und Titel gesetzt.
+% \begin{macrocode}
+ \setlength\@tempdima{\dimexpr\ht\z@+\dp\z@\relax}%
+ \ifdim\@tempdima>\z@\relax%
+%<*book|report|article>
+ \vskip\dimexpr-\@tempdima-\p@-\medskipamount\relax%
+%</book|report|article>
+ \usebox\z@\par\medskip%
+ \fi%
+}
+% \end{macrocode}
+% \end{macro}^^A \tud@maketitle@inpage
+%
+% \subsubsection{Hilfsmakros für die Ausgabe}
+%
+% \begin{macro}{\tud@title@format}
+% Für das Formatieren einzelner Felder auf dem Titel mit \cs{tud@sec@format}
+% wird dieser Befehl definiert. Bei der Verwendung des Befehls \cs{thanks} auf
+% der Titelseite soll sichergestellt werden, dass der Inhalt selbst nicht in
+% Majuskeln gesetzt wird.
+% \begin{macrocode}
+\newcommand*\tud@title@format[1]{%
+ \begingroup%
+ \let\\\newline%
+% \end{macrocode}
+% Der Befehl \cs{thanks} wird so umdefiniert, dass der Inhalt in ein temporäres
+% Makro gespeichert wird. Danach wird durch das Setzen einer temporären Box der
+% Befehl \cs{thanks} ausgeführt und der Inhalt gesichert. Für die Ausführung von
+% \cs{tud@sec@format} wird das Argument von \cs{thanks} ignoriert. Nachdem das
+% gewünschte Feld in Majuskeln gesetzt wurde, wird die gespeicherte Fußnote
+% ausgegeben.
+% \begin{macrocode}
+ \let\tud@thanks\relax%
+ \def\thanks##1{\gdef\tud@thanks{##1}}%
+ \let\footnote\thanks%
+ \sbox\z@{#1}%
+ \let\thanks\@gobble%
+ \let\footnote\@gobble%
+ \tud@sec@format{#1}%
+ \edef\tud@res@a{%
+ \endgroup%
+ \ifx\tud@thanks\relax\else%
+ \noexpand\thanks{\expandonce\tud@thanks}%
+ \fi%
+ }%
+ \tud@res@a%
+}
+% \end{macrocode}
+% \end{macro}^^A \tud@title@format
+%
+% \iffalse
+%<*book|report|article>
+% \fi
+%
+% \begin{macro}{\tud@thesis@tosubject}
+% Bei der Verwendung der Option \opt{subjectthesis} wird zum einen geprüft, ob
+% das Feld \cs{@thesis} gesetzt ist und zum anderen, ob das Feld \cs{@subject}
+% auch leer ist.
+% \begin{macrocode}
+\newcommand*\tud@thesis@tosubject{%
+ \if@tud@subjectthesis\ifx\@thesis\@empty\else%
+ \ifx\@subject\@empty\else%
+ \ClassWarning{\TUD@Class@Name}{%
+ The option `subjectthesis' was activated, so\MessageBreak%
+ the field `subject' will be overwritten with the\MessageBreak%
+ given thesis%
+ }%
+ \fi%
+ \let\@subject\@thesis%
+ \fi\fi%
+}
+% \end{macrocode}
+% \end{macro}^^A \tud@thesis@tosubject
+% \begin{macro}{\tud@title@names}
+% Dieser Befehl dient zur getrennten Ausgabe von mehreren, mit dem Makro
+% \cs{and} separierten Einträgen in den Feldern \cs{@supervisor}, \cs{@referee}
+% und \cs{@advisor}.
+% \begin{macrocode}
+\newcommand*\tud@title@names[1]{%
+ \letcs\@tempa{@#1}%
+ \ifx\@tempa\@empty\else%
+ \def\and{%
+ \ifcsvoid{#1othername}{\par}{%
+ \vskip 1ex\@plus.5ex\@minus.5ex%
+ {\usekomafont{titlepage}{\csuse{#1othername}\par}}%
+ }%
+ \let\and\par%
+ }%
+ \vskip 1ex\@plus.5ex\@minus.5ex%
+ {\usekomafont{titlepage}{\csuse{#1name}\par}}%
+ {\usekomafont{author}{\csuse{@#1}\par}}%
+ \fi%
+}
+% \end{macrocode}
+% \end{macro}^^A \tud@title@names
+% \begin{macro}{\titledelimiter}
+% \begin{macro}{\tud@title@delimiter}
+% Dieses Makro wird für das Trennzeichen auf der Titelseite genutzt.
+% \begin{macrocode}
+\newcommand*\tud@title@delimiter{:\nobreakspace}
+\newcommand*\titledelimiter[1]{\gdef\tud@title@delimiter{#1}}
+% \end{macrocode}
+% \end{macro}^^A \tud@title@delimiter
+% \end{macro}^^A \titledelimiter
+% \begin{macro}{\tud@split@author@title}
+% \changes{v2.04}{2015/05/12}{neu}^^A
+% \begin{macro}{\tud@newline@title}
+% Das Makro \cs{tud@split@author@title} dient der formatierten Ausgabe aller
+% Informationen für mehrere Autoren auf der Titelseite.
+% \begin{macrocode}
+\newcommand*\tud@newline@title{}
+\newcommand*\tud@split@author@title[2]{%
+% \end{macrocode}
+% Zu Beginn werden alle Felder, welche innerhalb von \cs{@author} angegeben
+% sind, gesichert.
+% \begin{macrocode}
+ \tud@multiple@fields@store{@author}{#1}%
+% \end{macrocode}
+% Um die Abstände definiert zu setzen, wird \cs{tud@newline@title} verwendet.
+% Sobald auch nur eine zusätzliche Information ausgegeben werden soll, wird ein
+% etwas kleiner Abstand eingefügt. Anschließend wird jede Information einfach
+% in einer neuen Zeile ausgegeben.
+% \begin{macrocode}
+ \renewcommand*\tud@newline@title{%
+ \vskip .5ex\strut%
+ \def\tud@newline@title{\newline\strut}%
+ }%
+% \end{macrocode}
+% Die Felder \cs{@author} und ggf. \cs{@authormore} werden sowohl auf der
+% Titelseite als auch im Titelkopf jedoch nicht auf der Umschlagseite
+% ausgegeben. Gleiches gilt für E"~Mail-Adressen.
+% \begin{macrocode}
+ {\usekomafont{author}{\ignorespaces#1\strut\unskip}}%
+ \if@tud@coverpage\else%
+ \ifx\@authormore\@empty\else%
+ \tud@newline@title%
+ \@authormore%
+ \fi%
+ \ifx\@emailaddress\@empty\else%
+ \tud@newline@title%
+ \@emailaddress%
+ \fi%
+% \end{macrocode}
+% Nur auf der Titelseite erfolgt die Ausgabe von Geburtsdatum, Geburtsort,
+% Matrikelnummer und Immatrikulationsjahr. Sollte ein Titelkopf verwendet
+% werden, so wird für jedes gesetzte Feld eine Warnung ausgegeben.
+% \begin{macrocode}
+ \ifx\@dateofbirth\@empty\else%
+ \if@titlepage%
+ \tud@newline@title%
+ \ifxblank{\dateofbirthtext}{}{\dateofbirthtext\tud@title@delimiter}%
+ \@dateofbirth%
+ \ifx\@placeofbirth\@empty\else%
+ \nobreakspace\placeofbirthtext\nobreakspace\@placeofbirth%
+ \fi%
+ \else%
+ \tud@title@wrn{dateofbirth}%
+ \fi%
+ \fi%
+ \def\@tempc##1{%
+ \ifstr{\csuse{@##1}}{}{}{%
+ \if@titlepage%
+ \tud@newline@title%
+ \ifstr{\csuse{##1name}}{}{}{\csuse{##1name}\tud@title@delimiter}%
+ \csuse{@##1}%
+ \else%
+ \tud@title@wrn{##1}%
+ \fi%
+ }%
+ }%
+ \@tempc{course}%
+ \@tempc{discipline}%
+ \@tempc{matriculationnumber}%
+ \@tempc{matriculationyear}%
+ \fi%
+% \end{macrocode}
+% Zunächst werden die zuvor bestehenden Feldinhalte wiederhergestellt. Danach
+% wird durch den Aufruf von \cs{tud@multiple@@@split} wird das übergebene
+% \meta{Feld} sukzessive abgearbeitet.
+% \begin{macrocode}
+ \tud@multiple@fields@restore{@author}%
+ \tud@multiple@@@split{#2}{\vskip 1.5ex}%
+}
+% \end{macrocode}
+% \end{macro}^^A \tud@newline@title
+% \end{macro}^^A \tud@split@author@title
+% \begin{macro}{\tud@title@wrn}
+% Bei der Nutzung eines Titelkopfes wird bloß eine reduzierte Menge an
+% Informationen ausgegeben. Darauf wird der Anwender ggf. hingewiesen.
+% \begin{macrocode}
+\newcommand*\tud@title@wrn[1]{%
+ \ClassWarning{\TUD@Class@Name}{%
+ `\@backslashchar#1' has to be used with\MessageBreak%
+ activated titlepage option%
+ }%
+}
+% \end{macrocode}
+% \end{macro}^^A \tud@title@wrn
+% \begin{macro}{\tud@split@author@signature}
+% \changes{v2.06}{2018/08/21}{neu}^^A
+% Das Makro \cs{tud@split@author@signature} dient zum Erstellen von Feldern für
+% Unterschriften der Autoren am Ende der Titelseite.
+% \begin{macrocode}
+\newcommand*\tud@split@author@signature[2]{%
+% \end{macrocode}
+% Zu Beginn werden alle Felder, welche innerhalb von \cs{@author} angegeben
+% sind, gesichert.
+% \begin{macrocode}
+ \tud@multiple@fields@store{@author}{#1}%
+% \end{macrocode}
+% Für jeden Autor wird in einer Box ein Unterschriftenfeld mit fester Breite
+% erzeugt. Innerhalb der Box wird erst eine Linie und darunter der Name des
+% Autors zentriert ausgegeben.
+% \begin{macrocode}
+ \vbox{%
+ \hsize=.3\textwidth%
+ \centering%
+ \rule{.3\textwidth}{.05pt}\newline%
+ \ignorespaces#1\strut\unskip%
+ }%
+% \end{macrocode}
+% Zunächst werden die zuvor bestehenden Feldinhalte wiederhergestellt. Danach
+% wird durch den Aufruf von \cs{tud@multiple@@@split} wird das übergebene
+% \meta{Feld} sukzessive abgearbeitet.
+% \begin{macrocode}
+ \tud@multiple@fields@restore{@author}%
+ \tud@multiple@@@split{#2}{\hfill}%
+}
+% \end{macrocode}
+% \end{macro}^^A \tud@split@author@signature
+%
+% \iffalse
+%</book|report|article>
+% \fi
+%
+% \subsection{Einspaltige Titelei in zweispaltigen Dokumenten}
+%
+% \begin{macro}{\maketitleonecolumn}
+% \changes{v2.02}{2014/08/16}{einspaltiger Text obligatorisch}^^A
+% \begin{macro}{\tud@title@twocolumn}
+% \changes{v2.03}{2015/01/13}{Bugfix für falsche Position des Titels}^^A
+% \begin{macro}{\tud@title@box}
+% Der Befehl \cs{maketitleonecolumn}\oarg{Parameter}\oarg{Inhalt} kann bei
+% zweispaltigem Satz dazu genutzt werden, einen einspaltigen Titel zu bekommen.
+% Beim der Verwendung einer Titelseite wird lediglich der Titel sowie
+% anschließend ggf. \meta{Inhalt} einspaltig ausgegeben. Beim Satz eines
+% Titelkopfes wird der Befehl \cs{tud@title@twocolumn} zur Ausgabe genutzt.
+% \hrfn{http://www.komascript.de/node/1699}{Danke an Markus Kohm für die Hilfe}.
+% \begin{macrocode}
+\newcommand\maketitleonecolumn[2][]{%
+% \end{macrocode}
+% Hier erfolgt die Unterscheidung der Ausgabe, abhängig von der Option
+% \opt{titlepage}.
+% \begin{macrocode}
+ \if@twocolumn%
+%<*book|report|article>
+ \if@titlepage%
+ \tud@maketitle[#1]%
+ \onecolumn{#2}\twocolumn%
+ \else%
+%</book|report|article>
+ \tud@title@twocolumn{\tud@maketitle[#1]{#2}}%
+%<*book|report|article>
+ \fi%
+%</book|report|article>
+ \else%
+ \ClassError{\TUD@Class@Name}{%
+ `\string\maketitleonecolumn' can only be used in twocolumn mode%
+ }{}%
+ \fi%
+}
+% \end{macrocode}
+% Es folgt die Verarbeitung des Inhaltes des Titelkopfes, welcher einspaltig
+% gesetzt werden soll. Damit sich dieser auch über mehrere Seiten erstrecken
+% kann, wird mit einer Box gearbeitet.
+% \begin{macrocode}
+\newsavebox\tud@title@box
+\newcommand\tud@title@twocolumn[1]{%
+% \end{macrocode}
+% Zunächst wird auf einseitigen Satz umgeschaltet. Der zu schreibende Inhalt
+% wird in einer Box gespeichert. Während des Zusammenbaus der Box sind keine
+% expliziten \cs{newpage}- oder \cs{clearpage}-Befehle erlaubt.
+% \begin{macrocode}
+ \onecolumn%
+ \begingroup%
+ \let\clearpage\relax%
+ \let\newpage\relax%
+% \end{macrocode}
+% Sollte der Inhalt der Box größer als die verfügbare Texthöhe des Satzspiegels
+% sein, muss aufgrund der verwendeten Box ein zusätzlicher vertikaler Abstand
+% von |.9\baselineskip| zur korrekten Postionierung der Überschrift eingefügt
+% werden.
+% \begin{macrocode}
+ \global\setbox\tud@title@box\vbox{%
+ \vspace*{.9\baselineskip}#1\bigskip%
+ }%
+ \endgroup%
+% \end{macrocode}
+% Als erstes muss geprüft werden, ob der Inhalt größer als der Textbereich ist.
+% Vor der Version~v2.03 gab es für das \DDC-Logo einen abweichenden Satzspiegel
+% der ggf. beachtet werden muss.
+% \begin{macrocode}
+ \setlength\@tempdima{\textheight}%
+ \tud@if@v@lower{2.03}{%
+ \tud@ddc@check%
+ \ifcase\@tempb\relax\else% \tud@ddc@foot@num!=false
+ \setlength\@tempdima{\dimexpr\textheight-\tud@len@ddcdiff\relax}%
+ \@tempswatrue%
+ \fi%
+ }{}%
+% \end{macrocode}
+% Jetzt werden der Inhalt stückweise so lange auf einzelnen Seiten ausgeben,
+% bis der immer kleiner werdende Rest in der Box auf eine Seite passt.
+% \begin{macrocode}
+ \ifdim\ht\tud@title@box>\@tempdima\relax%
+ \@whiledim\ht\tud@title@box>\@tempdima\do{%
+ \splittopskip\topskip%
+ \splitmaxdepth\maxdepth%
+ \vsplit\tud@title@box to \@tempdima%
+ \clearpage%
+ \setlength\@tempdima{\textheight}%
+ \tud@if@v@lower{2.03}{\@tempswafalse}{}%
+ }%
+% \end{macrocode}
+% Passt der einspaltige Teil auf eine Seite, ist eine vertikale Korrektur von
+% |.9\baselineskip| nicht notwendig. In diesem Fall wird die Box vor der
+% Ausgabe einfach neu und ohne diese Länge gesetzt.
+% \begin{macrocode}
+ \else%
+ \setbox\tud@title@box\vbox{#1\bigskip}%
+ \fi%
+% \end{macrocode}
+% Der Rest wir einfach als optionales Argument von \cs{twocolumn} ausgegeben.
+% \begin{macrocode}
+ \twocolumn[\unvbox\tud@title@box]%
+% \end{macrocode}
+% In der Version~v2.02 wird eine Warnung ausgegeben, damit der Anwender den
+% Satzspiegel manuell anpassen kann. Die Verwendung von \pkg{afterpage} liefert
+% leider nicht in allen Fällen das gewollte Ergebnis, weshalb darauf verzichtet
+% wird.
+% \begin{macrocode}
+ \tud@if@v@lower{2.03}{%
+ \if@tempswa%
+ \ClassWarning{\TUD@Class@Name}{%
+ You are using a two-column title along with\MessageBreak%
+ the DDC-logo. Unfortunately in this case, the\MessageBreak%
+ type area has to be adjusted manually. Please\MessageBreak%
+ use `\string\enlargethispage{-\the\tud@len@ddcdiff}'\MessageBreak%
+ in both columns after the title%
+ }%
+ \fi%
+ }{}%
+}
+% \end{macrocode}
+% \end{macro}^^A \tud@title@box
+% \end{macro}^^A \tud@title@twocolumn
+% \end{macro}^^A \maketitleonecolumn
+%
+%
+% \iffalse
+%<*book|report|article>
+% \fi
+%
+% \subsection{Umschlagseite (Cover)}
+%
+% Zusätzlich zur eigentlichen Titelseite kann für Druckerzeugnisse eine
+% separate Umschlagseite erzeugt werden. Um die Gestaltung dieser anzupassen,
+% wurden Einstellungsmöglichkeiten vorgesehen, die insbesondere den verwendeten
+% Satzspiegel betreffen.
+%
+% \begin{macro}{\makecover}
+% \changes{v2.02}{2014/06/23}{Warnung für die Option \opt{titlepage} mit dem
+% Wert \val{firstiscover}}^^A
+% \changes{v2.02}{2014/08/08}{ohne \CD verwendbar}^^A
+% \changes{v2.02}{2014/08/12}{Satzspiegel mit \cs{coverpage\dots{}margin}
+% änderbar, falls CD-Layout deaktiviert}^^A
+% \changes{v2.03}{2015/01/09}{Anpassungen für neue Satzspiegelerzeugung}^^A
+% \begin{parameter}{cdcover}
+% \changes{v2.03}{2015/01/12}{neu}^^A
+% \begin{parameter}{cd}
+% \changes{v2.03}{2015/01/12}{neu}^^A
+% \begin{parameter}{pagenumber}
+% \begin{parameter}{cdgeometry}
+% \changes{v2.02}{2014/06/23}{neu}^^A
+% \begin{macro}{\if@tud@cdgeometry@cover}
+% \begin{macro}{\if@tud@cdgeometry@cover@locked}
+% \begin{macro}{\if@tud@coverpage}
+% Der Befehl \cs{makecover} ist für eine Umschlagseite bei einem gebundenen
+% Werk zu verwenden.
+% \begin{macrocode}
+\newif\if@tud@coverpage
+\newcommand*\makecover[1][]{%
+% \end{macrocode}
+% Ist die Option \opt{titlepage}|=|\val{firstiscover} aktiv, wird eine Warnung
+% erzeugt.
+% \begin{macrocode}
+ \if@titlepageiscoverpage%
+ \ClassWarning{\TUD@Class@Name}{%
+ Using both option `titlepage=firstiscover' and\MessageBreak%
+ `\string\makecover' together isn't supported. The\MessageBreak%
+ option `titlepage=firstiscover' will be ignored. If you\MessageBreak%
+ want to create an individual cover, you have to use\MessageBreak%
+ `\string\extratitle' instead of `\string\makecover'. \MessageBreak%
+ See also the documentation of KOMA-Script%
+ }%
+ \@titlepageiscoverpagefalse%
+ \fi%
+% \end{macrocode}
+% Die Erscheinung des Covers lässt sich durch wenige Optionen etwas anpassen.
+% Standardmäßig ist das Cover farblos, die farbige Darstellung wird durch die
+% Klassenoption \opt{cdcover} gewählt. Außerdem wird normalerwe ein Layout
+% erzeugt, welches sich genau an die Vorgaben des \CDs hält und außerdem die
+% Binderandkorrektur \emph{nicht} beachtet. Optional kann das Cover im
+% Satzspiegel erstellt werden. Zuletzt ist die Verwendung der Schriften des
+% \CDs deaktivierbar.
+% \begin{macrocode}
+ \clearpage%
+ \begingroup%
+ \let\thanks\@gobble%
+ \let\footnote\@gobble%
+ \TUD@parameter@set{cover}{#1}%
+ \let\tud@cd@title@num\tud@cd@cover@num%
+ \tud@cd@process%
+% \end{macrocode}
+% Je nachdem, ob das \CD verwendet wird, wird der Satzspiegel standardmäßig
+% umgestellt oder eben nicht. Der Schalter \cs{if@tud@coverpage} wird innerhalb
+% des Befehles \cs{tud@maketitle} genutzt, um die Unterscheidung zu machen, ob
+% es sich bei der aktuellen Ausgabe um das Cover im \CD oder eine beliebige
+% Titelseite handelt.
+% \begin{macrocode}
+ \ifcase\tud@cd@cover@num\relax% false
+ \tud@locked@bool@preset{@tud@cdgeometry@cover}{false}%
+ \@tud@coverpagefalse%
+ \else% !false
+ \tud@locked@bool@preset{@tud@cdgeometry@cover}{true}%
+ \@tud@coverpagetrue%
+ \fi%
+% \end{macrocode}
+% Weil bereits die Titelseite normalerweise die Seitenzahl eins bekommt, kann es
+% bei der Verwendung des Paketes \pkg{hyperref} zu einer Warnung aufgrund der
+% doppelt verwendeten Seitenzahl kommen. Um dies zu verhindern, werden die
+% Seitenanker für das Cover deaktiviert.
+% \begin{macrocode}
+ \ifundef{\hypersetup}{}{\hypersetup{pageanchor=false}}%
+% \end{macrocode}
+% Ein Cover wird immer als komplette Seite und nie als Kopf gesetzt. Außerdem
+% werden ein mit \cs{extatitle} gegebener Schmutztitel ebenso ignoriert, wie
+% die dazugehörige Rückseite, Danksagung oder Einträge für die Titelrückseite.
+% \begin{macrocode}
+ \@titlepagetrue%
+ \let\@extratitle\@empty%
+ \let\@frontispiece\@empty%
+ \let\@uppertitleback\@empty%
+ \let\@lowertitleback\@empty%
+ \let\@dedication\@empty%
+% \end{macrocode}
+% Wird der Parameter \opt{cdgeometry} aktiviert, werden die Seitenränder wie
+% durch das \CD vorgegeben eingestellt. Andernfalls entsprechen diese den
+% Einstellungen des Satzspiegels und können mit \cs{coverpage\dots margin}
+% durch den Anwender angepasst werden.
+% \begin{macrocode}
+ \if@tud@cdgeometry@cover%
+% \end{macrocode}
+% Bei der Höhe des oberen Seitenrandes muss unterschieden werden, ob der
+% Satzspiegel im \CD oder aber im Buchblock erscheinen soll.
+% \begin{macrocode}
+ \if@tud@coverpage%
+ \def\coverpagetopmargin{%
+ \dimexpr\tud@len@topmargin+\tud@len@barheight%
+ +\tud@len@headsep\relax%
+ }%
+ \else%
+ \tud@if@v@lower{2.03}{%
+ \def\coverpagetopmargin{.5\tud@len@both}%
+ }{%
+ \def\coverpagetopmargin{\tud@len@slimmargin}%
+ }%
+ \fi%
+ \tud@if@v@lower{2.03}{%
+ \def\coverpagebottommargin{.5\tud@len@both}%
+ }{%
+ \def\coverpagebottommargin{\tud@len@widemargin}%
+ }%
+ \def\coverpageleftmargin{\tud@len@widemargin}%
+ \def\coverpagerightmargin{\tud@len@slimmargin}%
+ \fi%
+ \if@tud@coverpage%
+% \end{macrocode}
+% Der Satzspiegel wird hierfür äquivalent zu den \KOMAScript-Klassen gesetzt,
+% wenn die Option \opt{titlepage}|=|\val{firstiscover} aktiviert ist.
+% \begin{macrocode}
+ \edef\titlepage@restore{%
+ \noexpand\endgroup%
+ \noexpand\global\noexpand\@colht\the\@colht%
+ \noexpand\global\noexpand\@colroom\the\@colroom%
+ \noexpand\global\vsize\the\vsize%
+ \noexpand\global\noexpand\@titlepageiscoverpagefalse%
+ \noexpand\let\noexpand\titlepage@restore\noexpand\relax%
+ }%
+% \end{macrocode}
+% Linker und rechter Rand sowie die Textbreite werden identisch erzeugt. Für
+% das Layout im \CD wurden die Seitenränder (\cs{coverpage\dots margin}) zuvor
+% angepasst.
+% \begin{macrocode}
+ \begingroup%
+ \tud@cover@setmargins%
+ \tud@len@areavskip=\z@%
+% \end{macrocode}
+% Die Ausgabe des Covers und ggf. das Wiederherstellen des Satzspiegels.
+% \begin{macrocode}
+ \tud@maketitle%
+ \clearpage%
+ \titlepage@restore%
+% \end{macrocode}
+% Für den Fall, dass eine Umschlagseite gesetzt werden soll, die nicht im \CD
+% erscheint, wird einfach das originale \cs{maketitle} aufgerufen und die
+% Option \opt{titlepage}|=|\val{firstiscover} verwendet, um die Seitenränder
+% anpassen zu können.
+% \begin{macrocode}
+ \else%
+ \@titlepageiscoverpagetrue%
+ \tud@cover@fixmargins%
+ \ifx\tud@title@pagenumber\relax%
+ \tud@cs@use{maketitle}%
+ \else%
+ \tud@cs@use{maketitle}[\tud@title@pagenumber]%
+ \fi%
+ \fi%
+ \endgroup%
+}
+% \end{macrocode}
+% Die einzelnen Parameter dienen zur Einstellung der Umschlagseite und
+% entsprechen~-- \prm{cdgeometry} ausgenommen~-- in ihrem Verhalten den
+% gleichnamigen Klassenoptionen. Der genannte Parameter kann eigentlich nur mit
+% booleschen Werten verwenet werden. Für einen benutzerdefinierten Satzspiegel
+% der Umschlagseite müssen die \KOMAScript-Makros \cs{coverpage\dots{}margin}
+% angepasst werden.
+% \begin{macrocode}
+\tud@locked@newbool{@tud@cdgeometry@cover}
+\TUD@parameter@family{cover}{%
+ \TUD@parameter@def{pagenumber}{\def\tud@title@pagenumber{#1}}%
+ \TUD@parameter@def{cdcover}[true]{\TUDoption{cdcover}{#1}}%
+ \TUD@parameter@let{cd}{cdcover}%
+ \TUD@parameter@def{cdgeometry}[true]{%
+ \TUDoption{cdgeometry}{#1}%
+ \ifnum\tud@cdgeometry@num>\@ne\relax% true/symmetric/twoside
+ \tud@locked@bool@set{@tud@cdgeometry@cover}{true}%
+ \else%
+ \tud@locked@bool@set{@tud@cdgeometry@cover}{false}%
+ \fi%
+ }%
+% \end{macrocode}
+% Mit \cs{TUD@parameter@ps@def} werden alle verfügbaren Parameter für
+% die Kopf- und Fußzeilen definiert.
+% \begin{macrocode}
+ \TUD@parameter@ps@def{#1}%
+% \end{macrocode}
+% Für den Fall, dass ein Wert nicht in der Schlüssel"=Wert"=Notation angegeben
+% wurde, wird versucht, das gegebene Argument entweder als booleschen Ausdruck
+% für das Seitenlayout oder als Seitenzahl zu interpretieren.
+% \begin{macrocode}
+ \TUD@parameter@handler@value{pagenumber}%
+}
+% \end{macrocode}
+% \end{macro}^^A \if@tud@coverpage
+% \end{macro}^^A \if@tud@cdgeometry@cover@locked
+% \end{macro}^^A \if@tud@cdgeometry@cover
+% \end{parameter}^^A cdgeometry
+% \end{parameter}^^A pagenumber
+% \end{parameter}^^A cd
+% \end{parameter}^^A cdcover
+% \end{macro}^^A \makecover
+% \begin{macro}{\coverpagetopmargin}
+% \begin{macro}{\coverpagebottommargin}
+% Bei der Verwendung eines eigenen Satzspiegels kann der obere Seitenrand über
+% das Makro \cs{coverpagetopmargin} geändert werden. Die \KOMAScript-Befehle
+% werden so angepasst, dass die Ränder für eine Cover im des \CDs korrekt
+% voreingestellt sind. Das Vermeiden einer unerwünschten Überdeckung des Kopfes
+% oder ein zu kleiner Fußbereich muss durch den Anwender korrigiert werden.
+% \begin{macrocode}
+\renewcommand*{\coverpagetopmargin}{%
+ \if@tud@coverpage%
+ \dimexpr\tud@len@topmargin+\tud@len@barheight+\tud@len@headsep\relax%
+ \else%
+ \dimexpr\topmargin+1in\relax%
+ \fi%
+}
+\renewcommand*{\coverpagebottommargin}{%
+ \if@tud@coverpage%
+ \dimexpr\tud@len@widemargin\relax%
+ \else%
+ 2\dimexpr\coverpagetopmargin\relax%
+ \fi%
+}
+% \end{macrocode}
+% \end{macro}^^A \coverpagebottommargin
+% \end{macro}^^A \coverpagetopmargin
+% \begin{macro}{\tud@cover@fixmargins}
+% \changes{v2.06}{2018/08/16}{neu}^^A
+% \begin{macro}{\tud@cover@setmargins}
+% \changes{v2.06}{2018/08/16}{neu}^^A
+% Diese beiden Befehle werden verwendet, um die von \KOMAScript{} zur Verfügung
+% gestellten Befehle für die Definition der Cover-Seitenränder so anzupassen,
+% dass diese auch mit der Option \opt{layout} aus dem Paket \pkg{geometry}
+% genutzt werden können. Dafür werden die vom Anwender definierten Seitenränder
+% expandiert und mit dem notwendigen Offset beaufschlagt.
+% \begin{macrocode}
+\newcommand*\tud@cover@fixmargins{%
+ \begingroup%
+ \tud@cdgeometry@assignlayout%
+ \tud@x@geometry@fixmargins%
+% \end{macrocode}
+% Standardmäßig ist \cs{coverbottommargin} abhängig von \cs{covertopmargin},
+% weshalb dieses Makro als erstes expandiert wird.
+% \begin{macrocode}
+ \setlength\@tempdima{%
+ \dimexpr\coverpagebottommargin-\tud@len@layoutvoffset
+ +\paperheight-\tud@len@layoutheight\relax%
+ }%
+ \edef\coverpagebottommargin{\the\@tempdima}%
+ \setlength\@tempdima{%
+ \dimexpr\coverpagetopmargin+\tud@len@layoutvoffset\relax%
+ }%
+ \edef\coverpagetopmargin{\the\@tempdima}%
+% \end{macrocode}
+% Selbiges gilt für \cs{coverrightmargin} und \cs{coverleftmargin}.
+% \begin{macrocode}
+ \setlength\@tempdima{%
+ \dimexpr\coverpagerightmargin-\tud@len@layouthoffset
+ +\paperwidth-\tud@len@layoutwidth\relax%
+ }%
+ \edef\coverpagerightmargin{\the\@tempdima}%
+ \setlength\@tempdima{%
+ \dimexpr\coverpageleftmargin+\tud@len@layouthoffset\relax%
+ }%
+ \edef\coverpageleftmargin{\the\@tempdima}%
+% \end{macrocode}
+% Abschließend werden die gewünschten Längen nach der lokalen Gruppe definiert.
+% \begin{macrocode}
+ \edef\tud@res@a{%
+ \endgroup%
+ \def\noexpand\coverpagetopmargin{\coverpagetopmargin}%
+ \def\noexpand\coverpagebottommargin{\coverpagebottommargin}%
+ \def\noexpand\coverpageleftmargin{\coverpageleftmargin}%
+ \def\noexpand\coverpagerightmargin{\coverpagerightmargin}%
+ }%
+ \tud@res@a%
+}
+\newcommand*\tud@cover@setmargins{%
+ \tud@cover@fixmargins%
+ \topmargin=\dimexpr\coverpagetopmargin-1in\relax%
+ \oddsidemargin=\dimexpr\coverpageleftmargin-1in\relax%
+ \evensidemargin=\dimexpr\coverpageleftmargin-1in\relax%
+ \textwidth=\dimexpr\paperwidth-\coverpageleftmargin%
+ -\coverpagerightmargin\relax%
+ \textheight=\dimexpr\paperheight-\coverpagetopmargin%
+ -\coverpagebottommargin\relax%
+ \headheight=0pt%
+ \headsep=0pt%
+ \footskip=\baselineskip%
+ \@colht=\textheight%
+ \@colroom=\textheight%
+ \vsize=\textheight%
+ \columnwidth=\textwidth%
+ \hsize=\columnwidth%
+ \linewidth=\hsize%
+}
+% \end{macrocode}
+% \end{macro}^^A \tud@cover@setmargins
+% \end{macro}^^A \tud@cover@fixmargins
+%
+% \iffalse
+%</book|report|article>
+%</class&body>
+% \fi
+%
+% \Finale
+%
+\endinput