summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/tudscr/tudscr-base.dtx
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2017-01-27 23:14:08 +0000
committerKarl Berry <karl@freefriends.org>2017-01-27 23:14:08 +0000
commit953423df3388111af14ec84c79dfa6b10e1e8aac (patch)
treed91e3ead05751436a0713703f3cae5ffd3174fe9 /Master/texmf-dist/source/latex/tudscr/tudscr-base.dtx
parent83082c7f9a495b3086e74c09252c4046fdbc6a72 (diff)
tudscr (27jan17)
git-svn-id: svn://tug.org/texlive/trunk@43067 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/tudscr/tudscr-base.dtx')
-rw-r--r--Master/texmf-dist/source/latex/tudscr/tudscr-base.dtx381
1 files changed, 196 insertions, 185 deletions
diff --git a/Master/texmf-dist/source/latex/tudscr/tudscr-base.dtx b/Master/texmf-dist/source/latex/tudscr/tudscr-base.dtx
index 471ae3b0491..d7b3f77c463 100644
--- a/Master/texmf-dist/source/latex/tudscr/tudscr-base.dtx
+++ b/Master/texmf-dist/source/latex/tudscr/tudscr-base.dtx
@@ -1,32 +1,32 @@
-% \CheckSum{774}
+% \CheckSum{749}
% \iffalse meta-comment
-%
-% ============================================================================
-%
-% TUD-Script
-% Copyright (c) Falk Hanisch <tudscr@gmail.com>, 2012-2016
-%
-% ============================================================================
-%
+%
+% TUD-Script -- Corporate Design of Technische Universität Dresden
+% ----------------------------------------------------------------------------
+%
+% Copyright (C) Falk Hanisch <tudscr@gmail.com>, 2012-2017
+%
+% ----------------------------------------------------------------------------
+%
% 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 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
+% 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 veraendert werden. Die aktuelle
-% Version dieser Lizenz ist http://www.latex-project.org/lppl.txt und
-% Version 1.3c oder spaeter ist Teil aller Verteilungen von LaTeX 2005/12/01
-% oder spaeter und dieses Werks. Dieses Werk hat den LPPL-Verwaltungs-Status
-% "author-maintained", wird somit allein durch den Autor verwaltet. Der
+% 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
%
@@ -49,9 +49,9 @@
% \iffalse
%%% From File: tudscr-base.dtx
%<*driver>
-\ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi
+\ifx\ProvidesFile\@undefined\def\ProvidesFile#1[#2]{}\fi
\ProvidesFile{tudscr-base.dtx}[%
- 2016/09/22 v2.05d TUD-Script\space%
+ 2017/01/26 v2.05g TUD-Script\space%
%</driver>
%<package&base>\ProvidesPackage{tudscrbase}[%
%<*driver|package&base>
@@ -68,13 +68,19 @@
\usepackage{babel}
\usepackage{tudscrfonts} % only load this package, if the fonts are installed
\KOMAoptions{parskip=half-}
-\usepackage{microtype}
\usepackage{bookmark}
+\usepackage[babel]{microtype}
+
\CodelineIndex
\RecordChanges
\GetFileInfo{tudscr-base.dtx}
+\title{\file{\filename}}
+\author{Falk Hanisch\qquad\expandafter\mailto\expandafter{\tudscrmail}}
+\date{\fileversion\nobreakspace(\filedate)}
+
\begin{document}
\maketitle
+ \tableofcontents
\DocInput{\filename}
\end{document}
%</driver>
@@ -84,35 +90,34 @@
%
% \changes{v2.02}{2014/06/23}{Paket \pkg{titlepage} nicht weiter unterstützt}^^A
%
-% \section{Grundlegende Befehle und Pakete}
+% \section{Das Paket \pkg{tudscrbase} -- Basisdefinitionen für \TUDScript}
+%
+% Für die Erstellung der \TUDScript-Klassen werden die dafür benötigten Pakete
+% eingebunden und Steuerungsbefehle definiert. Die Klassen sowie einige Pakete
+% benötigen das Paket und laden dieses auch.
%
-% Für die Erstellung der Wrapper-Klassen werden die dafür benötigten Pakete
-% eingebunden und Steuerungsbefehle definiert.
% \ToDo{%
-% Schnittstelle ähnlich zu \cs{KOMA@kav@\dots}? Falls ja, dann Löschen von
-% Elemente aus \pkg{etoolbox}-Listen ermöglichen \cs{list(cs)(g/e/x)}rem%
+% Schnittstelle äquivalent zu \cs{KOMA@kav@\dots}? Falls ja, dann Löschen
+% von Elementen aus \pkg{etoolbox}-Listen mit \cs{list(cs)(g/e/x)}rem oder
+% ähnlich ermöglichen%
% }[v2.07]
-% \ToDo{alle benötigten Pakete zur Not mit UnwindqPackage abfangen}[v2.06]
+% \ToDo{alle benötigten Pakete zur Not mit Unwind@Package abfangen}[v2.06]
%
-% \StopEventually{\PrintIndex\PrintChanges\PrintToDos}
%
-% \iffalse
-%<*load>
-% \fi
+% \StopEventually{\PrintIndex\PrintChanges\PrintToDos}
%
-% \subsection{Laden des Paketes}
-% Die Klassen sowie einige Pakete benötigen das Paket und laden dieses auch.
% \begin{macrocode}
+%<*load>
\RequirePackage{tudscrbase}[\TUD@Version]
+%</load>
% \end{macrocode}
%
+% \subsection{Notwendige Pakete für \TUDScript}
+%
% \iffalse
-%</load>
-%<*package>
+%<*package|class&doc>
% \fi
%
-% \subsection{Das Paket \pkg{tudscrbase}}
-%
% Das Paket \pkg{scrbase} wird zur Optionsdefinition benötigt, \pkg{scrlfile}
% für verschiedene Hooks vor sowie nach Klassen und Paketen.
% \ToDo{Patches für \pkg{scrbase} raus}[v3.21]
@@ -153,26 +158,77 @@
}%
}
%</base>
-%<fontsfix>\RequirePackage{scrlfile}[2013/12/19]
+% \end{macrocode}
+% Das Paket \pkg{fix-tudscrfonts} muss bereits vor der Dokumentklasse geladen
+% werden und führt anschließend spezifische Anpassungen an diese aus. Dafür
+% ist das Paket \pkg{scrlfile} notwendig.
+% \begin{macrocode}
+%<fontsfix|doc>\RequirePackage{scrlfile}[2013/12/19]
% \end{macrocode}
% Das Paket \pkg{etoolbox} wird für die Manipulation bereits definierter
% Makros sowie zur erweiterten Auswertung boolescher Ausdrücke benötigt.
% \begin{macrocode}
-%<base|fontsfix>\RequirePackage{etoolbox}[2011/01/03]
+%<base|fontsfix|doc>\RequirePackage{etoolbox}[2011/01/03]
% \end{macrocode}
-%
-% \iffalse
-%</package>
-%<*package&base>
-% \fi
-%
% Das Paket \pkg{kvsetkeys} erweitert \pkg{keyval} um die Möglichkeit, das
% Verhalten bei der Angabe eines nicht definierten Schlüssels festzulegen.
% \begin{macrocode}
+%<*base>
\RequirePackage{etexcmds}[2011/02/16]
\RequirePackage{kvsetkeys}[2012/04/25]
+%</base>
+% \end{macrocode}
+%
+% \iffalse
+%</package|class&doc>
+%<*package&base|class&doc>
+% \fi
+%
+% \subsection{Grundlegende Befehle für \TUDScript}
+% \subsubsection{Temporäre Makros zur internen Verwendung durch \TUDScript}
+%
+% Hier werden Makros definiert, die allein für die interne temporäre Nutzung
+% gedacht sind.
+% \begin{macro}{\tud@reserved}
+% \changes{v2.05}{2015/10/27}{neu}^^A
+% Ein Makro zur temporären Verwendung.
+% \begin{macrocode}
+\newcommand*\tud@reserved{}
+% \end{macrocode}
+% \end{macro}^^A \tud@reserved
+% \begin{macro}{\tud@toks@}
+% \changes{v2.05}{2015/11/01}{neu}^^A
+% \begin{macro}{\eaddto@hook}
+% \changes{v2.05}{2015/11/01}{neu}^^A
+% Es wird ein token-Regsiter reserviert, welches im weiteren Verlauf an allen
+% möglichen Punkten verwendet wird. Mit \cs{eaddto@hook} wird~-- in Ergänzung
+% zu \cs{addto@hook}~-- ein Makro zum Anfügen des expandierten Arguments an ein
+% token-Register bereitgestellt.
+% \begin{macrocode}
+%<package&base>\newtoks\tud@toks@
+\newcommand*\eaddto@hook[2]{%
+ \expandafter\addto@hook\expandafter#1\expandafter{#2}%
+}
+% \end{macrocode}
+% \end{macro}^^A \eaddto@hook
+% \end{macro}^^A \tud@toks@
+% Die Befehle für die Klasse \cls{tudscrdoc} bereits definierten Befehle
+% werden vor dem Laden von \pkg{tudscrbase} undefiniert gesetzt.
+% \begin{macrocode}
+%<*doc>
+\BeforePackage{tudscrbase}{%
+ \undef\tud@reserved%
+ \undef\eaddto@hook%
+}
+%</doc>
% \end{macrocode}
%
+% \iffalse
+%</package&base|class&doc>
+%<*package&base>
+% \fi
+%
+%
% \subsubsection{Robuster Test auf leeres Argument}
%
% \begin{macro}{\ifxblank}
@@ -374,102 +430,45 @@
% \end{macrocode}
% \end{macro}^^A \tud@lowerstring
%
-% \subsubsection{Makros zur internen Verwendung}
+% \subsubsection{Erweiterung von \KOMAScript-Schriftelementen}
%
-% Hier werden Makros definiert, die allein für die interne temporäre Nutzung
-% gedacht sind.
-% \begin{macro}{\tud@reserved}
-% \changes{v2.05}{2015/10/27}{neu}^^A
-% Ein Makro zur temporären Verwendung.
-% \begin{macrocode}
-\newcommand*\tud@reserved{}
-% \end{macrocode}
-% \end{macro}^^A \tud@reserved
-% \begin{macro}{\tud@toks@}
-% \changes{v2.05}{2015/11/01}{neu}^^A
-% \begin{macro}{\eaddto@hook}
-% \changes{v2.05}{2015/11/01}{neu}^^A
-% Es wird ein token-Regsiter reserviert, welches im weiteren Verlauf an allen
-% möglichen Punkten verwendet wird. Mit \cs{eaddto@hook} wird~-- in Ergänzung
-% zu \cs{addto@hook}~-- ein Makro zum Anfügen des expandierten Arguments an ein
-% token-Register bereitgestellt.
-% \begin{macrocode}
-\newtoks\tud@toks@
-\newcommand*\eaddto@hook[2]{%
- \expandafter\addto@hook\expandafter#1\expandafter{#2}%
+% \begin{macro}{\tud@font@koma@set}
+% \begin{macro}{\tud@font@koma@unset}
+% \begin{macro}{\tud@font@koma@reset}
+% \changes{v2.02}{2014/08/24}{neu}^^A
+% Es wird die Möglichkeit geschaffen, bestimmten Schriftelementen weitere
+% Eigenschaften mitzugeben. Damit dies optionsabhängig geschehen kann und
+% \cs{addtokomafont} nur einmalig verwendete werden muss, wird im Zweifelsfall
+% einem Schriftelement ein Hilfsmakro \cs{tud@font@koma@\meta{Element}}
+% zugewiesen, welches intern angepasst werden kann. Mit \cs{tud@font@koma@set}
+% werden dem angegebenen Element die gewünschten Schriftattribute zugeteilt.
+% \begin{macrocode}
+\newcommand*\tud@font@koma@set[2]{%
+ \ifcsdef{tud@font@koma@#1}{}{\addtokomafont{#1}{\csuse{tud@font@koma@#1}}}%
+ \csdef{tud@font@koma@#1}{#2\nobreak}%
}
% \end{macrocode}
-% \end{macro}^^A \eaddto@hook
-% \end{macro}^^A \tud@toks@
-%
-% \subsubsection{Ersetzen von Inhalten}
-%
-% \begin{macro}{\tud@replace}
-% \changes{v2.05}{2015/11/01}{neu}^^A
-% Mit diesem Befehl kann in einem gegebenen Makro ein bestimmtes Zeichen durch
-% ein anderes ersetzt werden. Dies wird verwendet, um für Indexbefehle oder
-% Labels die möglicherweise enthaltenen \val{@}-Zeichen zu ersetzen.
-% \begin{macrocode}
-\newcommand*\tud@replace[3]{%
- \begingroup%
-% \end{macrocode}
-% Zunächst wird \cs{@tempa} als ein durch \cs{@nil} abgegrenztes Makro mit
-% zwei Argumenten definiert, wobei diese durch das im zweiten Argument gegebene
-% \meta{Zeichen} voneinander abgegrenzt werden. Mit diese beiden Argumente wird
-% das Makro \cs{@tempb} aufgerufen.
+% Mit \cs{tud@font@koma@unset} kann das angegebene Element wieder zurückgesetzt
+% werden. Dabei wird das hinzugefügte Makro auf \cs{relax} gesetzt.
% \begin{macrocode}
- \toks@{\def\@tempa##1}%
- \eaddto@hook\toks@{\detokenize{#2}}%
- \addto@hook\toks@{##2\@nil{\@tempb{##1}{##2}}}%
-% \end{macrocode}
-% Der Inhalt von \cs{toks@} ist
-% \cs{def}\cs{@tempa\#1\meta{Zeichen}\#2}\cs{@nil\{\cs{@tempb\{\#1\}\{\#2\}}\}}
-% und definiert \cs{@tempa}.
-% \begin{macrocode}
- \the\toks@%
-% \end{macrocode}
-% Nun wird \cs{@tempb} definiert. Dieses Makro fügt dem Zielmakro das erste
-% Argumente gefolgt von \meta{Ersatzzeichen} hinzu. Mit dem zweiten Argument
-% wird anschließend \cs{@tempa\#\#2}\cs{@nil} so lange rekursiv aufgerufen, bis
-% es wirklich leer ist, wodurch das zweite Argument \meta{Zeichen} sukzessive
-% durch das dritte Argument \meta{Ersatzzeichen} ersetzt wird.
-% \begin{macrocode}
- \def\@tempb##1##2{%
- \IfArgIsEmpty{##2}{%
- \appto#1{##1}%
- \let\@tempc\relax%
- }{%
- \appto#1{##1#3}%
- \def\@tempc{\@tempa##2\@nil}%
- }%
- \@tempc%
- }%
-% \end{macrocode}
-% Nachdem die beiden notwendigen Makros definiert wurden, erfolgt jetzt die
-% eigentliche Ersetzung. Dafür wird der Inhalt des Zielmakros als Argument für
-% \cs{@tempa} verwendet. Diesem wird das zu ersetzende Zeichen gefolgt von
-% \cs{@nil} hinzugefügt, um das Argument abschließend zu begrenzen.
-% \begin{macrocode}
- \toks@{\@tempa}%
- \edef\@tempc{\expandafter\detokenize\expandafter{#1}}%
- \eaddto@hook\toks@{\@tempc}%
- \eaddto@hook\toks@{\detokenize{#2}\@nil}%
+\newcommand*\tud@font@koma@unset[1]{%
+ \ifcsdef{tud@font@koma@#1}{}{\addtokomafont{#1}{\csuse{tud@font@koma@#1}}}%
+ \csdef{tud@font@koma@#1}{\relax}%
+}
% \end{macrocode}
-% Der Inhalt von \cs{toks@} hat die Form \cs{@tempa\#1\meta{Zeichen}}\cs{@nil},
-% wobei der Inhalt von \meta{\#1} expandiert wird.
+% Werden \KOMAScript-Schriftelemente auf ihre Ausgangsdefinition zurückgesetzt,
+% so kann diesen mit \cs{tud@font@koma@reset} kann das passende Hilfsmakro
+% abermals zugewiesen werden.
% \begin{macrocode}
- \def#1{}%
- \the\toks@%
- \edef\tud@reserved{%
- \noexpand\endgroup%
- \def\noexpand#1{#1}%
- }%
- \tud@reserved%
+\newcommand*\tud@font@koma@reset[1]{%
+ \ifcsdef{tud@font@koma@#1}{\addtokomafont{#1}{\csuse{tud@font@koma@#1}}}{}%
}
% \end{macrocode}
-% \end{macro}^^A \tud@replace
+% \end{macro}^^A \tud@font@koma@unset
+% \end{macro}^^A \tud@font@koma@reset
+% \end{macro}^^A \tud@font@koma@set
%
-% \subsubsection{Schlüssel und Parameter für \TUDScript}
+% \subsubsection{Optionsdefinition für \TUDScript}
%
% In Anlehnung an \KOMAScript{} werden hier Befehle zur Definition und
% Ausführung unterschiedlicher Klassenoptionen mithilfe der Funktionen aus
@@ -720,16 +719,17 @@
% Layouts über Optionseinstellungen zu wechseln und dabei von einem definierten
% Anfangszustand auszugehen.
%
-% Mit dem Aufruf \cs{tud@cmd@store}\marg{Befehlsname} wird der angegebene
-% Befehl in einem neuen Makro \cs{@@tud@\meta{Befehlsname}} gespeichert. Dieser
-% kann danach beliebig angepasst werden. Soll der Befehl zu einem späteren
-% Zeitpunkt auf den Orginalzustand zurücksetzen, kann hierfür jederzeit der
-% Befehl \cs{tud@cmd@reset}\marg{Befehlsname} verwendet werden. Durch das Makro
-% \cs{tud@cmd@restore}\marg{Befehlsname} wird das mit \cs{tud@cmd@store}
-% erstellte Hilfsmakro zusätzlich noch gelöscht. Der ursprüngliche Befehl kann
-% als solcher mit \cs{tud@cmd@use}\marg{Befehlsname} weiterhin genutzt werden.
-% Durch das Makro \cs{tud@cmd@update}\marg{Befehlsname} wird ein gesichter
-% Befehl aktualisiert.
+% Mit dem Aufruf \cs{tud@cmd@store}\marg{Befehlsname} wird der im Argument
+% angegebene Befehl in einem neuem Makro \cs{@@tud@\meta{Befehlsname}}
+% gespeichert. Dieser kann danach beliebig angepasst werden. Soll der Befehl zu
+% einem späteren Zeitpunkt auf den Orginalzustand zurücksetzen, kann hierfür
+% jederzeit der Befehl \cs{tud@cmd@reset}\marg{Befehlsname} verwendet werden.
+% Durch das Makro \cs{tud@cmd@restore}\marg{Befehlsname} wird das mit
+% \cs{tud@cmd@store} erstellte Hilfsmakro zusätzlich noch gelöscht. Der
+% ursprüngliche Befehl kann als solcher mit \cs{tud@cmd@use}\marg{Befehlsname}
+% weiterhin genutzt werden. Ein zuvor bereits gesicherter Befehl kann mit dem
+% Makro \cs{tud@cmd@update}\marg{Befehlsname} auf die momentane Definition
+% aktualisiert werden.
% \begin{macrocode}
\newcommand*\tud@cmd@store[1]{%
\tud@cmd@check{#1}%
@@ -1098,6 +1098,11 @@
% \end{macrocode}
% \end{macro}^^A \TUD@parameter@error
%
+% \iffalse
+%</package&base>
+%<*package&base|class&doc>
+% \fi
+%
% \subsubsection{Ausführung von paketspezifischem Quellcode}
%
% Ab und an ist es notwendig, bestimmten Quelltext gezielt in Abhängigkeit vom
@@ -1109,8 +1114,15 @@
% Argument wird das Paket angegeben, im zweiten der Quellcode.
% \begin{macrocode}
\newcommand*\TUD@UnwindPackage[2]{\AtEndPreamble{\@ifpackageloaded{#1}{}{#2}}}
+%<doc>\BeforePackage{tudscrbase}{\undef\TUD@UnwindPackage}
% \end{macrocode}
% \end{macro}^^A \TUD@UnwindPackage
+%
+% \iffalse
+%</package&base|class&doc>
+%<*package&base>
+% \fi
+%
% \begin{macro}{\TUD@AfterPackage@set}
% \changes{v2.04}{2015/03/09}{neu}^^A
% \begin{macro}{\TUD@AfterPackage@do}
@@ -1147,6 +1159,8 @@
%</package&base>
% \fi
%
+% \subsubsection{Bedingt verzögerte Ausführung von \KOMAScript-Optionen}
+%
% \begin{macro}{\TUD@KOMAoptions}
% \changes{v2.05}{2015/07/17}{neu}^^A
% Dieses Makro wird verwendet, um innerhalb der \TUDScript-Klassen zu
@@ -1192,7 +1206,7 @@
%<*class&body>
% \fi
%
-% \subsection{Externe Pakete}
+% \section{Externe Pakete für die \TUDScript-Klassen}
%
% \changes{v2.01}{2014/04/24}{Versionsanforderungen bei benötigten Paketen}^^A
% \changes{v2.02}{2014/07/08}{Warnung bei Verwendung von \pkg{graphics}}^^A
@@ -1202,6 +1216,8 @@
% Pakete möglichst gering zu halten und nur die wirklich notwendigen zu
% verwenden.
%
+% \subsection{Erweiterte Definition von Umgebungen mit dem Paket \pkg{environ}}
+%
% Die \env{abstract}-Umgebung wird im Vergleich zu den \KOMAScript-Klassen
% stark erweitert. Für diese sowie für die Umgebungen \env{declarations} und
% \env{tudpage} wird das Paket \pkg{environ} für die Umgebungsdefinition
@@ -1209,37 +1225,11 @@
% \begin{macrocode}
\RequirePackage{environ}[2013/04/01]
% \end{macrocode}
-% Es folgen die Pakete, welche bei Bedarf am Ende der Präambel geladen werden.
-% \begin{macrocode}
-\AtEndPreamble{%
-% \end{macrocode}
-% Mit \pkg{graphicx} werden die Logos der TU~Dresden sowie von Dresden Concept
-% mit dem Befehl \cs{includegraphics} u.\,a. auf der Titelseite eingebunden.
-% Sollte lediglich das \pkg{graphics}-Paket geladen worden sein, so wird der
-% Nutzer mit einer Warnung informiert, dass das \pkg{graphicx}-Paket zusätzlich
-% geladen wird.
-% \begin{macrocode}
- \@ifpackageloaded{graphicx}{}{%
- \@ifpackageloaded{graphics}{%
- \ClassWarningNoLine{\TUD@Class@Name}{%
- Package `graphics' was superseded by `graphicx',\MessageBreak%
- which now will be loaded automatically%
- }%
- }{}%
- }%
- \RequirePackage{graphicx}[1999/02/16]%
-% \end{macrocode}
-% Mit dem Paket \pkg{tudscrcolor} werden die Befehle für die Auswahl der Farben
-% des \CDs definiert, welches wiederum \pkg{xcolor} lädt.
-% \begin{macrocode}
- \RequirePackage{tudscrcolor}[\TUD@Version]%
-}
-% \end{macrocode}
-%
-% \subsection{Parameter für mehrspaltige Texte}
%
-% Diese Befehle dienen dazu, bei Umgebungen oder Befehlen über einen Parameter
-% das Paket \pkg{multicol} verwenden zu können.
+% Innerhalb dieser Umgebungen soll es außerdem möglich sein, ein mehrspaltiges
+% Layout~-- auch konträr zu den globalen Dokumenteinstellungen~-- zu verwenden.
+% Mit diesen Befehlen lässt sich die Anzahl der Spalten über einen Parameter
+% anpassen, falls das Paket \pkg{multicol} geladen wurde.
% \begin{macro}{\tud@x@multicol@num}
% \begin{macro}{\tud@x@multicol@check}
% Im Makro \cs{tud@x@multicol@num} wird die Anzahl der gewünschten Spalten in
@@ -1267,6 +1257,35 @@
% \end{macro}^^A \tud@x@multicol@check
% \end{macro}^^A \tud@x@multicol@num
%
+% \subsection{Pakete für Grafiken und Farben}
+%
+% Es folgen die Pakete, welche bei Bedarf am Ende der Präambel geladen werden.
+% \begin{macrocode}
+\AtEndPreamble{%
+% \end{macrocode}
+% Mit \pkg{graphicx} werden die Logos der TU~Dresden sowie von Dresden Concept
+% mit dem Befehl \cs{includegraphics} u.\,a. auf der Titelseite eingebunden.
+% Sollte lediglich das \pkg{graphics}-Paket geladen worden sein, so wird der
+% Nutzer mit einer Warnung informiert, dass zusätzlich das \pkg{graphicx}-Paket
+% geladen wird.
+% \begin{macrocode}
+ \@ifpackageloaded{graphicx}{}{%
+ \@ifpackageloaded{graphics}{%
+ \ClassWarningNoLine{\TUD@Class@Name}{%
+ Package `graphics' was superseded by `graphicx',\MessageBreak%
+ which now will be loaded automatically%
+ }%
+ }{}%
+ \RequirePackage{graphicx}[1999/02/16]%
+ }%
+% \end{macrocode}
+% Mit dem Paket \pkg{tudscrcolor} werden die Befehle für die Auswahl der Farben
+% des \CDs definiert, welches wiederum \pkg{xcolor} lädt.
+% \begin{macrocode}
+ \RequirePackage{tudscrcolor}[\TUD@Version]%
+}
+% \end{macrocode}
+%
% \iffalse
%</class&body>
% \fi
@@ -1274,11 +1293,7 @@
% \Finale
%
\endinput
-%
-%
-% \iffalse
-%</package&base>
-% \fi
+
%
% \begin{macro}{\TUD@noworlater}
% \changes{v2.05}{2015/07/03}{neu implementiert}^^A
@@ -1332,7 +1347,3 @@
% \end{macro}^^A \TUD@noworlater@simple
% \end{macro}^^A \TUD@noworlater
%
-% \iffalse
-%<*package&base>
-% \fi
-% \ No newline at end of file