diff options
Diffstat (limited to 'macros/latex/contrib/tudscr/source/tudscr-layout.dtx')
-rw-r--r-- | macros/latex/contrib/tudscr/source/tudscr-layout.dtx | 1825 |
1 files changed, 1825 insertions, 0 deletions
diff --git a/macros/latex/contrib/tudscr/source/tudscr-layout.dtx b/macros/latex/contrib/tudscr/source/tudscr-layout.dtx new file mode 100644 index 0000000000..4e6fe56ae7 --- /dev/null +++ b/macros/latex/contrib/tudscr/source/tudscr-layout.dtx @@ -0,0 +1,1825 @@ +% \CheckSum{1215} +% \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-layout.dtx +%<*dtx> +% \fi +% +\ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi +\ProvidesFile{tudscr-layout.dtx}[2019/07/19 v2.06c TUD-Script\space% + (layout)% +] +% +% \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-layout.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/07/08}{\cs{FamilyKeyState} wird von Optionen genutzt}^^A +% \changes{v2.05}{2015/07/06}{Layout für Poster}^^A +% +% \section{Das Layout des \CDs} +% +% Unter Layout wird die Wahl von Schriftart und "~größe, die Positionierung +% verschiedener Textelemente sowie die farbliche Gestaltung verstanden. Für das +% \CD gibt es dabei drei wesentliche Ausprägungen, die für die verschiedenen +% Elemente auch unabhängig gewählt werden können. +% +% Für das \CD werden sowohl Teile- als auch die Kapitelseiten neu gestaltet. +% Es werden eine monochrome Version, eine Version mit leichtem Farbeinsatz und +% eine durchweg farbige Version bereitgestellt. Außerdem wird hier das Aussehen +% und die Position der Überschriften festgelegt. +% +% \StopEventually{\PrintIndex\PrintChanges\PrintToDos} +% +% \iffalse +%<*class&option> +% \fi +% +% \subsection{Gestalt von Umschlagseite, Titel, Teile und Kapitel} +% +% Ein zentraler Teil der Wrapper-Klassen ist die Auswahl der Darstellung des +% \CDs. Dabei kann gewählt werden, ob es einfarbig, mit leichtem oder aber mit +% starkem Farbeinsatz genutzt werden soll. Die folgenden Optionen sind hierfür +% zuständig. +% +% \begin{macro}{\tud@cd@switch} +% Dies sind die Standardoptionen für alle einzelnen Einstellungen des Layouts. +% Es gibt die Varianten monochrom~(1), leichter~(2) und voller Farbeinsatz~(5) +% sowie die Möglichkeit, das \CD vollständig zu deaktivieren~(0). Außerdem kann +% die farbige Ausprägung des Querbalkens im Zusammenspiel mit dem Seitenkopf +% festgelegt werden (farbiger Querbalken~(3), farbiger Kopf~(4) und voller +% Farbeinsatz mit hervorgehobenem Querbalken~(6)). +% \begin{macrocode} +\newcommand*\tud@cd@switch{} +\edef\tud@cd@switch{% + \TUD@bool@numkey,% + {nocolor}{1},{nocolour}{1},{monochrome}{1},{monochromatic}{1},% + {lite}{2},{colorlite}{2},{litecolor}{2},{colourlite}{2},{litecolour}{2},% + {light}{2},{colorlight}{2},{lightcolor}{2},{colourlight}{2},{lightcolour}{2},% + {pale}{2},{colorpale}{2},{palecolor}{2},{colourpale}{2},{palecolour}{2},% + {colorbar}{3},{barcolor}{3},{colourbar}{3},{barcolour}{3},% + {bicolor}{4},{bicolour}{4},{twocolor}{4},{twocolour}{4},% + {bichrome}{4},{bichromatic}{4},{dichrome}{4},{dichromatic}{4},% + {color}{5},{colour}{5},% + {full}{6},{colorfull}{6},{fullcolor}{6},{colourfull}{6},{fullcolour}{6}% +} +% \end{macrocode} +% \end{macro}^^A \tud@cd@switch +% \begin{option}{cd} +% \changes{v2.04}{2015/05/18}{Wert \val{barcolor} neu}^^A +% \begin{macro}{\tud@cd@num} +% Diese Option dient für die Hauptklassen zur globalen Einstellung für Cover- +% Titel-, Teil- und Kapitelseiten. Mit dem Schalter werden für alle Komponenten +% die gleichen Einstellungen gesetzt. Die Standardfarbe des Kopfes der Seiten +% im \pgs{tudheadings}-Stil ist schwarz und wird für die farbigen Layouts auf +% dunkelblau gesetzt. Abhängig von der gewählten Option~-- der nummerische Wert +% ist über \cs{tud@cd@switch} festgelegt~-- werden die sog. Layoutschlüssel +% (\cs{tud@cd@\meta{Typ}@num}) auf einen Wert gesetzt (0\dots 6), welcher +% später ausgewertet werden kann. Der Schalter für Kapitel wird lediglich für +% die Klassen \cls{tudscrbook} und \cls{tudscrreprt} definiert und genutzt. +% Damit werden alle Komponenten mit einer zentralen Option festgelegt, können +% aber auch durch den Nutzer explizit überschrieben werden. +% +% Für die Klasse \cls{tudscrposter} wird mit der Option die farbige Ausprägung +% eines Posters definiert. Dabei sind alle Werte gültig, die auch für die +% meisten anderen Layouteinstellungen verwendet werden können. Abhängig vom +% gewählten Wert, wird der Seitenstil, die Ausprägung der Fußzeile sowie die +% farbliche Gestalt von Kopf- und Fußzeile festgelegt. Da dabei unter anderem +% auch gegebenenfalls der Seitenstil auf einen vom Typ \pgs{tudheadings} +% festgelegt wird, erfolgt die Ausführung der Option frühestens zu Beginn des +% Dokumentes. +% \begin{macrocode} +\newcommand*\tud@cd@num{0} +\TUD@key{cd}[true]{% + \TUD@set@numkey{cd}{tud@cd@num}{\tud@cd@switch}{#1}% + \ifx\FamilyKeyState\FamilyKeyStateProcessed% +% \end{macrocode} +% Die Umschlagseite wird standardmäßig immer monochrom gesetzt. +% \begin{macrocode} +%<*book|report|article> + \ifcase\tud@cd@num\relax% false + \TUD@key@preset{cdcover}{false}% + \else% !false + \TUD@key@preset{cdcover}{true}% + \fi% +%</book|report|article> +% \end{macrocode} +% Alle übrigen Varianten des Layouts im \CD~-- schwarze Schrift und schwarzer +% Kopf, blaue Schrift und blauer Kopf, blaue Schrift und farbiger Querbalken, +% blaue Schrift und zweifarbiger Kopf sowie farbiger Hintergrund mit weißer +% Schrift und entweder Outline oder farbigem Querbalken im Kopf~-- werden als +% Voreinstellung an die anderen Schlüssel durgereicht. +% \begin{macrocode} + \TUD@key@preset{cdtitle}{#1}% + \TUD@key@preset{cdpart}{#1}% +%<*book|report> + \TUD@key@preset{cdchapter}{#1}% +%</book|report> + \TUD@key@preset{cdsection}{#1}% +% \end{macrocode} +% Die Ausführung des Befehls \cs{tud@cd@process} sorgt dafür, dass alle +% Optionen auch verarbeitet und wirksam werden. Dieser wird standardmäßig nach +% der Abarbeitung aller Optionen innerhalb der Präambel einmalig ausgeführt. +% Deshalb wird er hier nur innerhalb des Dokumentes genutzt. Dies gilt auch für +% die folgenden Optionen. +% \begin{macrocode} + \TUD@SpecialOptionAtDocument{tud@cd@process}% +% \end{macrocode} +% Innerhalb der Präambel wird der Satzspiegel abhängig vom gewünschten Layout +% festgelegt. Dies kann vom Benutzer mit dem Setzen der Option \opt{cdgeometry} +% überschrieben werden. +% \begin{macrocode} + \if@atdocument\else% + \ifcase\tud@cd@num\relax% false + \tud@locked@num@preset{tud@cdgeometry@num}{0}% + \else% !false + \tud@locked@num@preset{tud@cdgeometry@num}{2}% + \fi% + \fi% + \fi% +} +% \end{macrocode} +% \end{macro}^^A \tud@cd@num +% \end{option}^^A cd +% \begin{option}{cdcover} +% \changes{v2.02}{2014/08/08}{neue Option für \cs{makecover}}^^A +% \changes{v2.04}{2015/05/18}{Wert \val{barcolor} neu}^^A +% \begin{macro}{\tud@cd@cover@num} +% \changes{v2.02}{2014/08/08}{neu}^^A +% Das durch die Option \opt{cd} insgesamt festgelegte Layout kann für die +% einzelnen Elemente Umschlagseite (\opt{cdcover}),\dots +% \begin{macrocode} +%<*book|report|article> +\newcommand*\tud@cd@cover@num{0} +\TUD@key{cdcover}[true]{% + \TUD@set@numkey{cdcover}{tud@cd@cover@num}{\tud@cd@switch}{#1}% + \ifx\FamilyKeyState\FamilyKeyStateProcessed% + \TUD@SpecialOptionAtDocument{tud@cd@process}% + \fi% +} +%</book|report|article> +% \end{macrocode} +% \end{macro}^^A \tud@cd@cover@num +% \end{option}^^A cdcover +% \begin{option}{cdtitle} +% \changes{v2.04}{2015/05/18}{Wert \val{barcolor} neu}^^A +% \begin{macro}{\tud@cd@title@num} +% \dots Titel (\opt{cdtitle}),\dots +% \begin{macrocode} +\newcommand*\tud@cd@title@num{0} +\TUD@key{cdtitle}[true]{% + \TUD@set@numkey{cdtitle}{tud@cd@title@num}{\tud@cd@switch}{#1}% + \ifx\FamilyKeyState\FamilyKeyStateProcessed% + \TUD@SpecialOptionAtDocument{tud@cd@process}% + \fi% +} +% \end{macrocode} +% \end{macro}^^A \tud@cd@title@num +% \end{option}^^A cdtitle +% \begin{option}{cdpart} +% \changes{v2.04}{2015/05/18}{Wert \val{barcolor} neu}^^A +% \begin{macro}{\tud@cd@part@num} +% \dots Teile- (\opt{cdpart}) und\dots +% \begin{macrocode} +\newcommand*\tud@cd@part@num{0} +\TUD@key{cdpart}[true]{% + \TUD@set@numkey{cdpart}{tud@cd@part@num}{\tud@cd@switch}{#1}% + \ifx\FamilyKeyState\FamilyKeyStateProcessed% + \TUD@SpecialOptionAtDocument{tud@cd@process}% + \fi% +} +% \end{macrocode} +% \end{macro}^^A \tud@cd@part@num +% \end{option}^^A cdpart +% \begin{option}{cdchapter} +% \changes{v2.04}{2015/05/18}{Wert \val{barcolor} neu}^^A +% \begin{macro}{\tud@cd@chapter@num} +% \dots bei den entsprechenden Klassen (\cls{tudscrbook} und \cls{tudscrreprt}) +% auch für die Kapitelseiten (\opt{cdchapter}) separat für die einzelnen +% Elemente geändert bzw. überschrieben werden. +% \begin{macrocode} +%<*book|report> +\newcommand*\tud@cd@chapter@num{0} +\TUD@key{cdchapter}[true]{% + \TUD@set@numkey{cdchapter}{tud@cd@chapter@num}{\tud@cd@switch}{#1}% + \ifx\FamilyKeyState\FamilyKeyStateProcessed% + \ifnum\tud@cd@chapter@num>4\relax% color/full + \TUD@key@preset{chapterpage}{true}% + \else% + \TUD@key@preset{chapterpage}{false}% + \fi% + \TUD@SpecialOptionAtDocument{tud@cd@process}% + \fi% +} +%</book|report> +% \end{macrocode} +% \end{macro}^^A \tud@cd@chapter@num +% \end{option}^^A cdchapter +% \begin{option}{cdsection} +% \changes{v2.05}{2015/07/07}{neu}^^A +% \begin{macro}{\tud@cd@section@num} +% \changes{v2.05}{2015/07/07}{neu}^^A +% Zuletzt noch alle nachgelagerten Gliederungsebenen. +% \begin{macrocode} +\newcommand*\tud@cd@section@num{0} +\TUD@key{cdsection}[true]{% + \TUD@set@numkey{cdsection}{tud@cd@section@num}{\tud@cd@switch}{#1}% + \ifx\FamilyKeyState\FamilyKeyStateProcessed% + \TUD@SpecialOptionAtDocument{tud@cd@process}% + \fi% +} +% \end{macrocode} +% \end{macro}^^A \tud@cd@section@num +% \end{option}^^A cdsection +% +% \iffalse +%</class&option> +%<*book|report> +%<*class&option> +% \fi +% +% Die nun folgenden Optionen und Befehle werden nur für die beiden Klassen +% \cls{tudscrbook} und \cls{tudscrreprt} definiert. +% \begin{option}{parttitle} +% \begin{macro}{\if@tud@parttitle} +% Der Schalter dient zur Steuerung, ob der Titel des Dokumentes wie im Handbuch +% des \CDs auf den Teileseiten stehen soll. +% \begin{macrocode} +\newif\if@tud@parttitle +\TUD@key{parttitle}[true]{% + \TUD@set@ifkey{parttitle}{@tud@parttitle}{#1}% +} +% \end{macrocode} +% \end{macro}^^A \if@tud@parttitle +% \end{option}^^A parttitle +% \begin{option}{chapterpage} +% \begin{macro}{\if@tud@chapterpage} +% Mit dieser Option können Kapitelüberschriften alleine auf einer Seite stehen. +% Es werden separate Kapitelseiten erzeugt. +% \begin{macrocode} +\newif\if@tud@chapterpage +\TUD@key{chapterpage}[true]{% + \TUD@set@ifkey{chapterpage}{@tud@chapterpage}{#1}% +} +% \end{macrocode} +% \end{macro}^^A \if@tud@chapterpage +% \end{option}^^A chapterpage +% \begin{option}{cleardoublespecialpage} +% \changes{v2.02}{2014/07/08}{Werte für Seitenstil aus den \TUDScript- bzw. +% \KOMAScript-Klassen möglich}^^A +% \changes{v2.03}{2015/01/09}{Prüfung des Seitenstils mit \cs{AfterPreamble} +% auf Beginn des Dokumentes verzögert}^^A +% \changes{v2.06}{2018/08/21}{Farbeinstellungen integriert}^^A +% \begin{macro}{\tud@cleardoublepage} +% \begin{macro}{\if@tud@clearcolor} +% Für Klassen mit separaten Teileseiten und Kapiteln wird eine zusätzliche +% Option definiert, welche nur bei zweiseitigem Satz (\opt{twoside}) und +% zusätzlich immer auf nur der rechten Seite öffnenden Teilen bzw. Kapiteln +% (\opt{open}|=|\val{right}) zum Tragen kommen. +% +% Diese Option steuert, ob die Rückseite von Titel, Teilen und ggf. auch bei +% separaten Kapitelseiten\footnote{bei aktivierter \opt{chapterpage}-Option} +% entweder zwingend als leere Seite oder~-- abhängig von der \KOMAScript-Option +% \opt{cleardoublepage}~-- als Vakatseite ausgegeben werden. Außerdem ist die +% Festlegung eines bestimmten Seitenstiles möglich. Weiterhin kann eingestellt +% werden, ob bei der Verwendung einer Hintergrundfarbe auf Titel- Teil- oder +% Kapitelseiten im Stile des \CDs verwendet (\opt{cd\dots}|=|\val{color}) die +% entsprechende Rückseite in der gleichen Farbe wie die Vorderseite erschienen +% soll. Dafür muss die Option \opt{cleardoublespecialpage} aktiviert sein. +% +% Der Befehl \cs{tud@cleardoublepage} enthält die Definition der zu erzeugenden +% Doppelseite. +% \begin{macrocode} +\newif\if@tud@clearcolor +\newcommand*\tud@cleardoublepage{\cleardoubleoddpage} +% \end{macrocode} +% Mit der Option \opt{cleardoublespecialpage} kann dieser festgelegt werden. +% \begin{macrocode} +\TUD@key{cleardoublespecialpage}[true]{% + \TUD@set@numkey{cleardoublespecialpage}{@tempa}{% + \TUD@bool@numkey,% + {nocolor}{2},{nocolour}{2},{monochrome}{2},{monochromatic}{2},% + {bicolor}{3},{bicolour}{3},{twocolor}{3},{twocolour}{3},% + {bichrome}{3},{bichromatic}{3},{dichrome}{3},{dichromatic}{3},% + {color}{3},{colour}{3},% + {full}{3},{colorfull}{3},{fullcolor}{3},{colourfull}{3},{fullcolour}{3},% + {current}{4}% + }{#1}% +% \end{macrocode} +% Dabei wird die Rückseite entweder wie alle Vakatseiten oder leer gesetzt. +% \begin{macrocode} + \ifx\FamilyKeyState\FamilyKeyStateProcessed% + \ifcase\@tempa\relax% false + \renewcommand*\tud@cleardoublepage{\null\thispagestyle{empty}\newpage}% + \or% true + \renewcommand*\tud@cleardoublepage{\cleardoubleoddpage}% +% \end{macrocode} +% Zusätzlich kann die Vakatseite gegebenenfalls auch farbig ausgegeben werden, +% was abhängig von \opt{cd=true/color/pale/bicolor/fullcolor} erfolgt. +% \begin{macrocode} + \or% nocolor + \@tud@clearcolorfalse% + \or% color + \@tud@clearcolortrue% +% \end{macrocode} +% Außerdem kann ein Seitenstil gezielt ausgewählt werden. +% \begin{macrocode} + \or% current + \renewcommand*\tud@cleardoublepage{\cleardoubleoddstandardpage}% + \fi% +% \end{macrocode} +% Beim Laden der Klasse selbst sind die speziellen Seitenstile der \KOMAScript- +% bzw. \TUDScript-Klassen noch nicht definiert. Diese sollen als Werte jedoch +% trotzdem erlaubt sein. Deshalb wird für diesen Fall das Überprüfen mit +% \cs{AfterPreamble} auf den Beginn des Dokumentes verzögert. +% \begin{macrocode} + \else% + \AfterPreamble{% + \ifcsundef{ps@#1}{% + \ClassError{\TUD@Class@Name}{`#1' is no valid pagestyle}{% + You tried to use `#1' as a pagestyle for option\MessageBreak% + `cleardoublespecialpage', but it was never defined.% + }% + }{% + \renewcommand*\tud@cleardoublepage{\cleardoubleoddpageusingstyle{#1}}% + }% + }% + \FamilyKeyStateProcessed% + \fi% +} +% \end{macrocode} +% \end{macro}^^A \if@tud@clearcolor +% \end{macro}^^A \tud@cleardoublepage +% \end{option}^^A cleardoublespecialpage +% +% \iffalse +%</class&option> +%<*class&body> +% \fi +% +% \begin{macro}{\tud@cleardoublespecialpage} +% \begin{macro}{\tud@clearcolor@wrn} +% Der Befehl \cs{tud@cleardoublespecialpage} dient zur eigentlichen Umsetzung. +% Das obligatorische Argument enthält alles, was innerhalb der Gruppe an +% lokalen Einstellungen vorgenommen werden soll. Das optionale Argument wird +% ggf. genutzt, um einen Inhalt auf der Rückseite auszugeben. +% \begin{macrocode} +\newcommand*\tud@cleardoublespecialpage[2][]{% + \begingroup% + \addtokomafont{pagenumber}{\usekomafont{tudheadings}}% + \addtokomafont{pagefoot}{\usekomafont{tudheadings}}% + #2% + \ifboolexpr{bool {@twoside} and bool {@openright}}{% + \if@tud@clearcolor% + \def\@tempa{% + #1% + \tud@cleardoublepage% + \endgroup% + }% + \else% + \def\@tempa{% + \endgroup% + #1% + \tud@cleardoublepage% + }% + \fi% + }{% + \if@tud@clearcolor\tud@clearcolor@wrn\fi% + \def\@tempa{% + \endgroup% + #1% + }% + }% + \@tempa% + \@afterindentfalse\@afterheading% +} +% \end{macrocode} +% Die Warnung für den Fall, dass die Option \opt{clearcolor} ohne +% \opt{open}|=|\val{right} und \opt{twoside} verwendet wird. +% \begin{macrocode} +\newcommand*\tud@clearcolor@wrn{% + \ClassWarning{\TUD@Class@Name}{% + Option `clearcolor' is only available together with\MessageBreak% + options `twoside' and `open=right'% + }% + \global\let\tud@clearcolor@wrn\relax% +} +% \end{macrocode} +% \end{macro}^^A \tud@clearcolor@wrn +% \end{macro}^^A \tud@cleardoublespecialpage +% +% \iffalse +%</class&body> +%</book|report> +%<*class&option> +% \fi +% +% Damit endet der Abschnitt für \cls{tudscrbook}- und \cls{tudscrreprt}-Klasse. +% +% \begin{macro}{\tud@pagecolor} +% Der Befehl \cs{tud@pagecolor} dient für die Hauptklassen als Hilfsmakro, um +% je nach gewählter Ausprägung des Layouts die farblichen Seitenhintergründe zu +% aktivieren. Für die Klasse \cls{tudscrposter} wird der Befehl zusätzlich für +% das benutzerdefinierte Festlegen einer standardmäßigen Hintergrundfarbe mit +% der Option \opt{backcolor} genutzt. +% \begin{macrocode} +\newcommand*\tud@pagecolor{}% +% \end{macrocode} +% \end{macro}^^A \tud@pagecolor +% \begin{option}{backcolor} +% \changes{v2.05}{2016/04/15}{neu}^^A +% \begin{option}{backgroundcolor} +% \begin{option}{bgcolor} +% \begin{macro}{\normalcolor} +% Mit dieser Option kann die standardmäßige Hintergrundfarbe für Poster gesetzt +% werden. +% \begin{macrocode} +%<*poster> +\TUD@key{backcolor}[true]{% + \TUD@set@numkey{backcolor}{@tempa}{% + \TUD@bool@numkey,% + {nocolor}{0},{nocolour}{0},{none}{0},% + {color}{1},{colour}{1},{cdcolor}{1},{cdcolour}{1}% + }{#1}% + \ifx\FamilyKeyState\FamilyKeyStateProcessed% + \ifcase\@tempa\relax% false + \renewcommand*\tud@pagecolor{}% + \else% true + \renewcommand*\tud@pagecolor{HKS41}% + \fi% + \else% + \renewcommand*\tud@pagecolor{#1}% + \FamilyKeyStateProcessed% + \fi% +% \end{macrocode} +% Wird die Option innerhalb des Dokumentes verwendet, wird mit einer Box erst +% die gewählte Farbe verifiziert und anschließend auf die am Dokumentbeginn +% definierte Textfarbe umgestellt. +% \begin{macrocode} + \if@atdocument% + \ifdefvoid{\tud@pagecolor}{}{\sbox\z@{\color{\tud@pagecolor}}}% + \normalcolor% + \fi% +} +\TUD@key{backgroundcolor}[true]{\TUDoptions{backcolor=#1}} +\TUD@key{bgcolor}[true]{\TUDoptions{backcolor=#1}} +% \end{macrocode} +% Für das Aktivieren der Farbe \val{HKS41} wird \cs{normalcolor} erweitert, um +% hier in jedem Fall als Schriftfarbe \emph{weiß} zu verwenden. +% \begin{macrocode} +\AfterPackage{xcolor}{% + \CheckCommand*\normalcolor{\let\current@color\default@color\set@color}% + \apptocmd{\normalcolor}{% + \ifstr{\tud@pagecolor}{HKS41}{\color{white}}{}% + }{}{\tud@patch@wrn{normalcolor}}% + \AtBeginDocument{% + \ifdefvoid{\tud@pagecolor}{}{\sbox\z@{\color{\tud@pagecolor}}}% + \normalcolor% + }% +} +%</poster> +% \end{macrocode} +% \end{macro}^^A \normalcolor +% \end{option}^^A bgcolor +% \end{option}^^A backgroundcolor +% \end{option}^^A backcolor +% \begin{option}{pageheadingsvskip} +% \changes{v2.05}{2016/06/20}{neu}^^A +% \begin{macro}{\tud@dim@pageheadingsvskip} +% \changes{v2.05}{2016/06/20}{neu}^^A +% \begin{option}{headingsvskip} +% \changes{v2.05}{2016/06/20}{neu}^^A +% \begin{macro}{\tud@dim@headingsvskip} +% \changes{v2.05}{2016/06/20}{neu}^^A +% Mit diesen Optionen kann der Anwender die Überschriften von Titel, Teilen und +% Kapiteln vertikal von ihrer Standardposition verschieben, welche vom \CD +% eigentlich vorgegeben ist. Die Option \opt{pageheadingsvskip} verschiebt +% dabei Überschriften, welche allein auf einer Seite stehen, also Überschriften +% von Teilen oder auf Kapitelseiten. Auch die vertikale Position des Titels +% kann damit beeinflusst werden. Mit der Option \opt{headingsvskip} werden die +% Überschriften von Kapiteln, bei denen direkt danach der Fließtext folgt, oder +% die des Titelkopfes (\opt{titlepage}|=|\val{false}) verschoben. +% \begin{macrocode} +%<*book|report|article> +\newcommand*\tud@dim@pageheadingsvskip{0pt} +\TUD@key{pageheadingsvskip}{% + \TUD@set@dimenkey{pageheadingsvskip}{\tud@dim@pageheadingsvskip}{#1}% +} +\newcommand*\tud@dim@headingsvskip{0pt} +\TUD@key{headingsvskip}{% + \TUD@set@dimenkey{headingsvskip}{\tud@dim@headingsvskip}{#1}% +} +%</book|report|article> +% \end{macrocode} +% \end{macro}^^A \tud@dim@headingsvskip +% \end{option}^^A headingsvskip +% \end{macro}^^A \tud@dim@pageheadingsvskip +% \end{option}^^A pageheadingsvskip +% +% \iffalse +%</class&option> +%<*class|package&fixfonts> +%<*option> +% \fi +% +% \subsection{Schrifteinstellung und -größe der Überschriften} +% +% \begin{option}{headings} +% \changes{v2.06}{2018/08/20}{neu}^^A +% \begin{macro}{\if@tud@heavyheadings} +% \changes{v2.06}{2018/08/20}{neu}^^A +% Die Option wird dahingehend erweitert, dass die Überschriften auch im +% extra-fetten Schnitt gesetzt werden können. +% \begin{macrocode} +\newif\if@tud@heavyheadings +\TUD@key{headings}{% + \TUD@set@numkey{headings}{@tempa}{% + {light}{0},{lightfont}{0},{lite}{0},{litefont}{0},{noheavyfont}{0},% + {normal}{0},{standard}{0},{std}{0},{normalbold}{0},{boldnormal}{0},% + {heavy}{1},{heavyfont}{1},{bold}{1},{boldfont}{1},% + {ultrabold}{1},{boldultra}{1},{heavybold}{1},{boldheavy}{1},% + {extendedbold}{1},{boldextended}{1}% + }{#1}% + \ifx\FamilyKeyState\FamilyKeyStateProcessed% + \ifcase\@tempa\relax% light + \@tud@heavyheadingsfalse% + \or% heavy + \@tud@heavyheadingstrue% + \fi% + \fi% +} +% \end{macrocode} +% \end{macro}^^A \if@tud@heavyheadings +% \end{option}^^A headings +% +% \iffalse +%</option> +%</class|package&fixfonts> +%<*class&option> +% \fi +% +% \begin{option}{headings} +% \begin{option}{open} +% \begin{option}{chapterprefix} +% Die \KOMAScript-Option \opt{headings} setzt für alle Überschriften die +% Formatierung zurück. Um die Einstellungen für das \CD aktiv zu halten, werden +% nach der Ausführung der Option durch \cs{tud@x@scr@headings@reset} die mit +% \cs{tud@komafont@set} definierten Makros \cs{tud@komafont@\meta{Element}} +% erneut an die entsprechenden Schriftelemente angehängt. Bei der Verwendung +% der \KOMAScript-Option \opt{headings}|=|\val{standardclasses} werden außerdem +% noch die Optionen \opt{open} und \opt{chapterprefix} ausgeführt, weshalb auch +% auf diese reagiert werden muss. +% \begin{macrocode} +\DefineFamilyMember{KOMA} +\DefineFamilyKey{KOMA}{headings}{% + \TUD@SpecialOptionAtDocument{tud@x@scr@headings@reset}% + \FamilyKeyStateProcessed% +} +%<*book|report> +\DefineFamilyKey{KOMA}{open}{% + \TUD@SpecialOptionAtDocument{tud@x@scr@headings@reset}% + \FamilyKeyStateProcessed% +} +\DefineFamilyKey{KOMA}{chapterprefix}{% + \TUD@SpecialOptionAtDocument{tud@x@scr@headings@reset}% + \FamilyKeyStateProcessed% +} +%</book|report> +% \end{macrocode} +% \end{option}^^A chapterprefix +% \end{option}^^A open +% \end{option}^^A headings +% +% \iffalse +%</class&option> +%<*class&body> +% \fi +% +% \begin{macro}{\tud@x@scr@headings@set} +% \changes{v2.05}{2015/11/24}{neu}^^A +% \begin{macro}{\tud@x@scr@headings@current} +% \changes{v2.05}{2015/11/24}{neu}^^A +% \begin{macro}{\tud@sec@fontsize} +% \changes{v2.05}{2015/11/24}{neu}^^A +% \begin{macro}{\tud@thesis@fontsize} +% \changes{v2.05}{2015/11/24}{neu}^^A +% Als erstes werden die Optionen verarbeitet, welche einen Einfluss auf die +% Formatierung respektive die Schriftgröße der Überschriften haben. Wird über +% die Option \opt{headings} eine andere Überschriftengröße gewählt, werden mit +% dem Makro \cs{tud@x@scr@headings@set} die passenden Schriftgrößen sowohl für +% die Überschriften (\cs{tud@sec@fontsize}) als auch die Titelseite +% (\cs{tud@thesis@fontsize}) gesetzt. Dafür wird gewählte Schriftgröße +% der Überschriften\footnote{\ignorespaces% +% Option \opt{headings}|=|\val{standardclasses/big/normal/small}\ignorespaces% +% } im Hilfsmakro \cs{tud@x@scr@headings@current} gesichert. +% \begin{macrocode} +\newcommand*\tud@x@scr@headings@current{} +\newcommand*\tud@sec@fontsize{} +\newcommand*\tud@thesis@fontsize{} +\newcommand*\tud@x@scr@headings@set[1][]{% + \def\@tempa##1##2##3{% + \ifstr{##1}{\tud@x@scr@headings@current}{}{% + \renewcommand*\tud@x@scr@headings@current{##1}% + \renewcommand*\tud@sec@fontsize{##2}% + \renewcommand*\tud@thesis@fontsize{##3}% + #1% + }% + }% +% \end{macrocode} +% Wird \cs{tud@x@scr@headings@set} aufgerufen, so werden mit \cs{KOMAoptionOf} +% die aktuellen Werte der Option \opt{headings} ausgelesen, welche in einer +% Liste ausgegeben werden. Diese wird durchlaufen und dabei auf die relevanten +% Werte reagiert. +% \begin{macrocode} + \KOMAoptionOf[\def\@tempb]{\KOMAClassFileName}{headings}% + \@for\@tempc:=\@tempb\do{% + \ifstr{standardclasses}{\@tempc}{\@tempa{standardclasses}{\Huge}{\LARGE}}{% + \ifstr{big}{\@tempc}{\@tempa{big}{\Huge}{\LARGE}}{% + \ifstr{normal}{\@tempc}{\@tempa{normal}{\huge}{\Large}}{% + \ifstr{small}{\@tempc}{\@tempa{small}{\LARGE}{\large}}{}}}}% + }% +% \end{macrocode} +% Der Abstand nach Teil- und Kapitelüberschriften wird ebenso in Abhängigkeit +% der gewählten Einstellung für \opt{headings} definiert. +% \begin{macrocode} + \begingroup + \tud@sec@fontsize% + \@tempskipa=\glueexpr% + .8\baselineskip \@plus .05\baselineskip \@minus .1\baselineskip% + \relax\relax% + \edef\tud@res@a{% + \endgroup% + \def\noexpand\tud@cd@afterskip{\the\@tempskipa}% + }% + \tud@res@a% +} +% \end{macrocode} +% Damit die Einstellungen für die Größe wirksam werden, wird das Makro einmalig +% zu Beginn des Dokumentes ausgeführt. +% \begin{macrocode} +\AtEndPreamble{\tud@x@scr@headings@set} +% \end{macrocode} +% \end{macro}^^A \tud@thesis@fontsize +% \end{macro}^^A \tud@sec@fontsize +% \end{macro}^^A \tud@x@scr@headings@current +% \end{macro}^^A \tud@x@scr@headings@set +% \begin{macro}{\tud@x@scr@headings@reset} +% \changes{v2.05}{2015/11/24}{neu}^^A +% Hiermit wird nach dem Ausführen der Option \opt{headings} im Zweifelsfall die +% Größe und Formatierung der Überschriften neu gesetzt. +% \begin{macrocode} +\newcommand*\tud@x@scr@headings@reset{% + \tud@cd@process% + \tud@x@scr@headings@set[% + \ifcase\tud@cd@part@num\relax\else% !false + \tud@komafont@reset{part}% + \tud@komafont@reset{partnumber}% + \fi% +%<*book|report> + \ifcase\tud@cd@chapter@num\relax\else% !false + \tud@komafont@reset{chapter}% + \tud@komafont@reset{chapterprefix}% + \fi% +%</book|report> + \ifcase\tud@cd@section@num\relax\else% !false + \tud@komafont@reset{section}% + \tud@komafont@reset{subsection}% + \tud@komafont@reset{subsubsection}% + \fi% + ]% +} +% \end{macrocode} +% \end{macro}^^A \tud@x@scr@headings@reset +% +% \iffalse +%</class&body> +%<*body> +%<*class|package&fixfonts> +% \fi +% +% \subsection{Umsetzung des Layouts} +% +% \begin{macro}{\tud@sec@fontface} +% \changes{v2.05}{2016/04/04}{Optionales Argument für \pkg{tudscrcomp}}^^A +% \changes{v2.06}{2018/08/20}{extra-fette Überschriften möglich}^^A +% \begin{macro}{\tud@sec@@fontface} +% \begin{macro}{\tud@sec@format} +% \begin{macro}{\tud@sec@uppercase} +% \begin{macro}{\tud@sec@strut} +% \changes{v2.06}{2018/07/24}{neu}^^A +% Mit \cs{tud@sec@fontface} wird die Schriftart für Überschriften im +% Layout des \CDs definiert. +% \begin{macrocode} +%<package&fixfonts>\AfterPackage{tudscrfonts}{% +\newcommand*\tud@sec@fontface[1][]{\tud@sec@@fontface{#1}}% +\newcommand*\tud@sec@@fontface[1]{% + \sectfont#1% + \if@tud@cdfont@active\if@tud@heavyheadings% + \if@tud@x@mweights@enabled% + \edef\bfseries@rm{\tud@cdfont@ebf}% + \edef\bfseries@sf{\tud@cdfont@ebf}% + \edef\bfseries@tt{\tud@ttfont@ebf}% + \fi% + \let\bfdefault\tud@cdfont@ebf% + \fontseries{\tud@cdfont@ebf}% + \fi\fi% + \selectfont% +} +% \end{macrocode} +% Sind die alten Schriftfamilien aktiv, wird mit \cs{tud@sec@fontface} \DIN als +% Schriftart für Überschriften im Layout des \CDs definiert. Allerdings kann +% dies per Option auch deaktiviert werden. +% \begin{macrocode} +\if@tud@cdoldfont@active + \renewcommand*\tud@sec@fontface[1][]{% + \if@tud@cdoldfont@nodin% + \tud@sec@@fontface{#1}% + \else% + \tud@db\tud@raggedright% + \fi% + }% +\fi +% \end{macrocode} +% Der Befehl \cs{tud@sec@format} dient zur Formatierung von Überschriften. +% Dabei wird dieser mit der von \KOMAScript{} bereitgestellten Schnittstelle für +% Teile\footnote{\cs{partlineswithprefixformat}}, +% Kapitel\footnote{\cs{chapterlineswithprefixformat}, \cs{chapterlinesformat}} +% und +% Abschnitte\footnote{\cs{sectionlinesformat}, \cs{sectioncatchphraseformat}} +% verwendet. Dadurch wird eine Anpassung der Gliederungsbefehle~-- wie es +% einschließlich Version~v2.05 für die erzwungene Großschreibung umgesetzt +% wurde~-- vermieden. Für die \OpenSans führt das Makro \cs{tud@sec@format} +% lediglich \cs{tud@sec@strut} aus. +% \begin{macrocode} +\newcommand*\tud@sec@format[2][]{% + \IfArgIsEmpty{#1}{% + \tud@sec@strut% + }{% + \begingroup% + \usefontofkomafont{#1}% + \tud@sec@strut% + \endgroup% + }% + #2% +} +% \end{macrocode} +% Für die alten Schriften hat der Befehl eine erweiterte Funktionalität, wenn +% die Schriftfamilie \DIN aktiv ist, welche für Überschriften einzusetzen ist. +% Das \CD verlangt dabei, dass zwingend Majuskeln\footnote{Großbuchstaben} zu +% verwenden sind. Hierfür wird der Befehl \cs{MakeTextUppercase} aus dem Paket +% \pkg{textcase} genutzt, welcher den internen \LaTeX-Befehl \cs{MakeUppercase} +% verbessert. Das optionale Argument kann genutzt werden, falls nicht die +% aktuelle Schrift sondern ein durch \KOMAScript{} definiertes Schriftelement +% ausgewertet werden soll. +% \begin{macrocode} +\if@tud@cdoldfont@active + \newcommand*\tud@sec@uppercase{\MakeUppercase}% + \AfterPackage*{textcase}{% + \renewcommand*\tud@sec@uppercase{\MakeTextUppercase}% + }% + \renewcommand*\tud@sec@format[2][]{% + \@tud@res@swafalse% + \IfArgIsEmpty{#1}{% + \tud@sec@strut% + \tud@ifdin{\@tud@res@swatrue}{}% + }{% + \begingroup% + \usefontofkomafont{#1}% + \tud@sec@strut% + \tud@ifdin{\aftergroup\@tud@res@swatrue}{}% + \endgroup% + }% + \if@tud@res@swa% + \tud@sec@uppercase{#2}% + \else% + #2% + \fi% + }% +\fi +% \end{macrocode} +% Für Abschnitte etc. liegt auf einer neuen Seite dier erste Grundlinie höher, +% als für Großbuchstaben in der größeren Schrift für \cs{section} etc. benötigt +% wird. Deshalb wird die Grundlinie \enquote{notfallmäßig} so weit nach unten +% verschoben, wie für den höchsten Buchstabe benötigt wird. Mit dem Befehl +% \cs{tud@sec@strut} wird für alle Überschriften dafür gesorgt, dass immer der +% gleiche Freiraum bereitgehalten wird, unabhängig vom Inhalt der spezifischen +% Überschrift. Hierfür wird \cs{strutbox} aus dem \LaTeXe"~Kernel~-- nachdem +% \cs{strut} zuvor bereits einmal ausgeführt wird, um die Standardgröße der Box +% zu verwenden~-- temporär umdefiniert. +% \begin{macrocode} +\newrobustcmd*\tud@sec@strut{% +%<*class> + \begingroup% + \strut\setbox\strutbox\hbox{\vphantom{\textsuperscript{\"A\"O\"U}}}\strut% + \endgroup% +%</class> +} +%<package&fixfonts>} +% \end{macrocode} +% \end{macro}^^A \tud@sec@strut +% \end{macro}^^A \tud@sec@uppercase +% \end{macro}^^A \tud@sec@format +% \end{macro}^^A \tud@sec@@fontface +% \end{macro}^^A \tud@sec@fontface +% +% \iffalse +%</class|package&fixfonts> +%</body> +%<*class&body> +% \fi +% +% \begin{macro}{\tud@title@fontcolor} +% \begin{macro}{\tud@part@fontcolor} +% \begin{macro}{\tud@chapter@fontcolor} +% \begin{macro}{\tud@section@fontcolor} +% \changes{v2.05}{2015/07/07}{neu}^^A +% Die Makros werden für die Farbe der Überschriften verwendet. +% \begin{macrocode} +\newcommand*\tud@title@fontcolor{} +\newcommand*\tud@part@fontcolor{} +%<*book|report> +\newcommand*\tud@chapter@fontcolor{} +%</book|report> +\newcommand*\tud@section@fontcolor{} +% \end{macrocode} +% \end{macro}^^A \tud@section@fontcolor +% \end{macro}^^A \tud@chapter@fontcolor +% \end{macro}^^A \tud@part@fontcolor +% \end{macro}^^A \tud@title@fontcolor +% \begin{macro}{\raggedtitle} +% \changes{v2.05}{2016/04/05}{neu}^^A +% Dieses Makro wird für die Ausrichtung des Titels bereitgehalten. +% \begin{macrocode} +\providecommand*\raggedtitle{\tud@raggedright} +% \end{macrocode} +% \end{macro}^^A \raggedtitle +% \begin{macro}{\tud@cd@process} +% \changes{v2.02}{2014/08/29}{Anpassungen für \pkg{fontspec}}^^A +% \changes{v2.05}{2016/04/04}{Schrift für \val{subtitle} abhängig von +% \cs{mddefault}}^^A +% \changes{v2.05}{2016/04/05}{Einstellung für Ausrichtung der Überschriften}^^A +% Dieser Befehl kümmert sich darum, dass die gewählten Optionen für den +% Seitenstil auch umgesetzt werden. Dabei wird insbesondere darauf Wert gelegt, +% dass die Optionen auch im Dokument geändert und wiederhergestellt werden +% können. +% \ToDo{\cs{...pagecolor} und {\cs{...fontcolor} (part/chapter/title)}}[v2.07] +% \ToDo{Schriftfarbauswahl in \cs{tud@cd@process}}[v2.07] +% \begin{macrocode} +\newcommand*\tud@cd@process{% +% \end{macrocode} +% Die Einstellungen für den Titel. Vor dessen Umstellung werden die relevanten +% Originalbefehle mit \cs{tud@cs@store}\marg{Befehl} gesichert, damit diese +% mit \cs{tud@cs@restore}\marg{Befehl} wiederhergestellt werden können. +% \begin{macrocode} + \ifcase\tud@cd@title@num\relax% false +%<*book|report|article> + \tud@cs@restore{titlepagestyle}% +%</book|report|article> +%<*poster> + \renewcommand*\titlepagestyle{empty}% +%</poster> + \tud@komafont@unset{titlehead}% + \tud@komafont@unset{title}% + \tud@komafont@unset{subtitle}% + \tud@komafont@unset{subject}% +%<*book|report|article> + \tud@komafont@unset{author}% + \tud@komafont@unset{date}% + \tud@komafont@unset{publishers}% +%</book|report|article> + \else% !false +%<*book|report|article> + \tud@cs@store{titlepagestyle}% + \renewcommand*\titlepagestyle{plain.tudheadings}% +%</book|report|article> +%<*poster> + \renewcommand*\titlepagestyle{empty.tudheadings}% +%</poster> + \tud@komafont@set{titlehead}{\usekomafont{titlepage}}% + \tud@komafont@set{title}{% + \usekomafont{disposition}% + \raggedtitle% + \tud@sec@fontface% + \tud@sec@fontsize% + \tud@color{\tud@title@fontcolor}% + }% + \tud@komafont@set{subtitle}{% + \tud@thesis@fontsize% + \fontseries{\tud@cdfont@bf}\selectfont% + }% + \tud@komafont@set{subject}{% + \sffamily% + \usesizeofkomafont{section}% + \tud@color{\tud@title@fontcolor}% + }% +%<*book|report|article> + \tud@komafont@set{author}{\usekomafont{subject}}% + \tud@komafont@set{publishers}{\usekomafont{author}}% + \tud@komafont@set{date}{\usekomafont{titlepage}}% +%</book|report|article> + \fi% +% \end{macrocode} +% Das gleiche für die Teileseiten. +% \begin{macrocode} + \ifcase\tud@cd@part@num\relax% false + \tud@cs@restore{scr@part@beforeskip}% +%<*book|report> + \tud@cs@restore{scr@part@innerskip}% +%</book|report> + \tud@cs@restore{scr@part@afterskip}% + \tud@cs@restore{partheadstartvskip}% +%<*book|report> + \tud@cs@restore{partheadendvskip}% + \tud@cs@restore{partheademptypage}% + \tud@cs@restore{partpagestyle}% +%</book|report> + \tud@cs@restore{partlineswithprefixformat}% + \tud@komafont@unset{part}% + \tud@komafont@unset{partnumber}% + \tud@cs@restore{raggedpart}% +% \end{macrocode} +% Es werden die Standardbefehle gesichert und für das \CD angepasst. Einigen +% Makros werden mittels \cs{let} Definitionen von anderen Makros zugewiesen, +% die sich wiederum am Original orientieren. Hintergrund ist, dass die +% originalen Befehle angepasst werden sollen. Damit dies nicht bei jeder +% Optionswahl sondern nur einmalig geschehen muss und um möglichst einfach auf +% die Originaldefinition zurückschalten zu können, wird so verfahren. Die +% angepassten Befehle selbst und die dazugehörige Beschreibung sind etwas +% weiter unten im Quelltext zu finden. +% \begin{macrocode} + \else% !false + \tud@cs@store{scr@part@beforeskip}% +%<*book|report> + \renewcommand*\scr@part@beforeskip{\tud@cd@beforeskip}% +%</book|report> +%<*article|poster> + \renewcommand*\scr@part@beforeskip{\tud@cd@afterskip+\baselineskip}% +%</article|poster> +%<*book|report> + \tud@cs@store{scr@part@innerskip}% + \renewcommand*\scr@part@innerskip{\tud@cd@innerskip}% +%</book|report> + \tud@cs@store{scr@part@afterskip}% + \renewcommand*\scr@part@afterskip{\tud@cd@afterskip}% + \tud@cs@store{partheadstartvskip}% + \let\partheadstartvskip\tud@partheadstartvskip% +%<*book|report> + \tud@cs@store{partheadendvskip}% + \let\partheadendvskip\relax% + \tud@cs@store{partheademptypage}% + \let\partheademptypage\tud@partheademptypage% + \tud@cs@store{partpagestyle}% + \renewcommand*\partpagestyle{plain.tudheadings}% +%</book|report> + \tud@cs@store{partlineswithprefixformat}% + \let\partlineswithprefixformat\tud@partlineswithprefixformat% +% \end{macrocode} +% Es wird die Schriftfarbe, "~größe und "~art angepasst, je nachdem ob der +% Titel des Dokumentes auf den Teileseiten auftauchen soll oder eben nicht. +% \begin{macrocode} + \tud@komafont@set{part}{% + \tud@sec@fontface% + \tud@color{\tud@part@fontcolor}% + }% + \tud@komafont@set{partnumber}{% + \tud@sec@fontface% + \tud@color{\tud@part@fontcolor}% + }% + \tud@cs@store{raggedpart}% + \renewcommand*\raggedpart{\tud@raggedright}% + \fi% +% \end{macrocode} +% Die Einstellungen für die Kapitel. Auch hier werden alle relevanten Befehle +% gesichert, damit diese wiederhergestellt werden können. Verständlicherweise +% fällt für die \cls{tudscrartcl}-Klasse der Anteil für die Kapitel weg. +% \begin{macrocode} +%<*book|report> + \ifcase\tud@cd@chapter@num\relax% false + \tud@cs@restore{scr@chapter@beforeskip}% + \tud@cs@restore{scr@chapter@innerskip}% + \tud@cs@restore{scr@chapter@afterskip}% + \tud@cs@restore{chapterheadstartvskip}% + \tud@cs@restore{chapterlineswithprefixformat}% + \tud@cs@restore{chapterlinesformat}% + \tud@cs@restore{tud@chapter@before@hook}% + \tud@cs@restore{tud@chapter@after@hook}% + \tud@komafont@unset{chapter}% + \tud@komafont@unset{chapterprefix}% + \tud@cs@restore{raggedchapter}% +% \end{macrocode} +% Auch hier werden die Standardbefehle für ein mögliches Deaktivieren der +% Optionen gesichert und anschließend geändert. Dabei erfolgt die Zuweisung der +% angepassten Befehle abermals über \cs{let}. +% \begin{macrocode} + \else% !false + \tud@cs@store{scr@chapter@beforeskip}% + \renewcommand*\scr@chapter@beforeskip{\tud@cd@beforeskip}% + \tud@cs@store{scr@chapter@innerskip}% + \renewcommand*\scr@chapter@innerskip{\tud@cd@innerskip}% + \tud@cs@store{scr@chapter@afterskip}% + \renewcommand*\scr@chapter@afterskip{\tud@cd@afterskip}% + \tud@cs@store{chapterheadstartvskip}% + \let\chapterheadstartvskip\tud@chapterheadstartvskip% + \tud@cs@store{chapterlineswithprefixformat}% + \let\chapterlineswithprefixformat\tud@chapterlineswithprefixformat% + \tud@cs@store{chapterlinesformat}% + \let\chapterlinesformat\tud@chapterlinesformat% + \tud@cs@store{tud@chapter@before@hook}% + \renewcommand*\tud@chapter@before@hook{\tud@chapter@pre}% + \tud@cs@store{tud@chapter@after@hook}% + \renewcommand*\tud@chapter@after@hook{\tud@chapter@app}% + \tud@komafont@set{chapter}{% + \tud@sec@fontface% + \tud@sec@fontsize% + \tud@color{\tud@chapter@fontcolor}% + }% + \tud@komafont@set{chapterprefix}{\usesizeofkomafont{partnumber}}% + \tud@cs@store{raggedchapter}% + \renewcommand*\raggedchapter{\tud@raggedright}% + \fi% +%</book|report> +% \end{macrocode} +% Die Einstellungen für die Abschnittsebene. Wiederum werden alle relevanten +% Befehle gesichert. +% \begin{macrocode} + \ifcase\tud@cd@section@num\relax% false + \tud@cs@restore{sectionlinesformat}% + \tud@cs@restore{sectioncatchphraseformat}% + \tud@komafont@unset{section}% + \tud@komafont@unset{subsection}% + \tud@komafont@unset{subsubsection}% + \tud@komafont@unset{paragraph}% + \tud@komafont@unset{subparagraph}% + \tud@cs@restore{raggedsection}% + \tud@cs@restore{minisec}% + \tud@komafont@unset{minisec}% + \else% !false + \tud@cs@store{sectionlinesformat}% + \let\sectionlinesformat\tud@sectionlinesformat% + \tud@cs@store{sectioncatchphraseformat}% + \let\sectioncatchphraseformat\tud@sectioncatchphraseformat% + \tud@komafont@set{section}{% + \tud@sec@fontface% + \tud@color{\tud@section@fontcolor}% + }% + \tud@komafont@set{subsection}{% + \tud@sec@fontface% + \tud@color{\tud@section@fontcolor}% + }% + \tud@komafont@set{subsubsection}{% + \tud@sec@fontface% + \tud@color{\tud@section@fontcolor}% + }% + \tud@komafont@set{paragraph}{% + \tud@color{\tud@section@fontcolor}% + }% + \tud@komafont@set{subparagraph}{% + \tud@color{\tud@section@fontcolor}% + }% + \tud@cs@store{raggedsection}% + \renewcommand*\raggedsection{\tud@raggedright}% + \tud@cs@store{minisec}% + \renewcommand\minisec[1]{% + \tud@cs@use{minisec}{\tud@sec@format{##1}}% + }% + \tud@komafont@set{minisec}{% + \tud@sec@fontface% + \ifcase\tud@cd@section@num\relax\or\else% *color + \ifstr{\tud@pagecolor}{HKS41}{}{\color{HKS41}}% + \fi% + }% + \fi% +% \end{macrocode} +% Für Poster wird außerdem der passende Seitenstil und die Ausprägung von Kopf +% und Fuß sowie die Schriftfarbe festgelegt. +% \begin{macrocode} +%<*poster> + \ifcase\tud@cd@num\relax% false + \pagestyle{empty}% + \color{black}% + \else% !false + \pagestyle{empty.tudheadings}% + \ifcase\tud@cd@num\relax\or% true + \tud@locked@num@preset{tud@head@bar@num}{0}% + \tud@locked@bool@preset{@tud@foot@colored}{false}% + \color{black}% + \or% litecolor + \tud@locked@num@preset{tud@head@bar@num}{1}% + \tud@locked@bool@preset{@tud@foot@colored}{false}% + \color{HKS41}% + \or% barcolor + \tud@locked@num@preset{tud@head@bar@num}{2}% + \tud@locked@bool@preset{@tud@foot@colored}{false}% + \color{HKS41}% + \else% bicolor/color/full + \tud@locked@num@preset{tud@head@bar@num}{3}% + \tud@locked@bool@preset{@tud@foot@colored}{true}% + \color{HKS41}% + \fi% + \fi% +%</poster> +} +% \end{macrocode} +% \end{macro}^^A \tud@cd@process +% \begin{macro}{\tud@cd@specialpage@set} +% \changes{v2.04}{2015/04/21}{neu}^^A +% \changes{v2.04d}{2016/03/26}{Bugfix für \cls{tudscrartcl}}^^A +% \begin{macro}{\tud@cd@specialpage@unset} +% \changes{v2.04}{2015/04/21}{neu}^^A +% Diese beiden Hilfsmakros werden für Titel- Teile und separate Kapitelseite +% benötigt, um die Fußnoten auf diesen speziellen Seiten in der gleichen Farbe +% wie den Rest der verwendeten Schriften zu setzen. +% \begin{macrocode} +%<*book|report|article> +\newcommand*\tud@cd@specialpage@set[1]{% + \tud@komafont@set{footnote}{% + \edef\@tempa{% + \noexpand\tud@color{% + \expandafter\noexpand\csname tud@#1@fontcolor\endcsname% + }% + }\@tempa% + }% + \tud@cs@store{footnoterule}% + \let\footnoterule\relax% +} +%</book|report|article> +%<*book|report> +\newcommand*\tud@cd@specialpage@unset{% + \tud@komafont@unset{footnote}% + \tud@cs@restore{footnoterule}% +} +%</book|report> +% \end{macrocode} +% \end{macro}^^A \tud@cd@specialpage@unset +% \end{macro}^^A \tud@cd@specialpage@set +% \begin{macro}{\tud@cd@headstartvskip} +% \changes{v2.06}{2018/08/01}{neu}^^A +% \begin{macro}{\tud@cd@vphantom} +% \changes{v2.06}{2018/08/01}{neu}^^A +% \begin{macro}{\tud@cd@beforeskip} +% \changes{v2.06}{2018/08/01}{neu}^^A +% \begin{macro}{\tud@cd@innerskip} +% \changes{v2.06}{2018/08/01}{neu}^^A +% \begin{macro}{\tud@cd@afterskip} +% \changes{v2.06}{2018/08/01}{neu}^^A +% Im \TUDCD werden sowohl Titel als auch Teil- und Kapitelüberschriften auf der +% gleichen Grundlinienhöhe gesetzt. Hierfür sind Anpassungen der entsprechenden +% Gliederungsbefehle notwendig. Insbesondere der vor den Überschriften gesetzte +% Abstand wird für gewöhnlich über die Befehle \cs{partheadstartvskip} bzw. +% \cs{chapterheadstartvskip} gesetzt. Um das Layout des \CDs umzusetzen, werden +% diese beiden Makros als Haken genutzt. +% +% Das Makro \cs{tud@cd@beforeskip} enthält den Abstand vor einer Überschrift, +% welcher über \cs{tud@cd@headstartvskip} gesetzt wird. Der Abstand zwischen +% der Nummerierung eines Teils und der eigentlichen Bezeichnung wird mit +% \cs{tud@cd@innerskip} definiert und durch \KOMAScript{} eingefügt. Gleiches +% gilt für eine separate Kapitelnummernzeile (\opt{chapterprefix}) und dem +% eigentlichen Kapiteltitel. Durch \cs{tud@cd@afterskip} wird der Abstand +% zwischen Titel und Fließtext respektive der unteren Prääambel definiert. +% Dieser Abstand ist abhängig von der gewählten Einstellung für \opt{headings}. +% \begin{macrocode} +\newcommand*\tud@cd@beforeskip{% + \dimexpr-\tud@len@areavskip-\tud@len@areaheadvskip\relax% +} +\newcommand*\tud@cd@innerskip{.25\baselineskip}% +\newcommand*\tud@cd@afterskip{% + .75\baselineskip \@plus .05\baselineskip \@minus .1\baselineskip% +} +\newcommand*\tud@cd@headstartvskip{% + \@tempskipa=\glueexpr\tud@cd@beforeskip\relax\relax% + \ifdim\@tempskipa<\z@\@tempskipa-\@tempskipa\fi% + \null\vskip-\baselineskip\vskip\@tempskipa% +} +% \end{macrocode} +% Sollte keine Präfixzeile für Teile oder Kapitel verwendet werden, muss für +% die exakte Positionierung der Grundlinie des Titels der entsprechende Abstand +% eingefügt werden, wofür \cs{tud@cd@vphantom} genutzt wird. +% \begin{macrocode} +\newcommand*\tud@cd@vphantom{% + \begingroup% + \usekomafont{partnumber}{\nobreak\tud@sec@strut}% + \setlength\@tempskipa{\tud@cd@innerskip}% + \par\nobreak\vskip\@tempskipa% + \endgroup% +} +% \end{macrocode} +% \end{macro}^^A \tud@cd@afterskip +% \end{macro}^^A \tud@cd@innerskip +% \end{macro}^^A \tud@cd@beforeskip +% \end{macro}^^A \tud@cd@vphantom +% \end{macro}^^A \tud@cd@headstartvskip +% +% \iffalse +%<*book|report> +% \fi +% +% \subsection{Positionierung und Formatierung von Überschriften} +% \subsubsection{Präambeln für Teile und Kapitel} +% +% \begin{macro}{\tud@preamble@fontcolor} +% \changes{v2.06}{2018/08/08}{neu}^^A +% Der Befehl wird innerhalb von \cs{set@@@@preamble} genutzt, um die notwendige +% Farbe des Textes zu aktivieren. +% \begin{macrocode} +\newcommand*\tud@preamble@fontcolor{} +% \end{macrocode} +% \end{macro}^^A \tud@preamble@fontcolor +% \begin{macro}{\tud@partpreamble} +% Um die \KOMAScript-Befehle für die Teilepräambel auch für das farbige Layout +% nutzen zu können, müssen diese leicht angepasst werden. Für die Präambeln wird +% die Überschrift einer Zusammenfassung ausschließlich zentriert und relativ +% klein gesetzt. Außerdem wird für eine mögliche Zusammenfassung die +% \opt{titlepage}-Option deaktiviert. Aufgerufen wird der Befehl durch die +% gepatchte Version von \cs{set@@@@preamble}. +% \begin{macrocode} +\newcommand*\tud@partpreamble{% +% \end{macrocode} +% Zunächst wird der unterschiedliche Abstand bei Teil- und Kapitelpräambeln +% ausgeglichen. +% \begin{macrocode} + \@tempskipa=\glueexpr\tud@cd@afterskip\relax% + \ifdim\@tempskipa<\z@\@tempskipa-\@tempskipa\fi% + \vskip\@tempskipa% +% \end{macrocode} +% Anschließend folgen die Anpassungen für die Teilpräambel. +% \begin{macrocode} + \ifnum\tud@abstract@level@num>\@ne\relax% sec/chap + \renewcommand*\tud@abstract@level@num{1}% + \fi% + \KOMAoptions{titlepage=false}% + \null\vskip-\baselineskip% + \addtokomafont{disposition}{\tud@color{\tud@part@fontcolor}}% + \addtokomafont{dictum}{\tud@color{\tud@part@fontcolor}}% + \let\tud@preamble@fontcolor\tud@part@fontcolor% + \@afterindentfalse\@afterheading% +} +% \end{macrocode} +% \end{macro}^^A \tud@partpreamble +% \begin{macro}{\tud@chapterpreamble} +% Um die \KOMAScript-Befehle für die Kapitelpräambel auch für das farbige Layout +% nutzen zu können, müssen diese leicht angepasst werden. Für die Präambeln der +% Kapitel gilt das gleiche wie für die der Teileseiten. Auch hier erfolgt die +% Ausführung des Befehls durch die gepatchte Version von \cs{set@@@@preamble}. +% \begin{macrocode} +\newcommand*\tud@chapterpreamble{% + \ifnum\tud@abstract@level@num>\@ne\relax% sec/chap + \renewcommand*\tud@abstract@level@num{1}% + \fi% + \KOMAoptions{titlepage=false}% + \null\vskip-\baselineskip% +% \end{macrocode} +% Die Farb- und Schrifteinstellungen sind nur für reine Kapitelseiten notwendig. +% \begin{macrocode} + \if@tud@chapterpage% + \addtokomafont{disposition}{\tud@color{\tud@chapter@fontcolor}}% + \addtokomafont{dictum}{\tud@color{\tud@chapter@fontcolor}}% + \let\tud@preamble@fontcolor\tud@chapter@fontcolor% + \fi% + \@afterindentfalse\@afterheading% +} +% \end{macrocode} +% \end{macro}^^A \tud@chapterpreamble +% \begin{macro}{\set@@@@preamble} +% Die beiden Befehle für Präambeln aus \KOMAScript{} ignorieren in ihrer +% ursprünglichen Form die Einstellungen für \opt{parskip}. Dies wird mit diesem +% Patch beseitigt. Außerdem wird das Makro für die Layouteinstellungen für +% Teile (\cs{tud@partpreamble}) respektive Kapitel (\cs{tud@chapterpreamble}) +% aufgerufen. Für die Verwendung der \env{abstract}-Umgebung in den Präambeln +% wird außerdem der Befehl \cs{phantomsection} auf \cs{relax} gesetzt, um mit +% \cs{autoref} automatisch generierte Querverweise aus dem Paket \pkg{hyperref} +% nicht zu verändern. Alternativ zu \cs{let}\cs{@parboxrestore}\cs{relax} +% müsste innerhalb des Argumentes von \cs{parbox} die \KOMAScript-Option +% \opt{parskip} neu gesetzt werden. +% \begin{macrocode} +\CheckCommand\set@@@@preamble[6]{% + \expandafter\gdef\csname #1@preamble\endcsname{% + \hbox to\hsize{#4\parbox[{#2}]{#3}{#6\par}#5\par}% + }% +} +\patchcmd{\set@@@@preamble}{% + \hbox to\hsize{#4\parbox[{#2}]{#3}{#6\par}#5\par}% +}{% + \def\@tempa####1@####2{% + \@nameuse{tud@####1preamble}% + \tud@color{\tud@preamble@fontcolor}% + \KOMAoptionOf[\KOMAoption{parskip}]{\KOMAClassFileName}{parskip}% + }% + \hbox to\hsize{% + \let\phantomsection\relax% + #4\parbox[{#2}]{#3}{\@tempa#1#6\par\bigskip}#5\par% + }% +}{}{\tud@patch@wrn{set@@@@preamble}} +% \end{macrocode} +% \end{macro}^^A \set@@@@preamble +% +% \iffalse +%</book|report> +% \fi +% +% \subsubsection{Untertitel für Teile und Kapitel} +% Im Layout des \CDs können für Teile und Kapitel auch Untertitel angegeben +% werden. +% +% \begin{macro}{\setpartsubtitle} +% \changes{v2.06}{2018/08/20}{neu}^^A +% \begin{KOMAfont}{partsubtitle} +% \changes{v2.06}{2018/08/20}{neu}^^A +% \begin{KOMAfont}{parttitle} +% \begin{macro}{\tud@part@subtitle} +% \changes{v2.06}{2018/08/20}{neu}^^A +% Auf Anwenderebene können mit \cs{setpartsubtitle} und \cs{setchaptersubtitle} +% die gewünschten Untertitel angegegben werden. +% \begin{macrocode} +\newcommand*\tud@part@subtitle{} +\newcommand*\setpartsubtitle[1]{\gdef\tud@part@subtitle{#1}} +% \end{macrocode} +% Die Schriftelement für die Untertitel von Teilen. +% \begin{macrocode} +\newkomafont{partsubtitle}{% + \tud@thesis@fontsize% + \fontseries{\tud@cdfont@bf}\selectfont% + \tud@color{\tud@part@fontcolor}% +} +\aliaskomafont{parttitle}{partsubtitle} +% \end{macrocode} +% \end{macro}^^A \tud@part@subtitle +% \end{KOMAfont}^^A parttitle +% \end{KOMAfont}^^A partsubtitle +% \end{macro}^^A \setpartsubtitle +% \begin{macro}{\setchaptersubtitle} +% \changes{v2.06}{2018/08/20}{neu}^^A +% \begin{KOMAfont}{chaptersubtitle} +% \changes{v2.06}{2018/08/20}{neu}^^A +% \begin{macro}{\tud@chapter@subtitle} +% \changes{v2.06}{2018/08/20}{neu}^^A +% Das gleiche Spiel für Kapitel. +% \begin{macrocode} +%<*book|report> +\newcommand*\tud@chapter@subtitle{} +\newcommand*\setchaptersubtitle[1]{\gdef\tud@chapter@subtitle{#1}} +% \end{macrocode} +% Die Schriftelement für die Untertitel von Kapiteln. +% \begin{macrocode} +\newkomafont{chaptersubtitle}{% + \tud@thesis@fontsize% + \fontseries{\tud@cdfont@bf}\selectfont% + \tud@color{\tud@chapter@fontcolor}% +} +%</book|report> +% \end{macrocode} +% \end{macro}^^A \tud@chapter@subtitle +% \end{KOMAfont}^^A chaptersubtitle +% \end{macro}^^A \setchaptersubtitle +% \begin{macro}{\tud@sec@subtitle} +% \changes{v2.06}{2018/08/01}{neu}^^A +% Dieses Makro dient zur Umsetzung der Untertitel. +% \begin{macrocode} +\newcommand*\tud@sec@subtitle[1]{% + \ifcsvoid{tud@#1@subtitle}{}{% + {\usekomafont{#1subtitle}{\tud@sec@format{\csuse{tud@#1@subtitle}}}}\par% + \global\cslet{tud@#1@subtitle}{\@empty}% + }% +} +% \end{macrocode} +% \end{macro}^^A \tud@sec@subtitle +% +% +% \subsubsection{Umsetzung für Teile} +% +% \begin{macro}{\tud@partheadstartvskip} +% \begin{macro}{\partheadstartvskip} +% Dieses Makro ersetzt den Standardbefehl \cs{partheadstartvskip} für die +% CD-Teilseiten. Damit lassen sich insbesondere die Farbanpassungen für alle +% Klassen einfach realisieren und gleichzeitig das Zurückschalten auf das +% Standardverhalten gewährleisten. +% +% Für die \cls{tudscrartcl}-Klasse wird der vertikale Standardabstand +% beibehalten und lediglich die Farbanpassung hinzugefügt. +% \begin{macrocode} +%<*article|poster> +\newcommand*\tud@partheadstartvskip{} +\let\tud@partheadstartvskip\partheadstartvskip +\pretocmd{\tud@partheadstartvskip}{% + \renewcommand*\tud@part@fontcolor{}% false/true + \ifcase\tud@cd@part@num\relax\or\else% *color + \renewcommand*\tud@part@fontcolor{HKS41}% + \fi% +}{}{\tud@patch@wrn{tud@partheadstartvskip}} +%</article|poster> +% \end{macrocode} +% Für \cls{tudscrreprt}- und \cls{tudscrbook}-Klasse werden die Farben gesetzt +% und die vertikalen Abstände neu definiert. +% \begin{macrocode} +%<*book|report> +\newcommand*\tud@partheadstartvskip{% + \renewcommand*\tud@part@fontcolor{}% false/true + \ifcase\tud@cd@part@num\relax\or\or% litecolor + \renewcommand*\tud@part@fontcolor{HKS41}% + \or% barcolor + \renewcommand*\tud@part@fontcolor{HKS41}% + \or% bicolor + \renewcommand*\tud@part@fontcolor{HKS41}% + \or% color + \renewcommand*\tud@part@fontcolor{HKS41!30}% + \or% full + \renewcommand*\tud@part@fontcolor{HKS41!30}% + \fi% + \tud@cd@specialpage@set{part}% + \tud@cd@headstartvskip% + \TUD@deprecated@lengthcs{pageheadingsvskip}% + \vspace*{\tud@dim@pageheadingsvskip}% +} +%</book|report> +% \end{macrocode} +% \end{macro}^^A \partheadstartvskip +% \end{macro}^^A \tud@partheadstartvskip +% \begin{macro}{\tud@partheademptypage} +% \changes{v2.02}{2014/06/23}{neu}^^A +% Hiermit wird die Seitenfarbe gesetzt sowie die Schrift für Kopf und +% Seitenzahl verändert. Die Änderungen sollen dabei lokal bleiben, wofür +% der Befehl \cs{tud@cleardoublespecialpage} verwendet wird. Damit wird +% abhängig von den beiden Optionen \opt{cleardoublespecialpage} und +% \opt{clearcolor} die Rückseite farbig gesetzt. +% \begin{macrocode} +%<*book|report> +\newcommand*\tud@partheademptypage{% + \tud@cleardoublespecialpage{% + \renewcommand*\tud@pagecolor{}% + \ifcase\tud@cd@part@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% + \clearpage% + }% + \tud@cd@specialpage@unset% +} +%</book|report> +% \end{macrocode} +% \end{macro}^^A \tud@partheademptypage +% \begin{macro}{\tud@partlineswithprefixformat} +% \changes{v2.06}{2018/08/01}{neu}^^A +% \begin{macro}{\tud@partformat} +% \changes{v2.06}{2018/08/01}{neu}^^A +% Die Formatierungsbefehle für die Überschriften von Teilen. +% \begin{macrocode} +\newcommand*\tud@partformat{}% +\newcommand*\tud@partlineswithprefixformat[3]{% +%<*book|report> + \if@tud@parttitle% + \ifx\@@title\@empty% + \ClassWarning{\TUD@Class@Name}{% + You activated the option `parttitle' but\MessageBreak% + no title was given% + }% + \fi% + \tud@cd@vphantom% + \tud@sec@format[#1]{% + \usekomafont{#1}{\nobreak\interlinepenalty \@M\@@title\strut\@@par}% + }% + \setpartsubtitle{% + \setkomafont{part}{}% + \tud@sec@format[partnumber]{\IfUseNumber{\partformat\enskip}{}#3}% + }% + \else% +%</book|report> + \edef\tud@partformat{\noexpand\tud@sec@format{\expandonce\partformat}}% + \let\partformat\tud@partformat% + \IfUseNumber{}{\tud@cd@vphantom}% + #2\tud@sec@format[#1]{#3}% +%<*book|report> + \fi% +%</book|report> + \tud@sec@subtitle{#1}% +} +% \end{macrocode} +% \end{macro}^^A \tud@partformat +% \end{macro}^^A \tud@partlineswithprefixformat +% +% \iffalse +%<*book|report> +% \fi +% +% \subsubsection{Umsetzung für Kapitel} +% +% \begin{macro}{\tud@chapterheadstartvskip} +% \changes{v2.02}{2014/06/23}{neu}^^A +% \cs{chapterheadstartvskip} wird für die Position der Kapitelüberschriften im +% \CD angepasst. Mit der Option \opt{headingsvskip} kann diese vertikal durch +% den Benutzer verschoben werden. Außerdem werden die benötigten Farben für die +% jeweils gewählte Option ausgewählt. +% \begin{macrocode} +\newcommand*\tud@chapterheadstartvskip{% + \renewcommand*\tud@chapter@fontcolor{}% + \ifcase\tud@cd@chapter@num\relax\or\else% *color + \renewcommand*\tud@chapter@fontcolor{HKS41}% + \fi% + \tud@cd@headstartvskip% + \if@tud@chapterpage% + \TUD@deprecated@lengthcs{pageheadingsvskip}% + \vspace*{\tud@dim@pageheadingsvskip}% + \else% + \TUD@deprecated@lengthcs{headingsvskip}% + \vspace*{\tud@dim@headingsvskip}% + \fi% +} +% \end{macrocode} +% \end{macro}^^A \tud@chapterheadstartvskip +% \begin{macro}{\tud@chapterlineswithprefixformat} +% \changes{v2.06}{2018/08/01}{neu}^^A +% \begin{macro}{\tud@chapterformat} +% \changes{v2.06}{2018/08/01}{neu}^^A +% \begin{macro}{\tud@chapterlinesformat} +% \changes{v2.06}{2018/08/01}{neu}^^A +% Die Formatierungsbefehle für die Überschriften von Kapiteln. +% \begin{macrocode} +\newcommand*\tud@chapterformat{}% +\newcommand*\tud@chapterlineswithprefixformat[3]{% + \edef\tud@chapterformat{% + \noexpand\tud@sec@format{\expandonce\chapterformat}% + }% + \let\chapterformat\tud@chapterformat% + \IfUseNumber{}{\tud@cd@vphantom}% + #2\tud@sec@format[#1]{#3}% + \tud@sec@subtitle{#1}% +} +\newcommand*\tud@chapterlinesformat[3]{% + \tud@cd@vphantom% + \@hangfrom{#2}{\tud@sec@format[#1]{#3}}% + \tud@sec@subtitle{#1}% +} +% \end{macrocode} +% \end{macro}^^A \tud@chapterlinesformat +% \end{macro}^^A \tud@chapterformat +% \end{macro}^^A \tud@chapterlineswithprefixformat +% \begin{macro}{\tud@chapter@pre} +% \begin{macro}{\tud@chapter@app} +% \begin{macro}{\tud@head@bar@restore} +% \changes{v2.04}{2015/04/01}{neu}^^A +% Diese Makros dienen zur Behandlung der Besonderheiten von Kapiteln. Dies gilt +% sowohl für normale Kapitelüberschriften als auch für separate Kapitelseiten +% (Option~\opt{chapterpage}). Eingefügt werden sie für die Gliederungsbefehle +% der Kapitel durch die beiden Haken \cs{tud@chapter@before@hook} sowie +% \cs{tud@chapter@after@hook}, den Start und das Ende der Gliederungsbefehle +% für Kapitel definieren. +% \begin{macrocode} +\newcommand*\tud@chapter@pre{% + \if@tud@chapterpage% +% \end{macrocode} +% Für den zweispaltigen Satz und aktivierter \opt{chapterpage}-Option muss +% für die Kapitelseiten temporär auf einseitigen Satz umgestellt werden, damit +% alle Befehle und Einstellungen beim Erzeugen des jeweiligen Kapitels zum +% Tragen kommen. Soll der Fehler behoben werden, dass bei Kapitelüberschriften +% im zweispaltigen Satz der Abstand zwischen Überschrift und Textkörper nicht +% stimmt, sei außerdem das Paket \pkg{twocolfix} empfohlen. +% \begin{macrocode} + \@restonecolfalse% + \if@twocolumn\@restonecoltrue\onecolumn\fi% + \tud@cd@specialpage@set{chapter}% + \fi% +} +% \end{macrocode} +% Unabhängig von der Nutzung einer Kapitelseite, wird die Einstellung der +% Option \opt{cdchapter} für die Gestalt des TUD-Kopfes beachtet, falls dieser +% zum Einsatz kommt. +% \begin{macrocode} +\newcommand*\tud@head@bar@restore{} +\let\tud@head@bar@restore\relax +\newcommand*\tud@chapter@app{% +% \end{macrocode} +% Nach dem Setzen der Kapitelüberschrift selbst werden die Farbe für den +% Hintergrund, die Seitenzahl und den ggf. verwendeten TUD-Kopf angewendet. +% Danach wird die Seite beendet. Sollte zweiseitiger Satz, immer rechts +% öffnende Kapitel und die Option \opt{chapterpage} gewählt sein, so wird für +% ein konsistentes Layout für Überschriften auf Einzelseiten die Rückseite +% abhängig von der Option \opt{clearcolor} gegebenenfalls farbig gesetzt und +% die Option \opt{cleardoublespecialpage} bezüglich des Seitenstils der +% Rückseite beachtet. Umgesetzt wird dies mit \cs{tud@cleardoublespecialpage}. +% \begin{macrocode} + \if@tud@chapterpage% + \tud@cleardoublespecialpage{% + \renewcommand*\tud@pagecolor{}% + \let\tud@foot@fontcolor\tud@chapter@fontcolor% + \ifcase\tud@cd@chapter@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!10}% + \tud@locked@num@set{tud@head@bar@num}{1}% + \or% fullcolor + \renewcommand*\tud@pagecolor{HKS41!10}% + \tud@locked@num@set{tud@head@bar@num}{3}% + \fi% + \clearpage% + }% + \tud@cd@specialpage@unset% +% \end{macrocode} +% Außerdem wird für den Zweispaltensatz auf normales Verhalten zurückgestellt. +% \begin{macrocode} + \if@restonecol\twocolumn\fi% +% \end{macrocode} +% Sollten keine reinen Kapitelseiten verwendet werden, wird die Einstellung für +% die Gestalt des Seitenkopfes im restlichen Dokument (\cs{tud@head@bar@num}) +% in \cs{tud@head@bar@restore} gesichert. Dieser Befehl wird beim Ausführen der +% Ebene \pgs{tudheadings.last} aufgerufen, wodurch der geischerte Wert ab der +% darauffolgenden Seite wiederhergestellt wird. +% \begin{macrocode} + \else% + \edef\tud@head@bar@restore{% + \gdef\noexpand\tud@head@bar@num{\tud@head@bar@num}% + \global\let\noexpand\tud@head@bar@restore\relax% + }% + \ifcase\tud@cd@chapter@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 + \tud@locked@num@set{tud@head@bar@num}{1}% + \or% fullcolor + \tud@locked@num@set{tud@head@bar@num}{3}% + \fi% +% \end{macrocode} +% Im Kompatibilitätsmodus muss genügend zusätzlicher Freiraum für ein ggf. +% auszugebendes \DDC-Logo gelassen werden. +% \begin{macrocode} + \tud@if@v@lower{2.03}{\tud@ddc@enlargepage[\chapterpagestyle]}{}% + \fi% +% \end{macrocode} +% Unabhängig von der Option \opt{chapterpage} wird deim zweispaltigen Layout +% der Einzug des ersten Absatzes verhindert. +% \begin{macrocode} + \if@twocolumn% + \@afterindentfalse\@afterheading% + \fi% +} +% \end{macrocode} +% \end{macro}^^A \tud@head@bar@restore +% \end{macro}^^A \tud@chapter@pre +% \end{macro}^^A \tud@chapter@app +% \begin{macro}{\tud@chapter@before@hook} +% \changes{v2.06}{2018/08/01}{neu}^^A +% \begin{macro}{\tud@chapter@after@hook} +% \changes{v2.06}{2018/08/01}{neu}^^A +% \begin{macro}{\scr@startchapter} +% \begin{macro}{\scr@@startchapter} +% \begin{macro}{\scr@@startschapter} +% Die beiden Haken \cs{tud@chapter@before@hook} und \cs{tud@chapter@after@hook} +% werden den \KOMAScript-Befehlen hinzugefügt, welche den Start und das Ende +% der Gliederungsbefehle für Kapitel definieren. +% \begin{macrocode} +\newcommand*\tud@chapter@before@hook{} +\newcommand*\tud@chapter@after@hook{} +\pretocmd{\scr@startchapter}{% + \tud@chapter@before@hook% +}{}{\tud@patch@wrn{scr@startchapter}} +\apptocmd{\scr@@startchapter}{% + \tud@chapter@after@hook% +}{}{\tud@patch@wrn{scr@@startchapter}} +\apptocmd{\scr@@startschapter}{% + \tud@chapter@after@hook% +}{}{\tud@patch@wrn{scr@@startschapter}} +% \end{macrocode} +% \end{macro}^^A \scr@@startschapter +% \end{macro}^^A \scr@@startchapter +% \end{macro}^^A \scr@startchapter +% \end{macro}^^A \tud@chapter@after@hook +% \end{macro}^^A \tud@chapter@before@hook +% +% \iffalse +%</book|report> +% \fi +% +% \subsubsection{Umsetzung für Abschnitte etc.} +% +% Die Farbwahl wird einfach in dem von \KOMAScript{} bereitgestellten Haken +% zu Beginn einer Abschnittsüberschrift ausgeführt. +% \begin{macrocode} +\At@startsection{% + \renewcommand*\tud@section@fontcolor{}% + \ifcase\tud@cd@section@num\relax\or\else% *color + \ifstr{\tud@pagecolor}{HKS41}{}{% + \renewcommand*\tud@section@fontcolor{HKS41}% + }% + \fi% +} +% \end{macrocode} +% \begin{macro}{\tud@sectionlinesformat} +% \changes{v2.06}{2018/08/01}{neu}^^A +% \begin{macro}{\tud@sectioncatchphraseformat} +% \changes{v2.06}{2018/08/01}{neu}^^A +% Die Formatierungsbefehle für die Überschriften von Abschnitten etc. +% \begin{macrocode} +\newcommand*\tud@sectionlinesformat[4]{% + \@hangfrom{\hskip #2#3}{\tud@sec@format[#1]{#4}}% +} +% \end{macrocode} +% Für Überschriften mit Einzug wird \cs{tud@sec@strut} wirkungslos definiert. +% \begin{macrocode} +\newcommand*\tud@sectioncatchphraseformat[4]{% + \let\tud@sec@strut\relax% + \hskip #2#3\tud@sec@format[#1]{#4}% +} +% \end{macrocode} +% \end{macro}^^A \tud@sectioncatchphraseformat +% \end{macro}^^A \tud@sectionlinesformat +% +% \iffalse +%</class&body> +% \fi +% +% +% \Finale +% +\endinput |