% \iffalse meta-comment
%/GitFileInfo=tudscr-color.dtx
%
%  TUD-Script -- Corporate Design of Technische Universität Dresden
% ----------------------------------------------------------------------------
%
%  Copyright (C) Falk Hanisch <hanisch.latex@outlook.com>, 2012-2022
%
% ----------------------------------------------------------------------------
%
%  This work may be distributed and/or modified under the conditions of the
%  LaTeX Project Public License, either version 1.3c of this license or
%  any later version. 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 2008-05-04 or later.
%
%  This work has the LPPL maintenance status "maintained".
%
%  The current maintainer and author of this work is Falk Hanisch.
%
% ----------------------------------------------------------------------------
%
% \fi
%
% \iffalse ins:batch + dtx:driver
%<*ins>
\ifx\documentclass\undefined
  \input docstrip.tex
  \ifToplevel{\batchinput{tudscr.ins}}
\else
  \let\endbatchfile\relax
\fi
\endbatchfile
%</ins>
%<*dtx>
\ProvidesFile{tudscr-color.dtx}[2022/08/09]
\RequirePackage{tudscr-gitinfo}
\documentclass[english,ngerman,xindy]{tudscrdoc}
\iftutex
  \usepackage{fontspec}
\else
  \usepackage[T1]{fontenc}
  \usepackage[ngerman=ngerman-x-latest]{hyphsubst}
\fi
\usepackage{babel}
\usepackage{tudscrfonts}
\usepackage[babel]{microtype}

\GitHubBase{\TUDScriptRepository}
\begin{document}
  \author{Falk Hanisch\TUDScriptContactTitle}
  \maketitle
  \tableofcontents
  \DocInput{\filename}
\end{document}
%</dtx>
% \fi
%
% \selectlanguage{ngerman}
%
%
%
% \section{Das Paket \pkg{tudscrcolor} -- Die Farben des \CDs}
%
% Das \TUDCD legt nicht nur die zu nutzenden Schriften und das Layout sondern 
% auch die zu verwendenden Farben fest. Diese werden nachfolgend für das CMYK"~ 
% und RGB"~Farbmodel definiert. Sie können im Dokument mit sämtlichen Befehlen
% zur Farbauswahl wie \cs{color}\marg{Farbe} oder \cs{textcolor}\marg{Farbe} 
% verwendet werden.
%
%    \begin{macrocode}
% \iffalse
%<*package>
\ProvidesPackage{tudscrcolor}[%
%!TUD@Version
  package (corporate design colors)%
]
%</package>
% \fi
%    \end{macrocode}
%
% \iffalse
%<*package>
% \fi
%
% \subsection{Optionen und Befehle}
%
% \begin{option}{newcolors}
% \begin{option}{reduced}
% \begin{option}{oldcolors}
% \begin{option}{extended}
% \begin{option}{full}
% Das Paket kann entweder mit einfachen, für \TUDScript ausreichenden oder 
% erweiterten Farbdefinitionen geladen werden. Letztere definieren zusätzliche 
% Farbbezeichnungen für die Kompatibilität zu alten TUD-Klassen.
% \ToDo{Optionen oldcolors und colormodel mit key-value-interface!}[v2.07]
%    \begin{macrocode}
\DeclareOption{newcolors}{\let\tud@setcolors@add\relax}
\DeclareOption{reduced}{\let\tud@setcolors@add\relax}
\DeclareOption{oldcolors}{\let\tud@setcolors@add\tud@setcolors@old}
\DeclareOption{extended}{\let\tud@setcolors@add\tud@setcolors@old}
\DeclareOption{full}{\let\tud@setcolors@add\tud@setcolors@old}
%    \end{macrocode}
% \end{option}^^A full
% \end{option}^^A extended
% \end{option}^^A oldcolors
% \end{option}^^A reduced
% \end{option}^^A newcolors
% \begin{macro}{\setcdcolors}
% Der Befehl \cs{setcdcolors} definiert die Farben des \CDs. Das Argument dient
% zur Auswahl des gewünschten Farbmodels. Dies kann dazu genutzt werden,
% innerhalb des Dokumentes die Definition der Farben für ein neues Farbmodell 
% zu ändern.
%    \begin{macrocode}
\newcommand*\setcdcolors[1]{%
  \selectcolormodel{#1}%
  \tud@setcolors@do%
}
%    \end{macrocode}
% \end{macro}^^A \setcdcolors
% \begin{macro}{\tud@color}
% \changes{v2.04}{2015/04/21}{neu}^^A
% Der Befehl wählt eine in einem Makro gespeicherte Farbe nur aus, wenn dieses 
% auch tatsächlich definiert ist. Dieser Befehl wird von den \TUDScript-Klassen 
% für die Umsetzung des Layouts verwendet.
%    \begin{macrocode}
\newcommand*\tud@color[1]{\ifdefvoid{#1}{}{\color{#1}}}
%    \end{macrocode}
% \end{macro}^^A \tud@color
%
% \subsection{Farbdefinitionen}
% \subsubsection{Notwendige Farben für \TUDScript}
%
% \begin{macro}{\tud@setcolors@do}
% Die Definitionen der Farben erfolgt erst durch die Ausführung von 
% \cs{tud@setcolors@do}. Damit wird es möglich, auf die angegebenen Optionen in
% Form von \cs{tud@setcolors@add} oder den durch das Paket \pkg{xcolor}
% angegebenen Farbraum zu reagieren.
%    \begin{macrocode}
\newcommand*\tud@setcolors@do{%
%    \end{macrocode}
% \begin{TUDcolor}{HKS41}
% Die primäre Hausfarbe (dunkles Blau)
%    \begin{macrocode}
  \definecolor{HKS41}{cmyk/RGB/rgb}{%
    1.00,0.70,0.10,0.50/011,042,081/0.0431372549,0.16470588235,0.31764705882%
  }%
%    \end{macrocode}
% \end{TUDcolor}^^A HKS41
% \begin{TUDcolor}{HKS92}
% Die sekundäre Hausfarbe (grau), allein und ausschließlich für die Verwendung
% in der Geschäftsausstattung und nicht für Fließtext, Grafiken etc.
%    \begin{macrocode}
  \definecolor{HKS92}{cmyk/RGB/rgb}{%
    0.10,0.00,0.05,0.65/080,089,085/0.31372549019,0.34901960784,0.33333333333%
  }%
%    \end{macrocode}
% \end{TUDcolor}^^A HKS92
% \begin{TUDcolor}{HKS44}
% Auszeichnungen 1. Kategorie (helles Blau)
%    \begin{macrocode}
  \definecolor{HKS44}{cmyk/RGB/rgb}{%
    1.00,0.50,0.00,0.00/000,089,163/0,0.34901960784,0.63921568627%
  }%
%    \end{macrocode}
% \end{TUDcolor}^^A HKS44
% \begin{TUDcolor}{HKS36}
% \begin{TUDcolor}{HKS33}
% \begin{TUDcolor}{HKS57}
% \begin{TUDcolor}{HKS65}
% Auszeichnungen 2. Kategorie (Indigo, Purpur, dunkles Grün, helles Grün)
%    \begin{macrocode}
  \definecolor{HKS36}{cmyk/RGB/rgb}{%
    0.80,0.90,0.00,0.00/081,041,127/0.31764705882,0.16078431372,0.49803921568%
  }%
  \definecolor{HKS33}{cmyk/RGB/rgb}{%
    0.50,1.00,0.00,0.00/129,026,120/0.50588235294,0.10196078431,0.47058823529%
  }%
  \definecolor{HKS57}{cmyk/RGB/rgb}{%
    1.00,0.00,0.90,0.20/000,122,071/0,0.47843137254,0.28235294117%
  }%
  \definecolor{HKS65}{cmyk/RGB/rgb}{%
    0.65,0.00,1.00,0.00/034,173,054/0.13333333333,0.67843137254,0.21176470588%
  }%
%    \end{macrocode}
% \end{TUDcolor}^^A HKS65
% \end{TUDcolor}^^A HKS57
% \end{TUDcolor}^^A HKS33
% \end{TUDcolor}^^A HKS36
% \begin{TUDcolor}{HKS07}
% Ausnahmefarbe (Orange)
%    \begin{macrocode}
  \definecolor{HKS07}{cmyk/RGB/rgb}{%
    0.00,0.60,1.00,0.00/232,123,020/0.90980392156,0.48235294117,0.07843137254%
  }%
%    \end{macrocode}
% \end{TUDcolor}^^A HKS07
% \begin{TUDcolor}{cddarkblue}
% \begin{TUDcolor}{cdgray}
% \begin{TUDcolor}{cdgrey}
% \begin{TUDcolor}{cdblue}
% \begin{TUDcolor}{cdindigo}
% \begin{TUDcolor}{cdpurple}
% \begin{TUDcolor}{cddarkgreen}
% \begin{TUDcolor}{cdgreen}
% \begin{TUDcolor}{cdorange}
% Die definierten Grundfarben werden zur einfacheren Verwendung im Dokument 
% noch einmal speziell benannt.
%    \begin{macrocode}
  \colorlet{cddarkblue}{HKS41}%
  \colorlet{cdgray}{HKS92}%
  \colorlet{cdgrey}{HKS92}%
  \colorlet{cdblue}{HKS44}%
  \colorlet{cdindigo}{HKS36}%
  \colorlet{cdpurple}{HKS33}%
  \colorlet{cddarkgreen}{HKS57}%
  \colorlet{cdgreen}{HKS65}%
  \colorlet{cdorange}{HKS07}%
%    \end{macrocode}
% \end{TUDcolor}^^A cdorange
% \end{TUDcolor}^^A cdgreen
% \end{TUDcolor}^^A cddarkgreen
% \end{TUDcolor}^^A cdpurple
% \end{TUDcolor}^^A cdindigo
% \end{TUDcolor}^^A cdblue
% \end{TUDcolor}^^A cdgrey
% \end{TUDcolor}^^A cdgray
% \end{TUDcolor}^^A cddarkblue
% Damit enden die notwendigen Farbdefinitionen für das \pkg{tudscrcolor}-Paket.
% Abhängig von den gewählten Optionen werden mit \cs{tud@setcolors@add} ggf.
% zusätzliche Farbnamen definiert.
%    \begin{macrocode}
  \tud@setcolors@add%
}
%    \end{macrocode}
% \end{macro}^^A \tud@setcolors@do
%
% \subsubsection{Zusätzliche Farben für alte TUD-Klassen}
%
% \begin{macro}{\tud@setcolors@add}
% \begin{macro}{\tud@setcolors@old}
% Die erweiterten Farbbefehle werden durch \pkg{tudscrcolor} definiert, wenn
% das Paket explizit mit der Option \opt{extended} geladen wird. Damit werden 
% alle gängigen Farbdefinitionen der vielen Insellösungen des \LaTeX-Universums
% an der \TnUD unterstützt.
%    \begin{macrocode}
\newcommand*\tud@setcolors@add{}
\newcommand*\tud@setcolors@old{%
  \def\tud@res@a##1{%
    \@for\tud@res@b:={10,20,30,40,50,60,70,80,90,100}\do{%
      \colorlet{##1K\tud@res@b}{##1!\tud@res@b}%
      \colorlet{##1-\tud@res@b}{##1!\tud@res@b}%
    }%
  }%
  \tud@res@a{HKS41}%
  \tud@res@a{HKS92}%
  \tud@res@a{HKS44}%
  \tud@res@a{HKS36}%
  \tud@res@a{HKS33}%
  \tud@res@a{HKS57}%
  \tud@res@a{HKS65}%
  \tud@res@a{HKS07}%
}
%    \end{macrocode}
% \end{macro}^^A \tud@setcolors@old
% \end{macro}^^A \tud@setcolors@add
%
% \subsection{Ausführung der Optionen}
%
% Zum Schluss werden die Optionen ausgeführt und ggf. an \pkg{xcolor} 
% weitergereicht. Anschließend werden die Farben für das Dokument definiert.
% Ohne die Angabe eines optionalen Argumentes an das Paket \pkg{xcolor} erfolgt
% die Definition für den gewählten bzw. standardmäßig eingestellten Farbraum.
%    \begin{macrocode}
\DeclareOption*{\PassOptionsToPackage{\CurrentOption}{xcolor}}
\ExecuteOptions{reduced}
\ProcessOptions\relax
\RequirePackage{xcolor}
\tud@setcolors@do%
%    \end{macrocode}
%
% \iffalse
%</package>
% \fi
%
% \PrintBackMatter
%
\endinput