From e0c6872cf40896c7be36b11dcc744620f10adf1d Mon Sep 17 00:00:00 2001
From: Norbert Preining <norbert@preining.info>
Date: Mon, 2 Sep 2019 13:46:59 +0900
Subject: Initial commit

---
 .../latex/contrib/tudscr/source/tudscr-title.dtx   | 1604 ++++++++++++++++++++
 1 file changed, 1604 insertions(+)
 create mode 100644 macros/latex/contrib/tudscr/source/tudscr-title.dtx

(limited to 'macros/latex/contrib/tudscr/source/tudscr-title.dtx')

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
-- 
cgit v1.2.3

