summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/koma-script/source/scrkernel-title.dtx
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/koma-script/source/scrkernel-title.dtx
Initial commit
Diffstat (limited to 'macros/latex/contrib/koma-script/source/scrkernel-title.dtx')
-rw-r--r--macros/latex/contrib/koma-script/source/scrkernel-title.dtx1071
1 files changed, 1071 insertions, 0 deletions
diff --git a/macros/latex/contrib/koma-script/source/scrkernel-title.dtx b/macros/latex/contrib/koma-script/source/scrkernel-title.dtx
new file mode 100644
index 0000000000..4aa076b934
--- /dev/null
+++ b/macros/latex/contrib/koma-script/source/scrkernel-title.dtx
@@ -0,0 +1,1071 @@
+% \CheckSum{974}
+% \iffalse meta-comment
+% ======================================================================
+% scrkernel-title.dtx
+% Copyright (c) Markus Kohm, 2002-2019
+%
+% This file is part of the LaTeX2e KOMA-Script bundle.
+%
+% This work may be distributed and/or modified under the conditions of
+% the LaTeX Project Public License, version 1.3c of the license.
+% The latest version of this license is in
+% http://www.latex-project.org/lppl.txt
+% and version 1.3c or later is part of all distributions of LaTeX
+% version 2005/12/01 or later and of this work.
+%
+% This work has the LPPL maintenance status "author-maintained".
+%
+% The Current Maintainer and author of this work is Markus Kohm.
+%
+% This work consists of all files listed in manifest.txt.
+% ----------------------------------------------------------------------
+% scrkernel-title.dtx
+% Copyright (c) Markus Kohm, 2002-2019
+%
+% Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz,
+% Version 1.3c, verteilt und/oder veraendert werden.
+% Die neuste Version dieser Lizenz ist
+% http://www.latex-project.org/lppl.txt
+% und Version 1.3c ist Teil aller Verteilungen von LaTeX
+% Version 2005/12/01 oder spaeter und dieses Werks.
+%
+% Dieses Werk hat den LPPL-Verwaltungs-Status "author-maintained"
+% (allein durch den Autor verwaltet).
+%
+% Der Aktuelle Verwalter und Autor dieses Werkes ist Markus Kohm.
+%
+% Dieses Werk besteht aus den in manifest.txt aufgefuehrten Dateien.
+% ======================================================================
+% \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: $Id: scrkernel-title.dtx 3052 2019-01-01 12:47:38Z kohm $
+%<option>%%% (run: option)
+%<body>%%% (run: body)
+%<*dtx>
+% \fi
+\ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi
+\begingroup
+ \def\filedate$#1: #2-#3-#4 #5${\gdef\filedate{#2/#3/#4}}
+ \filedate$Date: 2019-01-01 13:47:38 +0100 (Tue, 01 Jan 2019) $
+ \def\filerevision$#1: #2 ${\gdef\filerevision{r#2}}
+ \filerevision$Revision: 1638 $
+ \edef\reserved@a{%
+ \noexpand\endgroup
+ \noexpand\ProvidesFile{scrkernel-title.dtx}%
+ [\filedate\space\filerevision\space
+ KOMA-Script source (title pages)]
+ }%
+\reserved@a
+% \iffalse
+\documentclass[parskip=half-]{scrdoc}
+\usepackage[english,ngerman]{babel}
+\usepackage[latin1]{inputenc}
+\CodelineIndex
+\RecordChanges
+\GetFileInfo{scrkernel-title.dtx}
+\title{\KOMAScript{} \partname\ \texttt{\filename}%
+ \footnote{Dies ist Version \fileversion\ von Datei
+ \texttt{\filename}.}}
+\date{\filedate}
+\author{Markus Kohm}
+
+\begin{document}
+ \maketitle
+ \tableofcontents
+ \DocInput{\filename}
+\end{document}
+%</dtx>
+% \fi
+%
+% \selectlanguage{ngerman}
+%
+% \changes{v2.95}{2002/06/26}{%
+% erste Version aus der Aufteilung von \texttt{scrclass.dtx}}
+%
+% \section{Die Titelei}
+%
+% Die Titelei ist gegenüber den Standardklassen erheblich
+% erweitert. Trotzdem kann ein Titel einer Standardklasse unmittelbar
+% mit einer \KOMAScript-Klasse gesetzt werden. Briefe besitzen allerdings
+% keine Titelei im eigentlichen Sinne.
+%
+% \StopEventually{\PrintIndex\PrintChanges}
+%
+% \iffalse
+%<*!letter>
+% \fi
+%
+% \iffalse
+%<*option>
+% \fi
+%
+%
+% \subsection{Optionen der Titelei}
+%
+% \begin{option}{titlepage}
+% \changes{v2.95c}{2006/08/21}{als \textsf{keyval}-Option}^^A
+% \changes{v3.12}{2013/11/21}{neuer Wert \texttt{firstiscover}}^^A
+% \changes{v3.17}{2015/03/10}{interne Speicherung des Werts}^^A
+% \begin{option}{notitlepage}
+% \changes{v2.95c}{2006/08/21}{Option ist obsolet}^^A
+% \changes{v3.01a}{2008/11/21}{standard statt obsolet}^^A
+% Es werden zei Arten von Titeln unterstützt. Da sind zum einen eigene
+% Titelseiten, zum anderen sogenannte Titelköpfe, also Titel, die nicht eine
+% eigene Seite erhalten, sondern am Anfang einer Seite stehen. Zwischen den
+% beiden Arten wird mit einer Option umgeschaltet. Ab Version~3.12 unterstützt
+% \KOMAScript{} außerdem die Einstellung \texttt{titlepage=firstiscover} bei
+% der die erste Titelseite als Umschlagseite gesetzt wird.
+% \begin{macro}{\if@titlepage}
+% \begin{macro}{\@titlepagetrue}
+% \begin{macro}{\@titlepagefalse}
+% Die gewählte Einstellung wird in einem Schalter gespeichert.
+% \begin{macrocode}
+%<*class>
+\newif\if@titlepage
+%<article>\@titlepagefalse
+%<report|book>\@titlepagetrue
+%</class>
+% \end{macrocode}
+% Im Falle von \textsf{scrextend} ist die Option Teil der Erweiterung.
+% \begin{macrocode}
+%<*package&extend>
+\scr@ext@activateable{title}{%
+ \scr@ifundefinedorrelax{if@titlepage}{%
+ \expandafter\newif\csname if@titlepage\endcsname
+ \@titlepagefalse
+ }{}%
+ \scr@ifundefinedorrelax{if@titlepageiscoverpage}{%
+ \expandafter\newif\csname if@titlepageiscoverpage\endcsname
+ \@titlepageiscoverpagefalse
+ }{}%
+%</package&extend>
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \begin{macrocode}
+%<*class|package>
+%<class>\newif\if@titlepageiscoverpage
+\KOMA@key{titlepage}[true]{%
+%<!(package&extend)> \ifstr{#1}{firstiscover}{%
+%<package&extend> \ifstr{##1}{firstiscover}{%
+ \@titlepagetrue
+ \@titlepageiscoverpagetrue
+ \FamilyKeyStateProcessed
+ \KOMA@kav@replacevalue{.%
+%<class> \KOMAClassFileName
+%<package&extend> scrextend.\scr@pkgextension
+ }{titlepage}{firstiscover}%
+ }{%
+ \def\FamilyElseValue{, `firstiscover'}%
+%<!(package&extend)> \KOMA@set@ifkey{titlepage}{@titlepage}{#1}%
+%<package&extend> \KOMA@set@ifkey{titlepage}{@titlepage}{##1}%
+ \ifx\FamilyKeyState\FamilyKeyStateProcessed
+ \KOMA@kav@remove{.%
+%<class> \KOMAClassFileName
+%<package&extend> scrextend.\scr@pkgextension
+ }{titlepage}{firstiscover}%
+ \KOMA@kav@replacebool{.%
+%<class> \KOMAClassFileName
+%<package&extend> scrextend.\scr@pkgextension
+ }{titlepage}{@titlepage}%
+ \@titlepageiscoverpagefalse
+ \fi
+ }%
+}
+\KOMA@kav@xadd{.%
+%<class> \KOMAClassFileName
+%<package&extend> scrextend.\scr@pkgextension
+}{titlepage}{\if@titlepage true\else false\fi}
+%<*extend>
+% \end{macrocode}
+% Diese Erweiterung soll dann auch tatsächlich sofort aktiviert werden:
+% \begin{macrocode}
+ \def\scr@ext@immediate@title{%
+ \scr@ext@activate{title}%
+ \let\scr@ext@immediate@title\relax
+ }%
+}
+%</extend>
+%</class|package>
+\KOMA@DeclareStandardOption%
+%<package> [scrextend]%
+ {notitlepage}{titlepage=false}
+% \end{macrocode}
+% \end{option}
+% \end{option}
+%
+% \begin{option}{abstract}
+% \changes{v2.95c}{2006/08/21}{neue \textsf{keyval}-Option}^^A
+% \begin{option}{abstracton}
+% \changes{v2.95c}{2006/08/21}{Option ist obsolet}^^A
+% \changes{v3.01a}{2008/11/21}{standard statt obsolet}^^A
+% \begin{option}{abstractoff}
+% \changes{v2.95c}{2006/08/21}{Option ist obsolet}^^A
+% \changes{v3.01a}{2008/11/21}{standard statt obsolet}^^A
+% Obwohl die Zusammenfassung nicht unbedingt auf einer Titelseite steht,
+% gehört sie doch zur Titelei und wird daher hier mit behandelt. Die
+% Zusammenfassung kann mit einem standardmäßigen Titel versehen werden. Der
+% Titel kann aber auch unterdrückt werden.
+% \iffalse
+%<*class>
+%<*article|report>
+% \fi
+% Bei Büchern gibt es keine Zusammenfassung als gesonderte Umgebung. Als
+% Ersatz kann bei Büchern auf \cs{addchap*} zurückgegriffen werden.
+% \begin{macro}{\if@abstrt}
+% \changes{v3.17}{2015/03/10}{wird von \cs{KOMA@ifkey} definiert}^^A
+% \begin{macro}{\@abstrttrue}
+% \begin{macro}{\@abstrtfalse}
+% Die Enscheidung, ob der Titel der Zusammenfassung gesetzt werden soll, wird
+% in einem Schalter gespeichert.
+% \begin{macrocode}
+\KOMA@ifkey{abstract}{@abstrt}
+\KOMA@DeclareStandardOption{abstracton}{abstract=true}
+\KOMA@DeclareStandardOption{abstractoff}{abstract=false}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{option}
+% \end{option}
+% \end{option}
+% \iffalse
+%</article|report>
+%</class>
+% \fi
+%
+%
+% \iffalse
+%</option>
+%<*body>
+% \fi
+%
+%
+% \subsection{Definitionen der Titelei}
+%
+% \begin{macro}{\extratitle}
+% \begin{macro}{\@extratitle}
+% \begin{macro}{\frontispiece}
+% \changes{v3.25}{2017/11/21}{neu}
+% \begin{macro}{\@frontispiece}
+% \changes{v3.25}{2017/11/21}{neu (intern)}
+% \begin{macro}{\titlehead}
+% \begin{macro}{\@titlehead}
+% \begin{macro}{\subject}
+% \begin{macro}{\@subject}
+% \begin{macro}{\subtitle}
+% \changes{v2.97c}{2007/06/20}{neue Möglichkeit}^^A
+% \begin{macro}{\@subtitle}
+% \changes{v2.97c}{2007/06/20}{neu (intern)}^^A
+% \begin{macro}{\publishers}
+% \begin{macro}{\@publishers}
+% \begin{macro}{\uppertitleback}
+% \begin{macro}{\@uppertitleback}
+% \begin{macro}{\lowertitleback}
+% \begin{macro}{\@lowertitleback}
+% \begin{macro}{\dedication}
+% \begin{macro}{\@dedication}
+% Da der Titel im \KOMAScript{} Paket wesentlich mehr Angaben erlaubt
+% als bei den Standardklassen, gibt es natürlich auch einige Befehle,
+% mit denen diese gesetzt werden können. Alle zusätzlichen Angaben
+% sind optional und können auch weggelassen werden. In diesem Fall
+% werden Leerfelder verwendet. Bis auf \cs{subject} sind alle
+% Zusatzbefehle \cs{long} deklariert, können also ganze Absätze
+% enthalten.
+% \begin{macrocode}
+%<package&extend>\scr@ext@addto@activateable{title}{%
+\newcommand*{\@extratitle}{}%
+\newcommand{\extratitle}[1]{\gdef\@extratitle{%
+%<extend> ##1%
+%<!extend> #1%
+}}%
+\newcommand*{\@frontispiece}{}%
+\newcommand{\frontispiece}[1]{\gdef\@frontispiece{%
+%<extend> ##1%
+%<!extend> #1%
+}}%
+\newcommand*{\@titlehead}{}%
+\newcommand{\titlehead}[1]{\gdef\@titlehead{%
+%<extend> ##1%
+%<!extend> #1%
+}}%
+\newcommand*{\@subject}{}%
+\newcommand*{\subject}[1]{\gdef\@subject{%
+%<extend> ##1%
+%<!extend> #1%
+}}%
+\newcommand*{\subtitle}[1]{\gdef\@subtitle{%
+%<extend> ##1%
+%<!extend> #1%
+}}%
+\newcommand*{\@subtitle}{}%
+\newcommand*{\@publishers}{}%
+\newcommand{\publishers}[1]{\gdef\@publishers{%
+%<extend> ##1%
+%<!extend> #1%
+}}%
+\newcommand*{\@uppertitleback}{}%
+\newcommand{\uppertitleback}[1]{\gdef\@uppertitleback{%
+%<extend> ##1%
+%<!extend> #1%
+}}%
+\newcommand*{\@lowertitleback}{}%
+\newcommand{\lowertitleback}[1]{\gdef\@lowertitleback{%
+%<extend> ##1%
+%<!extend> #1%
+}}%
+\newcommand*{\@dedication}{}%
+\newcommand{\dedication}[1]{\gdef\@dedication{%
+%<extend> ##1%
+%<!extend> #1%
+}}%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\next@tpage}
+% \changes{v2.3b}{1995/07/24}{\cs{null} entfernt.}
+% \changes{v2.3g}{1996/01/14}{\cs{newpage} durch \cs{clearpage} ersetzt}
+% \changes{v3.11c}{2013/02/14}{Fußnoten der letzten Titelseite ausgeben}^^A
+% \changes{v3.11c}{2013/02/14}{Fußnoten für die nächste Titelseite
+% initialisieren}^^A
+% \changes{v3.20}{2015/10/14}{\cs{setparsizes} bzw. entsprechende Angaben
+% für die Längen eingefügt}^^A
+% \begin{macro}{\next@tdpage}
+% \changes{v3.11c}{2013/02/14}{neue Anweisung (intern)}^^A
+% \changes{v3.12}{2013/11/21}{\cs{titlepage@restore} hinzugefügt}
+% Innerhalb eines Titels auf die nächste Seite bzw. nächste rechte Seite
+% umschalten.
+% \begin{macrocode}
+\newcommand*{\next@tpage}{%
+ \@thanks\global\let\@thanks\@empty
+ \clearpage
+ \csname titlepage@restore\endcsname
+%<!extend> \setparsizes{\z@}{\z@}{\z@\@plus 1fil}\par@updaterelative
+%<extend> \parskip\z@ \parindent\z@ \parfillskip\z@\@plus 1fil
+ \thispagestyle{empty}%
+ \let\footnote\thanks
+ \setcounter{footnote}{0}%
+}
+\newcommand*{\next@tdpage}{%
+ \next@tpage\if@twoside \ifodd\value{page}\else\null\next@tpage\fi\fi
+}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \begin{macro}{\maketitle}
+% \changes{v3.11c}{2013/02/14}{Schmutztitel bei Titelkopf in eigene
+% Anweisung verlagert}^^A
+% \changes{v3.11c}{2013/02/14}{Verwendung von \cs{next@tdpage}}^^A
+% Mit dieser Anweisung wird der Titel generiert, dessen Inhalt zuvor
+% gesetzt wurde. Es muss unterschieden werden, ob der Titel auf einer
+% eigenen Titelseite oder als Seitenkopf erstellt werden soll. Der
+% \KOMAScript-Titel ist u.\,U. sehr groß. Im Fall dass diverse
+% Zusatzelemente verwendet werden, sollte eigentlich immer eine
+% Titelseite verwendet werden.%
+% \changes{v2.1a}{1994/10/29}{das Hilfskonstrukt \cs{@maketitle}
+% wurde aus der Unterscheidung herausgenommen (für den Fall, dass
+% \cs{maketitle} von einem Paket überladen wird)}^^A
+% \changes{v2.3a}{1995/07/08}{\texttt{plus} durch \cs{@plus}
+% ersetzt}^^A
+% \changes{v2.3a}{1995/07/08}{\texttt{fill} durch \cs{fill}
+% ersetzt}^^A
+% \changes{v2.3d}{1995/08/19}{\cs{fill} durch \texttt{fill}
+% ersetzt}^^A
+% \changes{v2.3a}{1995/07/08}{\cs{vfil} durch \cs{vfill} ersetzt}^^A
+% \changes{v2.3b}{1995/07/24}{Umbruch bei \cs{@extratitle} in der
+% beidseitigen Titelseite korrigiert}^^A
+% \changes{v2.3g}{1996/01/14}{\cs{footnote} funktioniert nun auch
+% im Titel}^^A
+% \changes{v2.4}{1996/02/25}{\cs{footnote} funktioniert nun
+% wirklich im Titel}^^A
+% \changes{v2.4h}{1996/11/09}{egal ob der Titel auf eine Extraseite
+% kommt oder nicht, \cs{@title} wird mit \cs{sectfont} gesetzt,
+% wobei die Größe neuerdings danach eingestellt wird}^^A
+% \changes{v2.4l}{1997/02/06}{symbolische Fußnoten und
+% Fußnotensymbolbreiten von 0\,pt zur besseren Zentrierung des
+% Autors sind auch bei Titelseiten angebracht}^^A
+% \changes{v2.8p}{2001/09/22}{\cs{titlefont} an Stelle von
+% \cs{sectfont}}^^A
+% \changes{v2.95c}{2006/08/21}{Absatzgrundeinstellungen}^^A
+% \changes{v2.97c}{2007/08/31}{Vakatseiten in der Titelei immer im
+% Seitenstil \texttt{empty}}^^A
+% \changes{v3.04a}{2009/07/14}{die Unterscheidung, ob Titelseite oder
+% Titelkopf sollte erst in \cs{maketitle} und nicht schon bei dessen
+% Definition erfolgen}^^A
+% \changes{v3.12}{2013/05/29}{Verwendung neuer Font-Elemente
+% \texttt{titlehead}, \texttt{author}, \texttt{date}, \texttt{publishers},
+% \texttt{dedication}}^^A
+% \changes{v3.25}{2017/11/21}{Verwendung von \cs{@frontispiece}}^^A
+% \begin{macrocode}
+%<package&extend>\let\maketitle\relax\let\@maketitle\relax
+\newcommand*\maketitle[1][1]{%
+% \end{macrocode}
+% Da ab Version~3.12 auch mehrere \cs{maketitle} möglich sind, muss ggf. für
+% eine korrekte Definition von \cs{and} gesorgt werden:
+% \begin{macrocode}
+ \expandafter\ifnum \csname scr@v@3.12\endcsname>\scr@compatibility\relax
+ \else
+ \def\and{%
+ \end{tabular}%
+ \hskip 1em \@plus.17fil%
+ \begin{tabular}[t]{c}%
+ }%
+ \fi
+% \end{macrocode}
+% Es folgt die eigentliche Definition, die davon abhängt, ob wir uns im
+% doppelseitigen Modus befinden oder nicht.
+% \begin{macrocode}
+ \if@titlepage
+ \begin{titlepage}
+ \setcounter{page}{%
+%<extend> ##1%
+%<!extend> #1%
+ }%
+% \end{macrocode}
+% \changes{v3.12}{2013/11/21}{Berücksichtigung von
+% \texttt{titlepage!=firstiscover}}^^A
+% Ab Version~3.12 gibt es hier eine Sonderbehandlung für die erste Titelseite,
+% falls es sich dabei um eine Umschlagsseite handeln soll. In diesem Fall
+% werden die Maße der Seite verändert, was später per \cs{titlepage@restore}
+% ggf. wieder zurückgenommen wird.
+% \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
+ \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
+ \else
+ \let\titlepage@restore\relax
+ \fi
+ \let\footnotesize\small
+ \let\footnoterule\relax
+ \let\footnote\thanks
+ \renewcommand*\thefootnote{\@fnsymbol\c@footnote}%
+ \let\@oldmakefnmark\@makefnmark
+ \renewcommand*{\@makefnmark}{\rlap\@oldmakefnmark}%
+ \ifx\@extratitle\@empty
+ \ifx\@frontispiece\@empty
+ \else
+ \if@twoside\mbox{}\next@tpage\fi
+ \noindent\@frontispiece\next@tdpage
+ \fi
+ \else
+ \noindent\@extratitle
+ \ifx\@frontispiece\@empty
+ \else
+ \next@tpage
+ \noindent\@frontispiece
+ \fi
+ \next@tdpage
+ \fi
+%<!extend> \setparsizes{\z@}{\z@}{\z@\@plus 1fil}\par@updaterelative
+%<extend> \parskip\z@ \parindent\z@ \parfillskip\z@\@plus 1fil
+ \ifx\@titlehead\@empty \else
+ \begin{minipage}[t]{\textwidth}%
+ \usekomafont{titlehead}{\@titlehead\par}%
+ \end{minipage}\par
+ \fi
+ \null\vfill
+ \begin{center}
+ \ifx\@subject\@empty \else
+ {\usekomafont{subject}{\@subject\par}}%
+ \vskip 3em
+ \fi
+ {\usekomafont{title}{\huge \@title\par}}%
+ \vskip 1em
+ {\ifx\@subtitle\@empty\else\usekomafont{subtitle}{\@subtitle\par}\fi}%
+ \vskip 2em
+ {%
+ \usekomafont{author}{%
+ \lineskip 0.75em
+ \begin{tabular}[t]{c}
+ \@author
+ \end{tabular}\par
+ }%
+ }%
+ \vskip 1.5em
+ {\usekomafont{date}{\@date \par}}%
+ \vskip \z@ \@plus3fill
+ {\usekomafont{publishers}{\@publishers \par}}%
+ \vskip 3em
+ \end{center}\par
+ \@thanks\let\@thanks\@empty
+ \vfill\null
+ \if@twoside
+% \end{macrocode}
+% \changes{v3.12}{2013/11/21}{Rückseite wird nur bei Bedarf ausgegeben.}^^A
+% Ab Version~3.12 wird die Rückseite der Titelseite nur noch bei Bedarf
+% ausgegeben. Das gilt aber nur, wenn keine Kompatibilität mit früheren
+% Versionen verlangt ist.
+% \begin{macrocode}
+ \@tempswatrue
+ \expandafter\ifnum \@nameuse{scr@v@3.12}>\scr@compatibility\relax
+ \else
+ \ifx\@uppertitleback\@empty\ifx\@lowertitleback\@empty
+ \@tempswafalse
+ \fi\fi
+ \fi
+ \if@tempswa
+ \next@tpage
+ \begin{minipage}[t]{\textwidth}
+ \@uppertitleback
+ \end{minipage}\par
+ \vfill
+ \begin{minipage}[b]{\textwidth}
+ \@lowertitleback
+ \end{minipage}\par
+ \@thanks\let\@thanks\@empty
+ \fi
+% \end{macrocode}
+% \changes{v3.27}{2019/01/01}{Warnung für nicht leere Titelrückseite bei
+% einseitigen Dokumenten}^^A
+% Bei einseitigen Dokumenten werden eventuell gesetzte Inhalte von
+% \cs{uppertitleback} oder \cs{lowertitleback} nicht ausgegeben.
+% \begin{macrocode}
+ \else
+ \ifx\@uppertitleback\@empty\else
+%<package> \PackageWarning{scrextend}{%
+%<class> \ClassWarning{\KOMAClassName}{%
+ non empty \string\uppertitleback\space ignored
+ by \string\maketitle\MessageBreak
+ in `twoside=false' mode%
+ }%
+ \fi
+ \ifx\@lowertitleback\@empty\else
+%<package> \PackageWarning{scrextend}{%
+%<class> \ClassWarning{\KOMAClassName}{%
+ non empty \string\lowertitleback\space ignored
+ by \string\maketitle\MessageBreak
+ in `twoside=false' mode%
+ }%
+ \fi
+ \fi
+ \ifx\@dedication\@empty
+ \else
+ \next@tdpage\null\vfill
+ {\centering\usekomafont{dedication}{\@dedication \par}}%
+ \vskip \z@ \@plus3fill
+ \@thanks\let\@thanks\@empty
+% \end{macrocode}
+% \changes{v3.12}{2013/10/31}{Nach der Widmung kein \cs{next@tdpage},
+% sondern nur \cs{cleardoubleemptypage}}^^A
+% \begin{macrocode}
+ \cleardoubleemptypage
+ \fi
+% \end{macrocode}
+% Falls wir uns noch immer auf einer Umschlagseite befinden, muss diese hier
+% beendet werden.
+% \begin{macrocode}
+ \ifx\titlepage@restore\relax\else\clearpage\titlepage@restore\fi
+ \end{titlepage}
+% \end{macrocode}
+% \changes{v2.3a}{1995/07/08}{Verwendung von \cs{@makefnmark} in
+% \cs{@makefntext}}^^A
+% \changes{v2.3a}{1995/07/08}{Definition von \cs{@makefnmark} und
+% \cs{@makefntext} unabhängig von math}^^A
+% \changes{v2.3e}{1995/08/30}{optionales Argument bei der
+% einseitigen Version erlauben und ignorieren}^^A
+% \changes{v2.3g}{1996/01/14}{mehrfach \cs{null} bei
+% \cs{next@tpage} ergänzt}^^A
+% \changes{v2.4l}{1997/02/06}{es ist nicht mehr notwendig
+% \cs{\@makefntext} umzudefinieren, stattdessen wird nur
+% \cs{\@makefnmark} umdefiniert}^^A
+% \changes{v2.8d}{2001/07/05}{\cs{titlepagestyle} statt
+% \texttt{plain}}^^A
+% \changes{v3.12a}{2014/03/03}{Leerzeichenfehler behoben}^^A
+% \changes{v3.12a}{2014/03/03}{Schmutztitel wird nur ausgegeben, wenn er
+% nicht leer ist}^^A
+% \changes{v3.12a}{2014/03/03}{\cs{next@tdpage} aus \cs{@maketitle} und
+% \cs{@makeextrattitle} entfernt}^^A
+% \changes{v3.19}{2015/08/25}{Seitenstil nur ändern wenn nicht leer}^^A
+% \begin{macrocode}
+ \else
+ \par
+ \@tempcnta=%
+%<extend> ##1%
+%<!extend> #1%
+ \relax\ifnum\@tempcnta=1\else
+%<class> \ClassWarning{\KOMAClassName}{%
+%<package> \PackageWarning{scrextend}{%
+ Optional argument of \string\maketitle\space ignored\MessageBreak
+ in `titlepage=false' mode%
+ }%
+ \fi
+ \ifx\@uppertitleback\@empty\else
+%<package> \PackageWarning{scrextend}{%
+%<class> \ClassWarning{\KOMAClassName}{%
+ non empty \string\uppertitleback\space ignored
+ by \string\maketitle\MessageBreak
+ in `titlepage=false' mode%
+ }%
+ \fi
+ \ifx\@lowertitleback\@empty\else
+%<package> \PackageWarning{scrextend}{%
+%<class> \ClassWarning{\KOMAClassName}{%
+ non empty \string\lowertitleback\space ignored
+ by \string\maketitle\MessageBreak
+ in `titlepage=false' mode%
+ }%
+ \fi
+ \begingroup
+ \let\titlepage@restore\relax
+ \renewcommand*\thefootnote{\@fnsymbol\c@footnote}%
+ \let\@oldmakefnmark\@makefnmark
+ \renewcommand*{\@makefnmark}{\rlap\@oldmakefnmark}%
+ \next@tdpage
+ \if@twocolumn
+ \ifnum \col@number=\@ne
+ \ifx\@extratitle\@empty
+ \ifx\@frontispiece\@empty\else\if@twoside\mbox{}\fi\fi
+ \else
+ \@makeextratitle
+ \fi
+ \ifx\@frontispiece\@empty
+ \ifx\@extratitle\@empty\else\next@tdpage\fi
+ \else
+ \next@tpage
+ \@makefrontispiece
+ \next@tdpage
+ \fi
+ \@maketitle
+ \else
+ \ifx\@extratitle\@empty
+ \ifx\@frontispiece\@empty\else\if@twoside\mbox{}\fi\fi
+ \else
+ \twocolumn[\@makeextratitle]%
+ \fi
+ \ifx\@frontispiece\@empty
+ \ifx\@extratitle\@empty\else\next@tdpage\fi
+ \else
+ \next@tpage
+ \twocolumn[\@makefrontispiece]%
+ \next@tdpage
+ \fi
+ \twocolumn[\@maketitle]%
+ \fi
+ \else
+ \ifx\@extratitle\@empty
+ \ifx\@frontispiece\@empty\else \mbox{}\fi
+ \else
+ \@makeextratitle
+ \fi
+ \ifx\@frontispiece\@empty
+ \ifx\@extratitle\@empty\else\next@tdpage\fi
+ \else
+ \next@tpage
+ \@makefrontispiece
+ \next@tdpage
+ \fi
+ \@maketitle
+ \fi
+ \ifx\titlepagestyle\@empty\else\thispagestyle{\titlepagestyle}\fi
+ \@thanks
+ \endgroup
+ \fi
+ \setcounter{footnote}{0}%
+% \end{macrocode}
+% \changes{v3.12}{2013/11/21}{die Titelei wird nur noch bei Kompatibilität
+% zu früheren Versionen zerstört}^^A
+% \begin{macrocode}
+ \expandafter\ifnum \csname scr@v@3.12\endcsname>\scr@compatibility\relax
+ \let\thanks\relax
+ \let\maketitle\relax
+ \let\@maketitle\relax
+% \end{macrocode}
+% \changes{v2.3g}{1996/01/14}{Verwendung von \cs{global}\cs{let}
+% statt \cs{gdef}, um Speicher zu sparen}
+% \changes{v2.3g}{1996/01/14}{\cs{@date} und \cs{title}
+% u.\,ä. ebenfalls löschen, um Speicher zu sparen}
+% \begin{macrocode}
+ \global\let\@thanks\@empty
+ \global\let\@author\@empty
+ \global\let\@date\@empty
+ \global\let\@title\@empty
+ \global\let\@subtitle\@empty
+ \global\let\@extratitle\@empty
+ \global\let\@frontispiece\@empty
+ \global\let\@titlehead\@empty
+ \global\let\@subject\@empty
+ \global\let\@publishers\@empty
+ \global\let\@uppertitleback\@empty
+ \global\let\@lowertitleback\@empty
+ \global\let\@dedication\@empty
+ \global\let\author\relax
+ \global\let\title\relax
+ \global\let\extratitle\relax
+ \global\let\titlehead\relax
+ \global\let\subject\relax
+ \global\let\publishers\relax
+ \global\let\uppertitleback\relax
+ \global\let\lowertitleback\relax
+ \global\let\dedication\relax
+ \global\let\date\relax
+ \fi
+ \global\let\and\relax
+}%
+% \end{macrocode}
+% \begin{macro}{\@maketitle}
+% \changes{v2.95c}{2006/08/21}{Absatzgrundeinstellungen}^^A
+% \changes{v3.11c}{2012/02/14}{Schmutztitel in eigene Anweisung verlagert}^^A
+% \changes{v3.12a}{2014/03/03}{\cs{next@tdpage} aus \cs{@maketitle}
+% entfernt}^^A
+% \begin{macro}{\@makeextratitle}
+% \changes{v3.11c}{2013/02/14}{neue Anweisung (intern)}^^A
+% \changes{v3.12a}{2014/03/03}{\cs{next@tdpage} aus \cs{@makeextrattitle}
+% entfernt}^^A
+% Damit wird im Fall des Titelkopfes die eigentliche Arbeit geleistet.
+% \begin{macro}{\@makefrontispiece}
+% \changes{v3.25}{2017/11/21}{neu}^^A
+% \begin{macrocode}
+\newcommand*{\@makeextratitle}{%
+ \ifx\@extratitle\@empty \else
+ \noindent\@extratitle\par
+ \fi
+}
+\newcommand*{\@makefrontispiece}{%
+ \ifx\@frontispiece\@empty \else
+ \noindent\@frontispiece\par
+ \fi
+}
+\newcommand*{\@maketitle}{%
+ \global\@topnum=\z@
+%<!extend> \setparsizes{\z@}{\z@}{\z@\@plus 1fil}\par@updaterelative
+%<extend> \parskip\z@ \parindent\z@ \parfillskip\z@\@plus 1fil
+ \ifx\@titlehead\@empty \else
+ \begin{minipage}[t]{\textwidth}
+ \usekomafont{titlehead}{\@titlehead\par}%
+ \end{minipage}\par
+ \fi
+ \null
+ \vskip 2em%
+ \begin{center}%
+ \ifx\@subject\@empty \else
+ {\usekomafont{subject}{\@subject \par}}%
+ \vskip 1.5em
+ \fi
+ {\usekomafont{title}{\huge \@title \par}}%
+ \vskip .5em
+ {\ifx\@subtitle\@empty\else\usekomafont{subtitle}\@subtitle\par\fi}%
+ \vskip 1em
+ {%
+ \usekomafont{author}{%
+ \lineskip .5em%
+ \begin{tabular}[t]{c}
+ \@author
+ \end{tabular}\par
+ }%
+ }%
+ \vskip 1em%
+ {\usekomafont{date}{\@date \par}}%
+ \vskip \z@ \@plus 1em
+ {\usekomafont{publishers}{\@publishers \par}}%
+ \ifx\@dedication\@empty \else
+ \vskip 2em
+ {\usekomafont{dedication}{\@dedication \par}}%
+ \fi
+ \end{center}%
+ \par
+ \vskip 2em
+}%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\coverpagetopmargin}
+% \changes{v3.12}{2013/11/21}{neu}^^A
+% Oberer Rand für Umschlagsseiten.
+% \begin{macrocode}
+\newcommand*{\coverpagetopmargin}{%
+ \dimexpr \topmargin+1in\relax
+}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\coverpagebottommargin}
+% \changes{v3.12}{2013/11/21}{neu}^^A
+% Unterer Rand für Umschlagsseiten.
+% \begin{macrocode}
+\newcommand*{\coverpagebottommargin}{%
+ 2\dimexpr\coverpagetopmargin\relax
+}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\coverpageleftmargin}
+% \changes{v3.12}{2013/11/21}{neu}^^A
+% Linker Rand für Umschlagsseiten.
+% \begin{macrocode}
+\newcommand*{\coverpageleftmargin}{%
+ \dimexpr \evensidemargin+1in\relax
+}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\coverpagerightmargin}
+% \changes{v3.12}{2013/11/21}{neu}^^A
+% Oberer Rand für Umschlagsseiten.
+% \begin{macrocode}
+\newcommand*{\coverpagerightmargin}{\coverpageleftmargin}
+% \end{macrocode}
+% \end{macro}
+%
+%
+% \subsection{Umgebung für die Titelseite}
+%
+% \begin{environment}{titlepage}
+% Die Titelseite bedarf ebenfalls einer gesonderter Umgebung. Beim
+% zweispaltigen Layout soll die Titelseite z.\,B. einspaltig gedruckt
+% werden.
+% \begin{macrocode}
+%<package&extend>\scr@ifundefinedorrelax{titlepage}{%
+\newenvironment{titlepage}{%
+%<report|book> \cleardoublepage
+ \if@twocolumn
+ \@restonecoltrue\onecolumn
+ \else
+ \@restonecolfalse\newpage
+ \fi
+ \thispagestyle{empty}%
+ \if@compatibility
+ \setcounter{page}{0}%
+ \fi
+}{%
+ \if@restonecol\twocolumn \else \newpage \fi
+}%
+%<package&extend>}{}%
+% \end{macrocode}
+% \end{environment}
+%
+% Im Fall von \textsf{scrextend} muss jetzt das Kürzel \emph{title} beendet
+% werden:
+% \begin{macrocode}
+%<package&extend>}\csname scr@ext@immediate@title\endcsname
+% \end{macrocode}
+%
+% \subsection{Fonts für den Titel}
+%
+% \begin{macro}{\titlefont}
+% \changes{v2.8p}{2001/09/22}{neu}^^A
+% Wie oben zu sehen ist, wird in der Titelei ein eigenes Schriftmakro
+% verwendet. Dieses ist als internes Makro zu verstehen. Der Anwender
+% sollte stattdessen auf das entsprechende Element zugreifen (siehe
+% unten).
+% \begin{macro}{\subject@font}
+% \changes{v2.8q}{2002/01/14}{neu (intern)}^^A
+% \changes{v2.95}{2002/06/26}{jetzt auch bei \textsf{scrbook},
+% \textsf{scrreprt} und \textsf{scrartcl}}
+% Ebenso verhält es sich mit den \emph{Subject} im Titel. Hier ist
+% aber von vornherein ein internes Makro definiert.
+% \begin{macrocode}
+\newcommand*\titlefont{\sectfont}%
+\newcommand*{\subject@font}{\normalfont\normalcolor\bfseries\Large}%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{KOMAfont}{subtitle}
+% \changes{v2.97c}{2007/06/20}{neu}^^A
+% \begin{macrocode}
+\newkomafont{subtitle}{\usekomafont{title}\large}%
+% \end{macrocode}
+% \end{KOMAfont}
+%
+% \begin{KOMAfont}{titlehead}
+% \changes{v3.12}{2013/05/29}{neu}^^A
+% \begin{macrocode}
+\newkomafont{titlehead}{}%
+% \end{macrocode}
+% \end{KOMAfont}
+%
+% \begin{KOMAfont}{author}
+% \changes{v3.12}{2013/05/29}{neu}^^A
+% \begin{macrocode}
+\newkomafont{author}{\Large}
+% \end{macrocode}
+% \end{KOMAfont}
+%
+% \begin{KOMAfont}{date}
+% \changes{v3.12}{2013/05/29}{neu}^^A
+% \begin{macrocode}
+\newkomafont{date}{\Large}
+% \end{macrocode}
+% \end{KOMAfont}
+%
+% \begin{KOMAfont}{publishers}
+% \changes{v3.12}{2013/05/29}{neu}^^A
+% \begin{macrocode}
+\newkomafont{publishers}{\Large}
+% \end{macrocode}
+% \end{KOMAfont}
+%
+% \begin{KOMAfont}{dedication}
+% \changes{v3.12}{2013/05/29}{neu}^^A
+% \begin{macrocode}
+\newkomafont{dedication}{\Large}
+% \end{macrocode}
+% \end{KOMAfont}
+%
+% \begin{macro}{\scr@fnt@title}
+% \changes{v2.8o}{2001/09/14}{neues Element \texttt{title}}
+% \begin{macro}{\scr@fnt@subject}
+% \changes{v2.8q}{2002/01/14}{neues Element \texttt{subject}}
+% \changes{v2.95}{2002/06/26}{jetzt auch bei \textsf{scrbook},
+% \textsf{scrreprt} und \textsf{scrartcl}}
+% Die beiden Elemente, deren Schrift geändert werden kann.
+% \begin{macrocode}
+\newcommand*{\scr@fnt@title}{\titlefont}%
+\newcommand*{\scr@fnt@subject}{\subject@font}%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+%
+% \subsection{Umgebung für die Zusammenfassung}
+%
+% \begin{environment}{abstract}
+% \textsf{scrartcl} und \textsf{scrreprt} bieten die Möglichkeit einer
+% Zusammenfassung, eines sogenannten \emph{Abstracts}. Wenn eine
+% Titelseite verlangt wurde, wird auch die Zusammenfassung auf eine
+% eigene Seite gesetzt. \textsf{scrbook} kennt keine Zusammenfassung
+% dieser Art. In Büchern werden Zusammenfassungen üblicherweise mit
+% Kapitelcharakter gesetzt.
+% \iffalse
+%<*class>
+%<*article|report>
+% \fi
+% \changes{v2.3a}{1995/07/08}{\cs{@endparpenalty} zur Verhinderung
+% eines Seitenumbruchs nach dem Abstract-Kopf eingefügt}^^A
+% \changes{v2.3g}{1996/01/14}{\cs{@beginparpenalty} zur
+% Verhinderung eines Seitenumbruchs vor dem Abstract-Kopf
+% eingefügt}^^A
+% \changes{v2.7a}{2001/01/04}{statt \cs{section*} wird nun
+% \cs{addsec*} verwendet, damit die Kolumnentitel korrekt
+% behandelt werden}^^A
+% \changes{v3.04a}{2009/07/14}{die Unterscheidung, ob Titelseite oder
+% Titelkopf sollte erst in der Umgebung und nicht schon bei deren
+% Definition erfolgen}^^A
+% \begin{macrocode}
+\newenvironment{abstract}{%
+ \if@titlepage
+ \titlepage
+ \null\vfil
+ \@beginparpenalty\@lowpenalty
+ \if@abstrt
+ \begin{center}
+ \normalfont\sectfont\nobreak\abstractname
+ \@endparpenalty\@M
+ \end{center}
+ \fi
+ \else
+ \if@twocolumn\if@abstrt
+ \addsec*{\abstractname}
+ \fi
+ \else
+ \if@abstrt
+ \small
+ \begin{center}
+ {\normalfont\sectfont\nobreak\abstractname
+ \vspace{-.5em}\vspace{\z@}}%
+ \end{center}
+ \fi
+ \quotation
+ \fi
+ \fi
+}{%
+ \if@titlepage
+ \par\vfil\null\endtitlepage
+ \else
+ \if@twocolumn\else\endquotation\fi
+ \fi
+}
+% \end{macrocode}
+% \end{environment}^^A abstract
+%
+% \begin{macro}{\abstractname}
+% Name der Zusammenfassung.
+% \begin{macrocode}
+\newcommand*\abstractname{Abstract}
+% \end{macrocode}
+% \end{macro}^^A \abstractname
+%
+% \iffalse
+%</article|report>
+%</class>
+% \fi
+%
+%
+% \iffalse
+%</body>
+% \fi
+%
+% \iffalse
+%</!letter>
+% \fi
+%
+% \Finale
+%
+\endinput
+%
+% end of file `scrkernel-title.dtx'
+%%% Local Variables:
+%%% mode: doctex
+%%% TeX-master: t
+%%% End: