summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/tuda-ci/tex
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2020-09-09 03:03:16 +0000
committerNorbert Preining <norbert@preining.info>2020-09-09 03:03:16 +0000
commit4b315627efc5a6beb1e6c6ec7a98779f215c75eb (patch)
treecf65539a3758192b9bfbaea63d1962f28ec32a3e /macros/latex/contrib/tuda-ci/tex
parentbc2d0660f4f460b55009ab4e525f2a0e4cde6187 (diff)
CTAN sync 202009090303
Diffstat (limited to 'macros/latex/contrib/tuda-ci/tex')
-rw-r--r--macros/latex/contrib/tuda-ci/tex/beamercolorthemeTUDa.sty58
-rw-r--r--macros/latex/contrib/tuda-ci/tex/beamerfontthemeTUDa.sty16
-rw-r--r--macros/latex/contrib/tuda-ci/tex/beamerinnerthemeTUDa.sty186
-rw-r--r--macros/latex/contrib/tuda-ci/tex/beamerouterthemeTUDa.sty278
-rw-r--r--macros/latex/contrib/tuda-ci/tex/beamerthemeTUDa-mecheng.sty308
-rw-r--r--macros/latex/contrib/tuda-ci/tex/beamerthemeTUDa.sty21
-rw-r--r--macros/latex/contrib/tuda-ci/tex/tuda-a0paper.clo22
-rw-r--r--macros/latex/contrib/tuda-ci/tex/tuda-a1paper.clo22
-rw-r--r--macros/latex/contrib/tuda-ci/tex/tuda-a2paper.clo22
-rw-r--r--macros/latex/contrib/tuda-ci/tex/tuda-a3paper.clo22
-rw-r--r--macros/latex/contrib/tuda-ci/tex/tuda-a4paper.clo22
-rw-r--r--macros/latex/contrib/tuda-ci/tex/tuda-a5paper.clo22
-rw-r--r--macros/latex/contrib/tuda-ci/tex/tuda-pgfplots.sty6
-rw-r--r--macros/latex/contrib/tuda-ci/tex/tudabeamer.cls127
-rw-r--r--macros/latex/contrib/tuda-ci/tex/tudacolors.def6
-rw-r--r--macros/latex/contrib/tuda-ci/tex/tudacolors.sty83
-rw-r--r--macros/latex/contrib/tuda-ci/tex/tudaexercise.cls640
-rw-r--r--macros/latex/contrib/tuda-ci/tex/tudafonts.sty56
-rw-r--r--macros/latex/contrib/tuda-ci/tex/tudaleaflet.cls251
-rw-r--r--macros/latex/contrib/tuda-ci/tex/tudaletter.cls375
-rw-r--r--macros/latex/contrib/tuda-ci/tex/tudalettersize10pt.clo6
-rw-r--r--macros/latex/contrib/tuda-ci/tex/tudamecheng.cfg263
-rw-r--r--macros/latex/contrib/tuda-ci/tex/tudaposter.cls415
-rw-r--r--macros/latex/contrib/tuda-ci/tex/tudapub.cls902
-rw-r--r--macros/latex/contrib/tuda-ci/tex/tudarules.sty163
-rw-r--r--macros/latex/contrib/tuda-ci/tex/tudasciposter.cls372
-rw-r--r--macros/latex/contrib/tuda-ci/tex/tudasize9pt.clo6
-rw-r--r--macros/latex/contrib/tuda-ci/tex/tudathesis.cfg497
28 files changed, 2973 insertions, 2194 deletions
diff --git a/macros/latex/contrib/tuda-ci/tex/beamercolorthemeTUDa.sty b/macros/latex/contrib/tuda-ci/tex/beamercolorthemeTUDa.sty
index 1160ffe48f..3436437533 100644
--- a/macros/latex/contrib/tuda-ci/tex/beamercolorthemeTUDa.sty
+++ b/macros/latex/contrib/tuda-ci/tex/beamercolorthemeTUDa.sty
@@ -1,4 +1,4 @@
-%% This is file `beamercolorthemeTUDa.sty' version 2.11 (2020/06/12),
+%% This is file `beamercolorthemeTUDa.sty' version 3.00 (2020/09/08),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -26,70 +26,66 @@
%%
%% ============================================================================
%%
-\def\fileversion{2.11}
-\def\filedate{2020/06/12}
+\def\fileversion{3.00}
+\def\filedate{2020/09/08}
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{beamercolorthemeTUDa}
[\filedate\space\fileversion]
\RequirePackage{l3keys2e}
\ExplSyntaxOn
-\keys_define:nn {TUDa/beamercolor} {
- colortitle .bool_gset:N = \g_TUDa@beamer_colortitle_bool,
+\bool_if_exist:NF \g__ptxcd_colorframetitle_bool {\bool_new:N \g__ptxcd_colorframetitle_bool}
+
+\keys_define:nn {ptxcd/beamer/color} {
+ colortitle .bool_gset:N = \g_ptxcd_beamer_colortitle_bool,
colortitle .default:n = true,
colortitle .initial:n = true,
colorbacktitle .meta:n = {colortitle=#1},
- colorframetitle .bool_gset:N = \g_TUDa@beamer_colorframetitle_bool,
+ colorframetitle .code:n = \use:c {bool_gset_#1:N} \g__ptxcd_colorframetitle_bool \cs_if_exist_use:N \__ptxcd_setup_frametitle_color:,
colorframetitle .default:n = true,
- colorframetitle .initial:n = false,
colorback .meta:n = {colorframetitle=#1}
}
-\ProcessKeysOptions{TUDa/beamercolor}
+\ProcessKeysOptions{ptxcd/beamer/color}
\ExplSyntaxOff
\RequirePackage[RGB]{tudacolors}
-\mode<all>
+\mode<beamer>
\setbeamercolor*{smallrule}{bg=black}
\setbeamercolor*{identbar}{bg=identbarcolor}
\ExplSyntaxOn
-\bool_if:NTF \g_TUDa@beamer_colortitle_bool {
+\bool_if:NTF \g_ptxcd_beamer_colortitle_bool {
\setbeamercolor*{title}{fg=textonaccentcolor,bg=accentcolor}
}{
- \setbeamercolor*{title}{fg=black,bg=white}
+ \setbeamercolor*{title}{parent=normal~text}
}
-\setbeamercolor*{author}{parent=title}
-\setbeamercolor*{institute}{parent=title}
-\bool_if:NTF \g_TUDa@beamer_colorframetitle_bool {
- \setbeamercolor*{frametitle}{fg=textonaccentcolor,bg=accentcolor}
-} {
- \setbeamercolor*{frametitle}{fg=black,bg=white}
+\cs_new:Nn \__ptxcd_setup_frametitle_color: {
+ \bool_if:NTF \g__ptxcd_colorframetitle_bool {
+ \setbeamercolor*{frametitle}{fg=textonaccentcolor,bg=accentcolor}
+ } {
+ \setbeamercolor*{frametitle}{use=normal~text,fg=normal~text.fg,bg=}
+ }
}
-\ExplSyntaxOff
-
-\setbeamercolor*{frametitlecover}{bg=white}
-\setbeamercolor*{author in head/foot}{fg=black, bg=white}
-\setbeamercolor*{date in head/foot}{fg=black, bg=white}
+\__ptxcd_setup_frametitle_color:
-\setbeamercolor*{normal text}{bg=white,fg=black}
-\setbeamercolor*{background canvas}{bg=white}
+\ExplSyntaxOff
-\setbeamercolor*{section in toc}{fg=black,bg=white}
+\setbeamercolor*{author}{parent=title}
+\setbeamercolor*{institute}{parent=title}
+\setbeamercolor*{normal text}{bg=,fg=black}
+\setbeamercolor*{background canvas}{parent=normal text}
+\setbeamercolor*{section in toc}{parent=normal text}
+\setbeamercolor*{footline}{parent=normal text}
\setbeamercolor*{alerted text}{fg=textaccentcolor}
-\setbeamercolor{structure}{fg=textaccentcolor}
-
-\setbeamercolor*{palette primary}{fg=textaccentcolor}
-\setbeamercolor*{palette secondary}{fg=textaccentcolor}
-\setbeamercolor*{palette tertiary}{fg=textaccentcolor}
-\setbeamercolor*{palette quaternary}{fg=black}
+\setbeamercolor*{structure}{fg=textaccentcolor}
\setbeamercolor{bibliography item}{parent=item}
\setbeamercolor{bibliography entry author}{use=structure,fg=structure.fg}
diff --git a/macros/latex/contrib/tuda-ci/tex/beamerfontthemeTUDa.sty b/macros/latex/contrib/tuda-ci/tex/beamerfontthemeTUDa.sty
index a5c6b1568c..ceb211eff7 100644
--- a/macros/latex/contrib/tuda-ci/tex/beamerfontthemeTUDa.sty
+++ b/macros/latex/contrib/tuda-ci/tex/beamerfontthemeTUDa.sty
@@ -1,4 +1,4 @@
-%% This is file `beamerfontthemeTUDa.sty' version 2.11 (2020/06/12),
+%% This is file `beamerfontthemeTUDa.sty' version 3.00 (2020/09/08),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -26,8 +26,8 @@
%%
%% ============================================================================
%%
-\def\fileversion{2.11}
-\def\filedate{2020/06/12}
+\def\fileversion{3.00}
+\def\filedate{2020/09/08}
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{beamerfontthemeTUDa}
[\filedate\space\fileversion]
@@ -35,15 +35,15 @@
\RequirePackage{l3keys2e}
\ExplSyntaxOn
-\keys_define:nn {TUDa/beamer/fonts} {
- serif .bool_gset:N = \g_TUDa_serif_bool,
+\keys_define:nn {ptxcd/beamer/fonts} {
+ serif .bool_gset:N = \g_ptxcd_serif_bool,
serif .default:n = true,
serif .initial:n = false,
- sans-serif .bool_gset_inverse:N = \g_TUDa_serif_bool,
+ sans-serif .bool_gset_inverse:N = \g_ptxcd_serif_bool,
sans-serif .default:n = true,
}
-\ProcessKeysOptions{TUDa/beamer/fonts}
+\ProcessKeysOptions{ptxcd/beamer/fonts}
\ExplSyntaxOff
@@ -52,7 +52,7 @@
\RequirePackage{tudafonts}
\ExplSyntaxOn
-\bool_if:NTF \g_TUDa_serif_bool
+\bool_if:NTF \g_ptxcd_serif_bool
{\usefonttheme{serif}}
{\renewcommand*{\familydefault}{\sfdefault}}
\ExplSyntaxOff
diff --git a/macros/latex/contrib/tuda-ci/tex/beamerinnerthemeTUDa.sty b/macros/latex/contrib/tuda-ci/tex/beamerinnerthemeTUDa.sty
index 76c6dd3e02..aa7404b629 100644
--- a/macros/latex/contrib/tuda-ci/tex/beamerinnerthemeTUDa.sty
+++ b/macros/latex/contrib/tuda-ci/tex/beamerinnerthemeTUDa.sty
@@ -1,4 +1,4 @@
-%% This is file `beamerinnerthemeTUDa.sty' version 2.11 (2020/06/12),
+%% This is file `beamerinnerthemeTUDa.sty' version 3.00 (2020/09/08),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -26,41 +26,10 @@
%%
%% ============================================================================
%%
-\def\fileversion{2.11}
-\def\filedate{2020/06/12}
-%% This is file `beamerinnerthemeTUDa.sty' version 1.11 (2019/10/15),
-%% it is part of
-%% TUDa-CI -- Corporate Design for TU Darmstadt
-%% ----------------------------------------------------------------------------
-%%
-%% Copyright (C) 2018--2019 by Marei Peischl <marei@peitex.de>
-%%
-%% ============================================================================
-%% 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 (at your option) 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 Maintainers of this work are
-%% Marei Peischl <tuda-ci@peitex.de>
-%% Markus Lazanowski <latex@ce.tu-darmstadt.de>
-%%
-%% The development respository can be found at
-%% https://github.com/tudace/tuda_latex_templates
-%% Please use the issue tracker for feedback!
-%%
-%% ============================================================================
-%%
-\def\fileversion{1.11}
-\def\filedate{2019/10/15}
+\def\fileversion{3.00}
+\def\filedate{2020/09/08}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{beamerinnerthemeTUDa}
- [\filedate\space\fileversion]
+\ProvidesExplPackage{beamerinnerthemeTUDa}{\filedate}{\fileversion}{Inner~beamer~theme~of~tuda-ci}
\RequirePackage{l3keys2e}
@@ -68,31 +37,39 @@
\RequirePackage{trimclip}
-
-\ExplSyntaxOn
-\keys_define:nn {TUDa/beamer/inner} {
- authorontitle .bool_gset:N = \g_TUDa_authorontitle_bool,
+\keys_define:nn {ptxcd/beamer/inner} {
+ authorontitle .bool_gset:N = \g_ptxcd_authorontitle_bool,
authorontitle .initial:n = false,
authorontitle .default:n = true
}
-\ProcessKeysOptions{TUDa/beamer/inner}
-
-\box_new:N \l_TUDa_titlegraphic_box
+\ProcessKeysOptions{ptxcd/beamer/inner}
+
+\box_new:N \l__ptxcd_titlegraphic_box
+\box_new:N \l__ptxcd_titlehead_box
+\dim_new:N \l__ptxcd_titlegraphic_ht_dim
+\dim_new:N \l__ptxcd_titlegraphic_wd_dim
+
+\@ifpackageloaded{beamerouterthemeTUDa}{}{
+ \dim_new:N \g__ptxcd_beamer_logosep_dim
+ \dim_new:N \l__ptxcd_beamer_extraindent_dim
+ \dim_new:N \g__ptxcd_beamer_sep_dim
+ \box_new:N \g__ptxcd_logo_box
+}
\RenewDocumentCommand{\titlegraphic}{sm}{
\IfBooleanTF{#1}{
\def\inserttitlegraphic{
- \hbox_set:Nn \l_TUDa_titlegraphic_box {\raisebox{\depth}{#2}}
- \box_resize_to_wd:Nn \l_TUDa_titlegraphic_box {\width}
- \dim_compare:nTF {\box_ht:N \l_TUDa_titlegraphic_box - \l_TUDa_titlegraphic_ht_dim > \c_zero_dim}
+ \hbox_set:Nn \l__ptxcd_titlegraphic_box {\raisebox{\depth}{#2}}
+ \box_resize_to_wd:Nn \l__ptxcd_titlegraphic_box {\width}
+ \dim_compare:nTF {\box_ht:N \l__ptxcd_titlegraphic_box - \l__ptxcd_titlegraphic_ht_dim > \c_zero_dim}
{
- \dim_set:Nn \l_tmpa_dim {.5\box_ht:N \l_TUDa_titlegraphic_box - .5\l_TUDa_titlegraphic_ht_dim}
- \clipbox{0pt~\dim_eval:n{\l_tmpa_dim}~0pt~\dim_eval:n{\l_tmpa_dim}}{\box_use:N \l_TUDa_titlegraphic_box}
+ \dim_set:Nn \l_tmpa_dim {.5\box_ht:N \l__ptxcd_titlegraphic_box - .5\l__ptxcd_titlegraphic_ht_dim}
+ \clipbox{0pt~\dim_eval:n{\l_tmpa_dim}~0pt~\dim_eval:n{\l_tmpa_dim}}{\box_use:N \l__ptxcd_titlegraphic_box}
}{
- \box_resize_to_ht:Nn \l_TUDa_titlegraphic_box {\l_TUDa_titlegraphic_ht_dim}
- \dim_set:Nn \l_tmpa_dim {(\box_wd:N \l_TUDa_titlegraphic_box - \width) / 2}
- \clipbox{\dim_eval:n{\l_tmpa_dim}~0pt~\dim_eval:n{\l_tmpa_dim}~0pt}{\box_use:N \l_TUDa_titlegraphic_box}
+ \box_resize_to_ht:Nn \l__ptxcd_titlegraphic_box {\l__ptxcd_titlegraphic_ht_dim}
+ \dim_set:Nn \l_tmpa_dim {(\box_wd:N \l__ptxcd_titlegraphic_box - \width) / 2}
+ \clipbox{\dim_eval:n{\l_tmpa_dim}~0pt~\dim_eval:n{\l_tmpa_dim}~0pt}{\box_use:N \l__ptxcd_titlegraphic_box}
}
}
}{
@@ -101,52 +78,47 @@
}
-\box_new:N \l_TUDa_titlehead_box
-
-\dim_new:N \l_TUDa_titlegraphic_ht_dim
-\dim_new:N \l_TUDa_titlegraphic_wd_dim
-
\defbeamertemplate*{title~ page}{TUDa}[1][]
{
\nointerlineskip
- \vspace{\dim_eval:n {-\c_TUDa_largerule_dim}}
- \hbox_set:Nn \l_TUDa_titlehead_box {
- \parbox{\dimexpr\TUDa@beamer@linewidth+2\TUDa@beamer@extraindent}{%
+ \vspace{\dim_eval:n {-\c_ptxcd_largerule_dim}}
+ \hbox_set:Nn \l__ptxcd_titlehead_box {
+ \parbox{\dimexpr\paperwidth-2\g__ptxcd_beamer_sep_dim}{%
\begin{beamercolorbox}[
wd=\linewidth,
- sep=\TUDa@beamer@logosep,
+ sep=\g__ptxcd_beamer_logosep_dim,
]{title}
\raggedright
\usebeamerfont{title}
\skip_horizontal:n {1ex}
- \strut\parbox[t]{\dimexpr\linewidth- \wd\TUDa@logobox-2ex\relax}{
+ \strut\parbox[t]{\dimexpr\linewidth- \box_wd:N \g__ptxcd_logo_box-2ex\relax}{
\inserttitle
\par
}
- \hspace{\fill}\raisebox{\dimexpr-\height+\ht\strutbox\relax}{\usebox\TUDa@logobox}
+ \hspace{\fill}\raisebox{\dimexpr-\height+\ht\strutbox\relax}{\box_use:N \g__ptxcd_logo_box}
\ifx\insertsubtitle\@empty
\else
- \par\vspace{\c_TUDa_largerule_dim}
- \skip_horizontal:n {1ex}\parbox[t]{\dimexpr\linewidth- \wd\TUDa@logobox-2ex\relax}{
+ \par\vspace{\c_ptxcd_largerule_dim}
+ \skip_horizontal:n {1ex}\parbox[t]{\dimexpr\linewidth- \box_wd:N \g__ptxcd_logo_box-2ex\relax}{
\usebeamerfont{subtitle}\insertsubtitle
}
\fi
\end{beamercolorbox}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% bool if authorontrile
-\bool_if:NT \g_TUDa_authorontitle_bool {
+\bool_if:NT \g_ptxcd_authorontitle_bool {
\par\nointerlineskip
\begin{beamercolorbox}[
- wd=\linewidth,ht=\c_TUDa_smallrule_dim,dp=\z@]{smallrule}
+ wd=\dimexpr\paperwidth-2\g__ptxcd_beamer_sep_dim,ht=\c_ptxcd_smallrule_dim,dp=\z@]{smallrule}
\end{beamercolorbox}
\par\nointerlineskip
\begin{beamercolorbox}[
wd=\linewidth,
- sep=\c_TUDa_largerule_dim,
+ sep=\c_ptxcd_largerule_dim,
]{title}
\raggedright
\skip_horizontal:n {1ex}
- \parbox[t]{\dimexpr\linewidth-2ex\relax}{
+ \parbox[t]{\dimexpr\paperwidth-2\g__ptxcd_beamer_sep_dim-2ex\relax}{
\ifx\insertauthor\@empty
\else
\usebeamercolor[fg]{author}\usebeamerfont{author}\insertauthor\par
@@ -160,100 +132,100 @@
}
}
}
- \box_use:N \l_TUDa_titlehead_box
+ \box_use:N \l__ptxcd_titlehead_box
\nointerlineskip\begin{beamercolorbox}[
- wd=\dimexpr\TUDa@beamer@linewidth+2\TUDa@beamer@extraindent,ht=\c_TUDa_smallrule_dim,dp=\z@]{smallrule}
+ wd=\dimexpr\paperwidth-2\g__ptxcd_beamer_sep_dim,ht=\c_ptxcd_smallrule_dim,dp=\z@]{smallrule}
\end{beamercolorbox}
- \dim_set:Nn \l_TUDa_titlegraphic_ht_dim {\textheight-\box_ht:N\l_TUDa_titlehead_box-\box_dp:N \l_TUDa_titlehead_box
- +\c_TUDa_largerule_dim-.5\c_TUDa_rulesep_dim-\c_TUDa_smallrule_dim}
- \let\height\l_TUDa_titlegraphic_ht_dim
- \dim_set:Nn \l_TUDa_titlegraphic_wd_dim{\TUDa@beamer@linewidth+2\TUDa@beamer@extraindent}
- \let\width\l_TUDa_titlegraphic_wd_dim
+ \dim_set:Nn \l__ptxcd_titlegraphic_ht_dim {\textheight-\box_ht:N\l__ptxcd_titlehead_box-\box_dp:N \l__ptxcd_titlehead_box
+ +\c_ptxcd_largerule_dim-.5\c_ptxcd_rulesep_dim-\c_ptxcd_smallrule_dim}
+ \let\height\l__ptxcd_titlegraphic_ht_dim
+ \dim_set:Nn \l__ptxcd_titlegraphic_wd_dim{\dimexpr\paperwidth-2\g__ptxcd_beamer_sep_dim}
+ \let\width\l__ptxcd_titlegraphic_wd_dim
\nointerlineskip
\begin{beamercolorbox}[wd=\width,center]{titlegraphic}
- \raisebox{-\c_TUDa_largerule_dim}[\dim_eval:n {\height-\c_TUDa_largerule_dim}][0pt]{\inserttitlegraphic}
+ \raisebox{-\c_ptxcd_largerule_dim}[\dim_eval:n {\height-\c_ptxcd_largerule_dim}][0pt]{\inserttitlegraphic}
\end{beamercolorbox}
+% \endgroup
}
-\ExplSyntaxOff
% Blocks
-\defbeamertemplate*{block begin}{TUDa}
+\defbeamertemplate*{block~begin}{TUDa}
{
\par\vskip\medskipamount%
- \begin{beamercolorbox}[ wd=\dimexpr\linewidth+2\TUDa@beamer@extraindent,sep=.5pt,
- leftskip=\dimexpr\ifdim\TUDa@beamer@extraindent>\z@\TUDa@beamer@extraindent-\beamer@colbox@sep\else\z@\fi]{block title}
+ \begin{beamercolorbox}[ wd=\dimexpr\linewidth+2\l__ptxcd_beamer_extraindent_dim,sep=.5pt,
+ leftskip=\dimexpr\ifdim\l__ptxcd_beamer_extraindent_dim>\z@\l__ptxcd_beamer_extraindent_dim-\beamer@colbox@sep\else\z@\fi]{block~title}
\ifx\insertblocktitle\@empty
\else
\begin{beamercolorbox}[colsep=.75ex,
- wd=\dimexpr\linewidth-1pt\relax]{block title}
+ wd=\dimexpr\linewidth-1pt\relax]{block~title}
\usebeamerfont*{block title}\insertblocktitle%
\end{beamercolorbox}%
- \ifbeamercolorempty[bg]{block title}
+ \ifbeamercolorempty[bg]{block~title}
{}
- {\ifbeamercolorempty[bg]{block body}{}{\par\nointerlineskip\vskip-0.5pt}}%
+ {\ifbeamercolorempty[bg]{block~body}{}{\par\nointerlineskip\vskip-0.5pt}}%
\leavevmode
\fi
- \begin{beamercolorbox}[colsep=.75ex,vmode, wd=\dimexpr\linewidth-1pt\relax]{block body}%
- \usebeamerfont{block body}%
- \ifbeamercolorempty[bg]{block body}{\vskip-.25ex}{\vskip-.75ex}\vbox{}%
+ \begin{beamercolorbox}[colsep=.75ex,vmode, wd=\dimexpr\linewidth-1pt\relax]{block~body}%
+ \usebeamerfont{block~body}%
+ \ifbeamercolorempty[bg]{block~body}{\vskip-.25ex}{\vskip-.75ex}\vbox{}%
}
-\defbeamertemplate*{block end}{TUDa}
+\defbeamertemplate*{block~end}{TUDa}
{\end{beamercolorbox}\end{beamercolorbox}\vskip\smallskipamount}
-\defbeamertemplate*{block alerted begin}{TUDa}
+\defbeamertemplate*{block~alerted~begin}{TUDa}
{
\par\vskip\medskipamount%
\begin{beamercolorbox}[
- wd=\dimexpr\linewidth+2\TUDa@beamer@extraindent,
+ wd=\dimexpr\linewidth+2\l__ptxcd_beamer_extraindent_dim,
sep=1.5pt,
- leftskip=\dimexpr\ifdim\TUDa@beamer@extraindent>\z@\TUDa@beamer@extraindent-\beamer@colbox@sep\else\z@\fi,
- ]{block frame alerted}
+ leftskip=\dimexpr\ifdim\l__ptxcd_beamer_extraindent_dim>\z@\l__ptxcd_beamer_extraindent_dim-\beamer@colbox@sep\else\z@\fi,
+ ]{block~frame~alerted}
\ifx\insertblocktitle\@empty
\else
- \begin{beamercolorbox}[wd={\dimexpr\linewidth-3pt},colsep=.75ex]{block title alerted}
- \usebeamerfont*{block title alerted}\insertblocktitle%
+ \begin{beamercolorbox}[wd={\dimexpr\linewidth-3pt},colsep=.75ex]{block~title~alerted}
+ \usebeamerfont*{block~title~alerted}\insertblocktitle%
\end{beamercolorbox}%
\vskip1.5pt\par\nointerlineskip
\fi
\leavevmode
- \usebeamerfont{block body alerted}%
- \begin{beamercolorbox}[wd={\dimexpr\linewidth-3pt},colsep=.75ex]{block body alerted}%
+ \usebeamerfont{block~body~alerted}%
+ \begin{beamercolorbox}[wd={\dimexpr\linewidth-3pt},colsep=.75ex]{block~body~alerted}%
}
-\defbeamertemplate*{block alerted end}{TUDa}
+\defbeamertemplate*{block~alerted~end}{TUDa}
{\end{beamercolorbox}\end{beamercolorbox}\vskip\smallskipamount}
-\defbeamertemplate*{block example begin}{TUDa}
+\defbeamertemplate*{block~example~begin}{TUDa}
{
\par\vskip\medskipamount%
\begin{beamercolorbox}[
- wd=\dimexpr\linewidth+2\TUDa@beamer@extraindent,
+ wd=\dimexpr\linewidth+2\l__ptxcd_beamer_extraindent_dim,
sep=1.5pt,
- leftskip=\dimexpr\ifdim\TUDa@beamer@extraindent>\z@\TUDa@beamer@extraindent-\beamer@colbox@sep\else\z@\fi,
- ]{block frame example}
+ leftskip=\dim_eval:n {\dim_compare:nTF {\l__ptxcd_beamer_extraindent_dim>\c_zero_dim} {\l__ptxcd_beamer_extraindent_dim-\beamer@colbox@sep} {\c_zero_dim}},
+ ]{block~frame~example}
\ifx\insertblocktitle\@empty
\else
- \begin{beamercolorbox}[wd={\dimexpr\linewidth-3pt},colsep=.75ex]{block title example}
- \usebeamerfont*{block title example}\insertblocktitle%
+ \begin{beamercolorbox}[wd={\dimexpr\linewidth-3pt},colsep=.75ex]{block~title~example}
+ \usebeamerfont*{block~title~example}\insertblocktitle%
\end{beamercolorbox}%
\vskip1.5pt\par\nointerlineskip
\fi
\leavevmode
- \usebeamerfont{block body example}%
- \begin{beamercolorbox}[wd={\dimexpr\linewidth-3pt},colsep=.75ex]{block body example}%
+ \usebeamerfont{block~body~example}%
+ \begin{beamercolorbox}[wd={\dimexpr\linewidth-3pt},colsep=.75ex]{block~body~example}%
}
-\defbeamertemplate*{block example end}{TUDa}
+\defbeamertemplate*{block~example~end}{TUDa}
{\end{beamercolorbox}\end{beamercolorbox}\vskip\smallskipamount}
%Itemize Items
-\defbeamertemplate*{itemize item}{TUDa}{\usebeamerfont*{itemize item}\raise\dimexpr.4\ht\strutbox-.4ex\hbox{\rule{.8ex}{.8ex}}}
-\defbeamertemplate*{itemize subitem}{TUDa}{\usebeamerfont*{itemize item}\setlength{\fboxsep}{\z@}\setlength{\fboxrule}{1pt}\raise\dimexpr.4\ht\strutbox-.2ex-\fboxrule\hbox{\fbox{\color{bg}\rule{.4ex}{.4ex}}}}
-\defbeamertemplate*{itemize subsubitem}{TUDa}{\usebeamerfont*{itemize subitem}\hbox{--}}
+\defbeamertemplate*{itemize~item}{TUDa}{\usebeamerfont*{itemize~item}\raise\dimexpr.4\ht\strutbox-.4ex\hbox{\rule{.8ex}{.8ex}}}
+\defbeamertemplate*{itemize~subitem}{TUDa}{\usebeamerfont*{itemize~item}\setlength{\fboxsep}{\z@}\setlength{\fboxrule}{1pt}\raise\dimexpr.4\ht\strutbox-.2ex-\fboxrule\hbox{\fbox{\color{bg}\rule{.4ex}{.4ex}}}}
+\defbeamertemplate*{itemize~subsubitem}{TUDa}{\usebeamerfont*{itemize~subitem}\hbox{--}}
\mode<all>
diff --git a/macros/latex/contrib/tuda-ci/tex/beamerouterthemeTUDa.sty b/macros/latex/contrib/tuda-ci/tex/beamerouterthemeTUDa.sty
index 52389e9d59..88558b2a85 100644
--- a/macros/latex/contrib/tuda-ci/tex/beamerouterthemeTUDa.sty
+++ b/macros/latex/contrib/tuda-ci/tex/beamerouterthemeTUDa.sty
@@ -1,4 +1,4 @@
-%% This is file `beamerouterthemeTUDa.sty' version 2.11 (2020/06/12),
+%% This is file `beamerouterthemeTUDa.sty' version 3.00 (2020/09/08),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -26,149 +26,171 @@
%%
%% ============================================================================
%%
-\def\fileversion{2.11}
-\def\filedate{2020/06/12}
+\def\fileversion{3.00}
+\def\filedate{2020/09/08}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{beamerouterthemeTUDa}
- [\filedate\space\fileversion]
+\ProvidesExplPackage{beamerouterthemeTUDa}{\filedate}{\fileversion}{Outer~beamer~theme~of~tuda-ci}
\RequirePackage{l3keys2e}
+\RequirePackage[paper=slide]{tudarules}
+
+
+\dim_new:N \l__ptxcd_beamer_extraindent_dim
+\dim_new:N {\g__ptxcd_beamer_sep_dim}
+\dim_gset:Nn \g__ptxcd_beamer_sep_dim {.3\c_ptxcd_logoheight_dim}
+\dim_new:N \g__ptxcd_beamer_logosep_dim
+\dim_gset:Nn \g__ptxcd_beamer_logosep_dim{2mm}
+
+
+\cs_if_exist:NF \g__ptxcd_colorframetitle_bool {\bool_new:N \g__ptxcd_colorframetitle_bool}
-\ExplSyntaxOn
-\keys_define:nn {TUDa/beamer/outer} {
- logo .bool_gset:N = \g_TUDa_headlinelogo_bool,
+\keys_define:nn {ptxcd/beamer/outer} {
+ logo .bool_gset:N = \g_ptxcd_headlinelogo_bool,
logo .default:n =true,
logo .initial:n =true,
- logofile .tl_gset:N = \g_TUDa_logofile_tl,
+ logofile .tl_gset:N = \g_ptxcd_logofile_tl,
logofile .initial:n = tuda_logo,
- colorframetitle .bool_gset:N = \g_TUDa_colorframetitle_bool,
- colorframetitle .initial:n = false,
- colorframetitle .default:n = true,
- centerframetitle .bool_gset:N = \g_TUDa_centerframetitle_bool,
- centerframetitle .initial:n = false,
- centerframetitle .default:n = true,
+ colorframetitle .code:n = {
+ \use:c {bool_gset_#1:N} \g__ptxcd_colorframetitle_bool
+ \cs_if_exist_use:N \__ptxcd_setup_frametitle_color:
+ },
+ colorframetitle .default:n = true,
+ centerframetitle .bool_gset:N = \g_ptxcd_centerframetitle_bool,
+ centerframetitle .initial:n = false,
+ centerframetitle .default:n = true,
+ framebgcolor .choice:,
+ framebgcolor / reset .code:n =
+ \__ptxcd_reset_framebgcolor:
+ ,
+ framebgcolor / unknown .code:n = {
+ \__ptxcd_set_framebgcolor:n {#1}
+ },
+ singleframebgcolor .code:n = {
+ \cs_gset_eq:Nc \__ptxcd_save_background_canvas: {beamer@thcbg@normal~text}
+ \keys_set:nn {ptxcd/beamer/outer} {
+ framebgcolor = #1
+ }
+ },
+ headsepline .bool_gset:N = \g_ptxcd_headsepline_bool,
+ headsepline .initial:n = true,
+ headsepline .default:n = true,
+}
+
+\define@key{beamerframe}{bgcolor}{
+ \keys_set:nn {ptxcd/beamer/outer} {
+ singleframebgcolor=#1
+ }
+}
+
+\cs_new:Nn \__ptxcd_reset_framebgcolor: {
+ \cs_gset_eq:cN {beamer@thcbg@normal~text} \__ptxcd_save_background_canvas:
+ \cs_undefine:N \__ptxcd_save_background_canvas:
+}
+
+\cs_new:Nn \__ptxcd_set_framebgcolor:n {
+ \cs_if_exist:cTF {\string\color@#1}
+ {\setbeamercolor{normal~text}{bg=#1}}
+ {\setbeamercolor{normal~text}{bg=TUDa-#1}}
}
+\BeforeBeginEnvironment{frame}{
+ \cs_if_exist:NT \__ptxcd_save_background_canvas: {
+ \__ptxcd_reset_framebgcolor:
+ }
+}
-\ProcessKeysOptions{TUDa/beamer/outer}
+\ProcessKeysOptions{ptxcd/beamer/outer}
\mode<presentation>
\RequirePackage{graphicx}
-\RequirePackage[paper=slide]{tudarules}
-\newlength{\TUDa@beamer@sep}
-\setlength{\TUDa@beamer@sep}{1em}
-\newlength{\TUDa@beamer@logosep}
-\setlength{\TUDa@beamer@logosep}{2mm}
-\newlength{\TUDa@beamer@extraindent}
-\ExplSyntaxOn
-\bool_if:NT \g_TUDa_colorframetitle_bool {\setlength{\TUDa@beamer@extraindent}{\TUDa@beamer@logosep}}
+\bool_if:NT \g__ptxcd_colorframetitle_bool
+ {\dim_set:Nn \l__ptxcd_beamer_extraindent_dim {\g__ptxcd_beamer_logosep_dim}}
\setbeamersize{
- text~margin~left= \dimexpr\TUDa@beamer@sep+\TUDa@beamer@extraindent\relax,
- text~margin~right=\dimexpr\TUDa@beamer@sep+\TUDa@beamer@extraindent\relax,
+ text~margin~left=\dimexpr\g__ptxcd_beamer_sep_dim+\l__ptxcd_beamer_extraindent_dim \relax,
+ text~margin~right=\dimexpr\g__ptxcd_beamer_sep_dim+\l__ptxcd_beamer_extraindent_dim \relax,
}
-\newlength{\TUDa@beamer@linewidth}
-\setlength{\TUDa@beamer@linewidth}{\dimexpr\paperwidth-2\TUDa@beamer@sep-2\TUDa@beamer@extraindent\relax}
+\cs_new:Nn \__ptxcd_beamer_linewidth: {\dim_eval:n {\paperwidth-\beamer@leftmargin-\beamer@rightmargin}}
%Logo
-\newsavebox{\TUDa@logobox}
-\sbox{\TUDa@logobox}{%
- \makebox[2.2\c_TUDa_logoheight_dim][l]{\includegraphics[height=\c_TUDa_logoheight_dim]{\g_TUDa_logofile_tl}}%
+\box_new:N \g__ptxcd_logo_box
+\hbox_gset:Nn \g__ptxcd_logo_box {%
+ \makebox[2.2\c_ptxcd_logoheight_dim][l]{\includegraphics[height=\c_ptxcd_logoheight_dim]{\g_ptxcd_logofile_tl}}%
}
-\TUDa@makeheadrule[color=identbarcolor,width=\paperwidth-2\TUDa@beamer@sep]{TUDa@beamer@headrule}
-\TUDa@makefootrule[width=\paperwidth-2\TUDa@beamer@sep]{TUDa@beamer@rule}
-
-\newlength{\TUDa@beamer@headheight}
-\setlength{\TUDa@beamer@headheight}{
-\dim_eval:n {
- \ht\TUDa@logobox+
- \dp\TUDa@logobox +
- 2\TUDa@beamer@logosep+
- \box_ht:N \TUDa@beamer@rule_box +
- \box_dp:N \TUDa@beamer@rule_box
-}}
-
-
-\ExplSyntaxOff
-
-
-\def\tudrule{\TUDa@beamer@rule}
-
+\ptxcd_makeheadrule[color=identbarcolor,width=\paperwidth-2\g__ptxcd_beamer_sep_dim]{ptxcd_beamer_headrule}
+\ptxcd_makefootrule[width=\paperwidth-2\g__ptxcd_beamer_sep_dim]{ptxcd_beamer_rule}
\newcommand\insertsmalllogo{\setbeamertemplate{logo}[small]\usebeamertemplate{logo}}
-
-\defbeamertemplate*{sidebar left}{TUD theme}{}
-\defbeamertemplate*{sidebar right}{TUD theme}{}
+\defbeamertemplate*{sidebar~left}{TUDa}{}
+\defbeamertemplate*{sidebar~right}{TUDa}{}
-\ExplSyntaxOn
+\bool_if_exist:NF \l_ptxcd_tmpa_bool {\bool_new:N \l_ptxcd_tmpa_bool}
-\bool_if_exist:NF \l_TUDa_tmpa_bool {\bool_new:N \l_TUDa_tmpa_bool}
-
-\defbeamertemplate*{footline}{TUDa theme}
+\defbeamertemplate*{footline}{TUDa}
{
- \begin{beamercolorbox}[leftskip=\TUDa@beamer@sep,rightskip=\TUDa@beamer@sep,
- ht=\csname c_TUDa_smallrule_dim\endcsname,dp=1mm]{footline}
- \TUDa@beamer@rule
+ \begin{beamercolorbox}[leftskip=\g__ptxcd_beamer_sep_dim,rightskip=\g__ptxcd_beamer_sep_dim,
+ ht=\csname c_ptxcd_smallrule_dim\endcsname,dp=1mm]{footline}
+ \ptxcd_beamer_rule
\end{beamercolorbox}
- \begin{beamercolorbox}[
- leftskip=\TUDa@beamer@sep,
- rightskip=\TUDa@beamer@sep, ht=2.75mm,dp=2.75mm]{footline}
+ \begin{beamercolorbox}[
+ leftskip=\g__ptxcd_beamer_sep_dim,
+ rightskip=\g__ptxcd_beamer_sep_dim, ht=2.75mm,dp=2.75mm]{footline}
\usebeamerfont{author~ in~ head/foot}%
- \bool_set_false:N \l_TUDa_tmpa_bool
+ \bool_set_false:N \l_ptxcd_tmpa_bool
\clist_map_variable:nNn {date, department, institute, author} \l_tmpa_tl {
\tl_if_empty:cF {beamer@short\l_tmpa_tl} {
- \bool_if:NTF \l_TUDa_tmpa_bool {~|~}
- {\bool_set_true:N \l_TUDa_tmpa_bool}
+ \bool_if:NTF \l_ptxcd_tmpa_bool {~|~}
+ {\bool_set_true:N \l_ptxcd_tmpa_bool}
\use:c {insertshort\l_tmpa_tl}
}
}
- \bool_if:NT \l_TUDa_tmpa_bool {~|~}
+ \bool_if:NT \l_ptxcd_tmpa_bool {~|~}
\insertframenumber
\hfill\raisebox{\dimexpr-.5\height+\dp\strutbox\relax}{\insertlogo}
- \end{beamercolorbox}
+ \end{beamercolorbox}
}
\RenewDocumentCommand{\logo}{sm}{
\IfBooleanTF{#1}{
- \setbeamertemplate{logo}{\resizebox{!}{.06\beamer@paperheight}{\mbox{#2}}}%TODO change with aspectratio
+ \setbeamertemplate{logo}{\resizebox{!}{.06\beamer@paperheight}{\mbox{#2}}}
}{
\setbeamertemplate{logo}{#2}
}
}
-\defbeamertemplate{headline}{TUDa theme.logo} {%
+\defbeamertemplate{headline}{TUDa.logo} {%
\begin{beamercolorbox}[
- leftskip=\TUDa@beamer@sep,rightskip=\TUDa@beamer@sep,
- ht=.75\TUDa@beamer@sep,dp=\box_dp:N \TUDa@beamer@headrule_box]{headline}
- \TUDa@beamer@headrule
+ leftskip=\g__ptxcd_beamer_sep_dim,rightskip=\g__ptxcd_beamer_sep_dim,
+ ht=.75\g__ptxcd_beamer_sep_dim,dp=\box_dp:N \ptxcd_beamer_headrule_box]{headline}
+ \ptxcd_beamer_headrule
\end{beamercolorbox}
}
-\box_new:N \l_TUDa_frametitle_box
+\box_new:N \l__ptxcd_frametitle_box
-\defbeamertemplate{frametitle}{TUDa~theme.logo}{%
+\defbeamertemplate{frametitle}{TUDa.logo}{%
\nointerlineskip%
\begin{beamercolorbox}[
- sep=\TUDa@beamer@logosep,
- wd=\dimexpr\TUDa@beamer@linewidth+2\TUDa@beamer@extraindent\relax,
- rightskip=-\TUDa@beamer@logosep,
- leftskip=\dimexpr-\TUDa@beamer@logosep+\TUDa@beamer@extraindent\relax,
+ sep=\g__ptxcd_beamer_logosep_dim,
+ wd=\dim_eval:n {\__ptxcd_beamer_linewidth:+2\l__ptxcd_beamer_extraindent_dim},
+ rightskip=-\g__ptxcd_beamer_logosep_dim,
+ leftskip=\dim_eval:n {-\g__ptxcd_beamer_logosep_dim+\l__ptxcd_beamer_extraindent_dim},
]{frametitle}
- \hbox_set:Nn \l_TUDa_frametitle_box {
+ \hbox_set:Nn \l__ptxcd_frametitle_box {
\parbox[t]
- {\dimexpr\linewidth- \wd\TUDa@logobox-1em\relax\relax}{%
+ {\dim_eval:n {\linewidth- \box_wd:N \g__ptxcd_logo_box-1em}}{%
\usebeamerfont{frametitle}\strut\insertframetitle
\ifx\insertframesubtitle\@empty
\else
@@ -179,39 +201,58 @@
\fi
}}
\leavevmode
- \bool_if:NTF \g_TUDa_centerframetitle_bool
+ \bool_if:NTF \g_ptxcd_centerframetitle_bool
{\raisebox{\dimexpr-.5\height+.5\depth}}
{\use:n}
- {\box_use:N \l_TUDa_frametitle_box}
+ {\box_use:N \l__ptxcd_frametitle_box}
\hfill%
- \bool_if:NTF \g_TUDa_centerframetitle_bool
+ \bool_if:NTF \g_ptxcd_centerframetitle_bool
{\raisebox{\dimexpr-.5\height+.5\depth}}
{\raisebox{\dimexpr-\height+\ht\strutbox}}
- {\usebox\TUDa@logobox}
+ {\box_use:N \g__ptxcd_logo_box}
\end{beamercolorbox}%
-\nointerlineskip
-\leavevmode\color{black}\hspace*{-\TUDa@beamer@extraindent}\rlap{\TUDa@beamer@rule}%
+\bool_if:NT \g_ptxcd_headsepline_bool {
+ \nointerlineskip
+ \begin{beamercolorbox}[
+ wd=\dim_eval:n {\textwidth+2\l__ptxcd_beamer_extraindent_dim},
+ ht=\c_ptxcd_smallrule_dim,
+ dp=0pt
+ ]{smallrule}
+ \end{beamercolorbox}
+}
}
-\defbeamertemplate*{headline}{TUDa~theme.nologo}
+\defbeamertemplate*{headline}{TUDa.nologo}
{%
- \vspace{.75\TUDa@beamer@sep}
+ \vspace{.75\g__ptxcd_beamer_sep_dim}
\begin{beamercolorbox}[
- leftskip=\TUDa@beamer@sep,rightskip=\TUDa@beamer@sep]{headline}
- \TUDa@beamer@headrule
+ leftskip=\g__ptxcd_beamer_sep_dim,rightskip=\g__ptxcd_beamer_sep_dim]{headline}
+ \ptxcd_beamer_headrule
\end{beamercolorbox}
- }
+ }
+
+\defbeamertemplate*{headline}{TUDa.simple}
+{
+ \ifbeamercolorempty[bg]{background~canvas}{
+ \vspace{\dimexpr.5\c_ptxcd_logoheight_dim-\c_ptxcd_rulesep_dim}
+ \skip_horizontal:n {\beamer@leftmargin}
+ \color{identbarcolor}
+ \vrule width\dimexpr\textwidth-\beamer@leftmargin-\beamer@rightmargin height\c_ptxcd_rulesep_dim
+ }{
+ \vspace{\dimexpr.5\c_ptxcd_logoheight_dim}
+ }
+}
-\defbeamertemplate*{frametitle}{TUDa~theme.nologo}{%
+\defbeamertemplate*{frametitle}{TUDa.nologo}{%
\nointerlineskip%
\begin{beamercolorbox}[
- sep=\TUDa@beamer@logosep,
- wd=\dimexpr\TUDa@beamer@linewidth+2\TUDa@beamer@extraindent\relax,
- leftskip=\dimexpr-\TUDa@beamer@logosep+\TUDa@beamer@extraindent\relax,
+ sep=\g__ptxcd_beamer_logosep_dim,
+ wd=\dim_eval:n {\__ptxcd_beamer_linewidth:+2\l__ptxcd_beamer_extraindent_dim},
+ leftskip=\dim_eval:n {-\g__ptxcd_beamer_logosep_dim+\l__ptxcd_beamer_extraindent_dim},
]{frametitle}
- \hbox_set:Nn \l_TUDa_frametitle_box {
+ \hbox_set:Nn \l__ptxcd_frametitle_box {
\parbox[t]
- {\dimexpr\linewidth- \wd\TUDa@logobox-1em\relax\relax}{%
+ {\dimexpr\linewidth- \box_wd:N \g__ptxcd_logo_box-1em\relax\relax}{%
\usebeamerfont{frametitle}\strut\insertframetitle
\ifx\insertframesubtitle\@empty
\else
@@ -222,37 +263,46 @@
\fi
}}
\leavevmode
-\bool_if:NTF \g_TUDa_centerframetitle_bool
+\bool_if:NTF \g_ptxcd_centerframetitle_bool
{\raisebox{\dimexpr-.5\height+.5\depth}}
{\use:n}
-{\box_use:N \l_TUDa_frametitle_box}
+{\box_use:N \l__ptxcd_frametitle_box}
% Rule for voffset similar to logo
\rule[\dim_eval:n {
- \bool_if:NTF \g_TUDa_centerframetitle_bool
- {-.5\ht\TUDa@logobox+.5\dp\TUDa@logobox} {-\ht\TUDa@logobox+\ht\strutbox}
- }]{0pt}{\dimexpr\ht\TUDa@logobox+\dp\TUDa@logobox\relax}
+ \bool_if:NTF \g_ptxcd_centerframetitle_bool
+ {-.5\box_ht:N \g__ptxcd_logo_box+.5\box_dp:N \g__ptxcd_logo_box}
+ {-\box_ht:N \g__ptxcd_logo_box+\ht\strutbox}
+ }]{0pt}{\dim_eval:n {
+ \box_ht:N \g__ptxcd_logo_box+\box_dp:N \g__ptxcd_logo_box
+ }}
\end{beamercolorbox}
+\bool_if:NT \g_ptxcd_headsepline_bool {
\nointerlineskip
-\TUDa@beamer@rule
+ \begin{beamercolorbox}[
+ wd=\dimexpr\linewidth+2\l__ptxcd_beamer_extraindent_dim \relax,
+ ht=\c_ptxcd_smallrule_dim,
+ dp=0pt
+ ]{smallrule}
+ \end{beamercolorbox}
+}
}
-\cs_new:Nn \TUDa_setup_frame: {
- \bool_if:NTF \g_TUDa_headlinelogo_bool {
- \setbeamertemplate{frametitle}[TUDa~ theme.logo]
- \setbeamertemplate{headline}[TUDa~ theme.logo]
+\cs_new:Nn \ptxcd_setup_frame: {
+ \bool_if:NTF \g_ptxcd_headlinelogo_bool {
+ \setbeamertemplate{frametitle}[TUDa.logo]
+ \setbeamertemplate{headline}[TUDa.logo]
}{
- \setbeamertemplate{frametitle}[TUDa~ theme.nologo]
- \setbeamertemplate{headline}[TUDa~ theme.nologo]
+ \setbeamertemplate{frametitle}[TUDa.nologo]
+ \setbeamertemplate{headline}[TUDa.nologo]
}
}
-\TUDa_setup_frame:
+\ptxcd_setup_frame:
\newcommand*{\setupTUDaFrame}[1]{
- \keys_set:nn {TUDa/beamer/outer} {#1}
- \TUDa_setup_frame:
+ \keys_set:nn {ptxcd/beamer/outer} {#1}
+ \ptxcd_setup_frame:
}
-\ExplSyntaxOff
\mode
diff --git a/macros/latex/contrib/tuda-ci/tex/beamerthemeTUDa-mecheng.sty b/macros/latex/contrib/tuda-ci/tex/beamerthemeTUDa-mecheng.sty
new file mode 100644
index 0000000000..745b113ed7
--- /dev/null
+++ b/macros/latex/contrib/tuda-ci/tex/beamerthemeTUDa-mecheng.sty
@@ -0,0 +1,308 @@
+%% This is file `beamerthemeTUDa-mecheng.sty' version 3.00 (2020/09/08),
+%% it is part of
+%% TUDa-CI -- Corporate Design for TU Darmstadt
+%% ----------------------------------------------------------------------------
+%%
+%% Copyright (C) 2018--2020 by Marei Peischl <marei@peitex.de>
+%%
+%% ============================================================================
+%% 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 (at your option) 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 Maintainers of this work are
+%% Marei Peischl <tuda-ci@peitex.de>
+%% Markus Lazanowski <latex@ce.tu-darmstadt.de>
+%%
+%% The development respository can be found at
+%% https://github.com/tudace/tuda_latex_templates
+%% Please use the issue tracker for feedback!
+%%
+%% ============================================================================
+%%
+\def\fileversion{3.00}
+\def\filedate{2020/09/08}
+\RequirePackage{expl3}
+\ProvidesExplPackage{beamerthemeTUDa-mecheng}{\filedate}{\fileversion}{specific tudabeamer configuration for the department of mechanical engineering}
+
+
+\tl_if_empty:NT \g_ptxcd_departmentlogo_tl {
+ \keys_set:nn {ptxcd/beamer}{departmentlogofile=tuda_maschinenbau_logo_rgb}
+}
+
+
+\mode<beamer>
+
+
+% Setup Arrow
+\RequirePackage{pgf}
+
+\cs_new:Nn \__ptxcd_mecheng_arrow:N {
+ \begin{pgfpicture}
+ \pgfsetcolor{TUDa-Arrow}
+ \pgfsetrectcap
+ \pgfsetlinewidth{2\c_ptxcd_smallrule_dim}
+ \pgfpathmoveto{\pgfpointorigin}
+ \pgfpathlineto{\pgfpointpolar{174}{.05#1}}
+ \pgfpathlineto{\pgfpointpolar{186}{.05#1}}
+ \pgfpathclose
+ \pgfusepath{fill}
+ \pgfpathmoveto{\pgfpoint{-.04#1}{0}}
+ \pgfpathlineto{\pgfpoint{-#1}{0}}
+ \pgfusepath{stroke}
+ \end{pgfpicture}
+}
+
+\NewDocumentCommand{\MechEngArrow}{sm}{
+ \IfBooleanT{#1}{\begingroup\colorlet{TUDa-Arrow}{.}}
+ \dim_set:Nn \l_tmpa_dim {#2}\__ptxcd_mecheng_arrow:N \l_tmpa_dim
+ \IfBooleanT{#1}{\endgroup}
+}
+
+%adjustments for colortheme
+\ExplSyntaxOff
+\setbeamercolor*{Primary1}{fg=TUDa-Primary1, bg=TUDa-Primary2}
+\setbeamercolor*{Primary2}{fg=TUDa-Primary2, bg=TUDa-Primary1}
+
+\setbeamercolor*{footer info}{fg=black!50}
+\setbeamercolor*{department in head/foot}{parent=footer info}
+\setbeamercolor*{institute in head/foot}{parent=footer info}
+\setbeamercolor*{title in head/foot}{parent=footer info}
+\setbeamercolor*{author in head/foot}{parent=footer info}
+\setbeamercolor*{date in head/foot}{parent=footer info}
+\setbeamercolor{footline}{use=Primary2,fg=Primary2.fg}
+\setbeamercolor*{title}{parent=normal~text}
+
+\setbeamercolor*{departmentlogo}{parent=normal text}
+\setbeamercolor*{logo}{parent=normal text}
+
+\ExplSyntaxOn
+
+%innertheme adjustments
+\defbeamertemplate*{title~ page}{TUDa-mecheng}[1][]
+{
+ \nointerlineskip
+ \vspace{\dimexpr.5\c_ptxcd_logoheight_dim-\ht\strutbox+
+ \box_dp:N \ptxcd_beamer_headrule_box + \box_ht:N \ptxcd_beamer_headrule_box
+ }
+ \hbox_set:Nn \l__ptxcd_titlehead_box {
+ \parbox{\__ptxcd_beamer_linewidth:}{%
+ \begin{beamercolorbox}[
+ wd=\linewidth,
+ ]{title}
+ \raggedright
+ \usebeamerfont{title}
+ \hbox_set:Nn \l__ptxcd_frametitle_box {
+ \parbox[c]{\dimexpr\linewidth-\box_wd:N \g__ptxcd_logo_box-1em\relax}{
+ \raggedright{}
+ \inserttitle
+ \par
+ }
+ }
+ \dim_compare:nT {\box_ht:N \l__ptxcd_frametitle_box > \baselineskip} {\raisebox{\dimexpr-\height+.5\c_ptxcd_logoheight_dim}}
+ {\box_use:N \l__ptxcd_frametitle_box}
+ \hspace{\fill}
+ \raisebox{\dimexpr-.5\height+.5\ht\strutbox-.5\dp\strutbox\relax}{\box_use:N \g__ptxcd_logo_box}\hspace*{\dimexpr-\beamer@rightmargin+\g__ptxcd_beamer_logosep_dim}
+ \ifx\insertsubtitle\@empty
+ \else
+ \par\vspace{\c_ptxcd_largerule_dim}
+ \parbox[t]{\dimexpr\linewidth- \box_wd:N \g__ptxcd_logo_box\relax}{
+ \usebeamerfont{subtitle}\insertsubtitle
+ }
+ \fi
+ \bool_if:NT \g_ptxcd_authorontitle_bool {
+ \par
+ \parbox[t]{\dimexpr\linewidth-2ex\relax}{
+ \ifx\insertauthor\@empty
+ \else
+ \usebeamercolor[fg]{author}\usebeamerfont{author}\insertauthor\par
+ \fi
+ \ifx\insertauthor\@empty
+ \else
+ \usebeamercolor[fg]{institute}\usebeamerfont{institute}\insertinstitute
+ \fi
+ }
+ }
+ \end{beamercolorbox}
+ }
+ }
+ \box_use:N \l__ptxcd_titlehead_box
+ \par\skip_vertical:n {\textheight-\box_ht:N\l__ptxcd_titlehead_box-\box_dp:N \l__ptxcd_titlehead_box+.5\c_ptxcd_smallrule_dim}
+ \begin{beamercolorbox}[
+ rightskip=.07\linewidth,%place image left of arrow tip
+ ht=\c_ptxcd_smallrule_dim,%dp=1mm,
+ wd=\dimexpr\textwidth]{footline}
+ \setbeamertemplate{departmentlogo}[TUDa-mecheng][width=\dimexpr2\linewidth/11\relax]
+ \insertdepartmentlogo
+ \hfill
+ \bool_if:NF \g_ptxcd_authorontitle_bool {
+ \begingroup
+ \usebeamerfont{footline}
+ \bool_set_false:N \l_ptxcd_tmpa_bool
+ \clist_map_variable:nNn {department, institute, author,date} \l_tmpa_tl {
+ \tl_if_empty:cF {beamer@short\l_tmpa_tl} {
+ \bool_if:NTF \l_ptxcd_tmpa_bool
+ {\space|\space}
+ {\bool_set_true:N \l_ptxcd_tmpa_bool}
+ \use:c {insert\l_tmpa_tl}
+ }
+ }
+ \endgroup
+ \quad
+ }
+ \insertlogo
+ \par\nointerlineskip\skip_vertical:n {2\c_ptxcd_smallrule_dim}
+ \MechEngArrow*{\linewidth}
+ \end{beamercolorbox}
+}
+
+
+\defbeamertemplate{background}{TUDa-mecheng-title}{
+ \dim_set:Nn \l__ptxcd_titlegraphic_ht_dim {\paperheight}
+ \dim_set:Nn \l__ptxcd_titlegraphic_wd_dim {\paperwidth}
+ \let\height\paperheight
+ \let\width\paperwidth
+ \inserttitlegraphic
+}
+
+
+\renewcommand*{\maketitle}{
+ \begingroup
+ \setbeamertemplate{background}[TUDa-mecheng-title]
+ \ifbeamer@inframe\titlepage\else\frame[plain]{\titlepage}\fi
+ \endgroup
+}
+
+\newcommand*{\insertdepartmentlogo}{\usebeamertemplate*{departmentlogo}}
+
+\defbeamertemplate*{departmentlogo}{TUDa-mecheng}[1][height=1.7\baselineskip]{
+ \str_set:Nx \l_tmpa_str {\str_range:Nnn \beamer@thc@fg {1} {-4}}
+ \file_if_exist:nTF {\g_ptxcd_departmentlogo_tl-\l_tmpa_str.pdf} {
+ \includegraphics[#1]{\g_ptxcd_departmentlogo_tl-\l_tmpa_str}
+ } {
+ \includegraphics[#1]{\g_ptxcd_departmentlogo_tl}
+ }
+}
+
+\defbeamertemplate*{footline}{TUDa-mecheng}
+{
+ \begin{beamercolorbox}[
+ wd=\linewidth,
+ leftskip=\beamer@leftmargin,rightskip=\beamer@rightmargin,
+ ]{footline}
+ \MechEngArrow*{\linewidth}
+ \par\skip_vertical:n {.5\g__ptxcd_beamer_logosep_dim}
+ \makebox[\linewidth][s]{
+ \insertdepartmentlogo
+ \hfill
+ \bool_set_false:N \l_ptxcd_tmpa_bool
+ \clist_map_variable:nNn {department, institute, author,title} \l_tmpa_tl {
+ \tl_if_empty:cF {beamer@short\l_tmpa_tl} {
+ \bool_if:NTF \l_ptxcd_tmpa_bool
+ {\space|\space}
+ {\bool_set_true:N \l_ptxcd_tmpa_bool}
+ \usebeamercolor[fg]{\l_tmpa_tl\space in\space head/foot}\usebeamerfont{\l_tmpa_tl\space in\space head/foot}
+ \use:c {insertshort\l_tmpa_tl}
+ }
+ }\quad
+ \tl_if_empty:cF {beamer@shortdate} {
+ \usebeamercolor{date~ in~ head/foot}\usebeamerfont{date~ in~ head/foot}
+ \insertshortdate\quad
+ }
+ \usebeamerfont{framenumber}
+ \makebox[.05\linewidth][l]{
+ \quad\llap{\insertframenumber}
+ }
+ }
+ \skip_vertical:n {\g__ptxcd_beamer_logosep_dim}
+ \end{beamercolorbox}
+}
+
+\defbeamertemplate{frametitle}{TUDa-mecheng.logo}{%
+ \nointerlineskip%
+ \begin{beamercolorbox}[
+ sep=\g__ptxcd_beamer_logosep_dim,
+ wd=\__ptxcd_beamer_linewidth:,
+ rightskip=-\g__ptxcd_beamer_logosep_dim,
+ leftskip=\dimexpr-\g__ptxcd_beamer_logosep_dim\relax,
+ ]{frametitle}
+ \hbox_set:Nn \l__ptxcd_frametitle_box {
+ \parbox[t]
+ {\dimexpr\linewidth- \box_wd:N \g__ptxcd_logo_box-1em\relax\relax}{%
+ \usebeamerfont{frametitle}\strut\insertframetitle
+ \ifx\insertframesubtitle\@empty
+ \else
+ \par
+ \usebeamercolor[fg]{framesubtitle}
+ \usebeamerfont{framesubtitle}
+ \insertframesubtitle
+ \fi
+ }}
+ \leavevmode
+ \bool_if:NTF \g_ptxcd_centerframetitle_bool
+ {\raisebox{\dimexpr-.5\height+.5\depth}}
+ {\use:n}
+ {\box_use:N \l__ptxcd_frametitle_box}
+ \hfill%
+ \raisebox{\dimexpr-.5\height+.5\depth}
+ {\box_use:N \g__ptxcd_logo_box}
+ \end{beamercolorbox}%
+ \nointerlineskip
+ \begin{beamercolorbox}[
+ sep=\g__ptxcd_beamer_logosep_dim,
+ wd=\__ptxcd_beamer_linewidth:,
+ rightskip=-\g__ptxcd_beamer_logosep_dim,
+ leftskip=\dimexpr-\g__ptxcd_beamer_logosep_dim\relax,
+ ht=\c_ptxcd_smallrule_dim.
+ dp=0
+ ]{smallrule}
+ \end{beamercolorbox}
+}
+
+\cs_set:Nn \__ptxcd_reset_framebgcolor: {
+ \setbeamercolor{normal~text}{fg=black,bg=}
+ \usebeamercolor[fg]{normal~text}
+ \setbeamercolor{footline}{use=Primary2,fg=Primary2.fg}
+ \setbeamercolor{footer~info}{fg=black!50}
+ \cs_gset_eq:cN {beamer@thcbg@normal~text} \__ptxcd_save_background_canvas:
+ \cs_undefine:N \__ptxcd_save_background_canvas:
+ \cs_if_exist:NT \__ptxcd_save_department_textaccentcolor:
+ {\cs_set_eq:cN {\string\color@textaccentcolor} \__ptxcd_save_department_textaccentcolor:}
+ \cs_undefine:N \__ptxcd_save_department_textaccentcolor:
+ \__ptxcd_setup_frametitle_color:
+}
+
+\cs_set:Nn \__ptxcd_set_framebgcolor:n {
+
+ \str_case:nnTF {#1} {
+ {Primary1} {\tl_set:Nn \l_tmpa_tl {Primary2}}
+ {Primary2} {\tl_set:Nn \l_tmpa_tl {Primary1}}
+ }{
+ \exp_args:Nnx \setbeamercolor{frametitle}{use=\l_tmpa_tl,fg=\l_tmpa_tl.fg,bg=}
+ \exp_args:Nnx \setbeamercolor{normal~text}{use=\l_tmpa_tl,fg=\l_tmpa_tl.fg,bg=\l_tmpa_tl.bg}
+ \exp_args:Nnx \setbeamercolor{footer~info}{use=\l_tmpa_tl,fg=\l_tmpa_tl.fg}
+ \exp_args:Nnx \setbeamercolor{footline}{use=\l_tmpa_tl,fg=\l_tmpa_tl.fg}
+ \cs_set_eq:Nc \__ptxcd_save_department_textaccentcolor: {\string\color@textaccentcolor}
+ \colorlet{textaccentcolor}{TUDa-\l_tmpa_tl}
+ }{
+ \cs_if_exist:cTF {\string\color@#1}
+ {\setbeamercolor{normal~text}{bg=#1}}
+ {\setbeamercolor{normal~text}{bg=TUDa-#1}}
+ }
+ \usebeamercolor[fg]{normal~text}
+}
+
+\setbeamertemplate{headline}[TUDa.simple]
+
+%font adjustments
+\setbeamerfont{subtitle}{size=\normalsize,series=\mdseries}
+
+\mode<all>
+
+\endinput \ No newline at end of file
diff --git a/macros/latex/contrib/tuda-ci/tex/beamerthemeTUDa.sty b/macros/latex/contrib/tuda-ci/tex/beamerthemeTUDa.sty
index c3c4cf8052..9f61b08382 100644
--- a/macros/latex/contrib/tuda-ci/tex/beamerthemeTUDa.sty
+++ b/macros/latex/contrib/tuda-ci/tex/beamerthemeTUDa.sty
@@ -1,4 +1,4 @@
-%% This is file `beamerthemeTUDa.sty' version 2.11 (2020/06/12),
+%% This is file `beamerthemeTUDa.sty' version 3.00 (2020/09/08),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -26,8 +26,8 @@
%%
%% ============================================================================
%%
-\def\fileversion{2.11}
-\def\filedate{2020/06/12}
+\def\fileversion{3.00}
+\def\filedate{2020/09/08}
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{beamerthemeTUDa}
[\filedate\space\fileversion\space beamer theme using the Corporate Design of TU Darmstadt]
@@ -39,16 +39,16 @@
\ExplSyntaxOn
-\keys_define:nn {TUDa/beamer} {
+\keys_define:nn {ptxcd/beamer} {
accentcolor .code:n = \PassOptionsToPackage{accentcolor=#1}{tudacolors},
- colortitle .code:n = \PassOptionsToPackage{accentcolor=#1}{beamercolorthemeTUDa},
- colorbacktitle .code:n = \PassOptionsToPackage{accentcolor=#1}{beamercolorthemeTUDa},
- colorframetitle .code:n = \PassOptionsToPackage{accentcolor=#1}{beamercolorthemeTUDa},
- colorback .code:n = \PassOptionsToPackage{accentcolor=#1}{beamercolorthemeTUDa},
+ colortitle .code:n = \PassOptionsToPackage{colortitle=#1}{beamercolorthemeTUDa},
+ colorbacktitle .code:n = \PassOptionsToPackage{colorbacktitle=#1}{beamercolorthemeTUDa},
+ colorframetitle .code:n = \PassOptionsToPackage{colorframetitle=#1}{beamerouterthemeTUDa},
+ colorback .code:n = \PassOptionsToPackage{colorback=#1}{beamercolorthemeTUDa},
logo .code:n = \PassOptionsToPackage{logo=#1}{beamerouterthemeTUDa}
}
-\ProcessKeysOptions{TUDa/beamer}
+\ProcessKeysOptions{ptxcd/beamer}
\ExplSyntaxOff
@@ -56,9 +56,8 @@
\usecolortheme{TUDa}
\useoutertheme{TUDa}
\useinnertheme{TUDa}
-%
\setbeamertemplate{navigation symbols}{}
-%\setbeamersize{text margin left=1em,text margin right=1em}
+
\mode<all>
diff --git a/macros/latex/contrib/tuda-ci/tex/tuda-a0paper.clo b/macros/latex/contrib/tuda-ci/tex/tuda-a0paper.clo
index d91a49f15c..96dcf95d8d 100644
--- a/macros/latex/contrib/tuda-ci/tex/tuda-a0paper.clo
+++ b/macros/latex/contrib/tuda-ci/tex/tuda-a0paper.clo
@@ -1,4 +1,4 @@
-%% This is file `tuda-a0paper.clo' version 2.11 (2020/06/12),
+%% This is file `tuda-a0paper.clo' version 3.00 (2020/09/08),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -26,16 +26,16 @@
%%
%% ============================================================================
%%
-\def\fileversion{2.11}
-\def\filedate{2020/06/12}
-\ProvidesExplFile{tuda-a0paper.clo}{\filedate}{\fileversion}{tuda-ci size adjustments for a0paper}
-\cs_set:Nn \TUDa_setup_title_sizes: {
- \cs_set:Nn \TUDa_title_fontsize: {{125pt}{165pt}}
- \cs_set:Nn \TUDa_subtitle_fontsize: {{42pt}{55pt}}
- \cs_set:Nn \TUDa_titleinfo_fontsize: {{28pt}{35pt}}
+\def\fileversion{3.00}
+\def\filedate{2020/09/08}
+\ProvidesExplFile{tuda-a0paper.clo}{\filedate}{\fileversion}{tuda-ci~size~adjustments~for~a0paper}
+\cs_set:Nn \ptxcd_setup_title_sizes: {
+ \cs_set:Nn \ptxcd_title_fontsize: {{125pt}{165pt}}
+ \cs_set:Nn \ptxcd_subtitle_fontsize: {{42pt}{55pt}}
+ \cs_set:Nn \ptxcd_titleinfo_fontsize: {{28pt}{35pt}}
}
-\cs_set:Nn \TUDa_setup_base_sizes: {
- \tl_if_empty:NT \g_TUDa_fontsize_tl {\tl_gset:Nn \g_TUDa_fontsize_tl {30pt}}
- \dim_gset:Nn \g_TUDa_margin_dim {30mm}
+\cs_set:Nn \ptxcd_setup_base_sizes: {
+ \tl_if_empty:NT \g_ptxcd_fontsize_tl {\tl_gset:Nn \g_ptxcd_fontsize_tl {30pt}}
+ \dim_gset:Nn \g_ptxcd_margin_dim {30mm}
}
\endinput \ No newline at end of file
diff --git a/macros/latex/contrib/tuda-ci/tex/tuda-a1paper.clo b/macros/latex/contrib/tuda-ci/tex/tuda-a1paper.clo
index d42ccca4c7..9671c338ad 100644
--- a/macros/latex/contrib/tuda-ci/tex/tuda-a1paper.clo
+++ b/macros/latex/contrib/tuda-ci/tex/tuda-a1paper.clo
@@ -1,4 +1,4 @@
-%% This is file `tuda-a1paper.clo' version 2.11 (2020/06/12),
+%% This is file `tuda-a1paper.clo' version 3.00 (2020/09/08),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -26,16 +26,16 @@
%%
%% ============================================================================
%%
-\def\fileversion{2.11}
-\def\filedate{2020/06/12}
-\ProvidesExplFile{tuda-a1paper.clo}{\filedate}{\fileversion}{tuda-ci size adjustments for a0paper}
-\cs_set:Nn \TUDa_setup_title_sizes: {
- \cs_set:Nn \TUDa_title_fontsize: {{86pt}{120pt}}
- \cs_set:Nn \TUDa_titleinfo_fontsize: {{35pt}{42pt}}
- \cs_set:Nn \TUDa_titlethanks_fontsize: {{22pt}{26pt}}
+\def\fileversion{3.00}
+\def\filedate{2020/09/08}
+\ProvidesExplFile{tuda-a1paper.clo}{\filedate}{\fileversion}{tuda-ci~size~adjustments~for~a0paper}
+\cs_set:Nn \ptxcd_setup_title_sizes: {
+ \cs_set:Nn \ptxcd_title_fontsize: {{86pt}{120pt}}
+ \cs_set:Nn \ptxcd_titleinfo_fontsize: {{35pt}{42pt}}
+ \cs_set:Nn \ptxcd_titlethanks_fontsize: {{22pt}{26pt}}
}
-\cs_set:Nn \TUDa_setup_base_sizes: {
- \tl_if_empty:NT \g_TUDa_fontsize_tl {\tl_gset:Nn \g_TUDa_fontsize_tl {25pt}}
- \dim_gset:Nn \g_TUDa_margin_dim {30mm}
+\cs_set:Nn \ptxcd_setup_base_sizes: {
+ \tl_if_empty:NT \g_ptxcd_fontsize_tl {\tl_gset:Nn \g_ptxcd_fontsize_tl {25pt}}
+ \dim_gset:Nn \g_ptxcd_margin_dim {30mm}
}
\endinput \ No newline at end of file
diff --git a/macros/latex/contrib/tuda-ci/tex/tuda-a2paper.clo b/macros/latex/contrib/tuda-ci/tex/tuda-a2paper.clo
index 524c7be21d..649804ee10 100644
--- a/macros/latex/contrib/tuda-ci/tex/tuda-a2paper.clo
+++ b/macros/latex/contrib/tuda-ci/tex/tuda-a2paper.clo
@@ -1,4 +1,4 @@
-%% This is file `tuda-a2paper.clo' version 2.11 (2020/06/12),
+%% This is file `tuda-a2paper.clo' version 3.00 (2020/09/08),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -26,16 +26,16 @@
%%
%% ============================================================================
%%
-\def\fileversion{2.11}
-\def\filedate{2020/06/12}
-\ProvidesExplFile{tuda-a2paper.clo}{\filedate}{\fileversion}{tuda-ci size adjustments for a0paper}
-\cs_set:Nn \TUDa_setup_title_sizes: {
- \cs_set:Nn \TUDa_title_fontsize: {{65pt}{82pt}}
- \cs_set:Nn \TUDa_titleinfo_fontsize: {{22pt}{28pt}}
- \cs_set:Nn \TUDa_titlethanks_fontsize: {{14pt}{20pt}}
+\def\fileversion{3.00}
+\def\filedate{2020/09/08}
+\ProvidesExplFile{tuda-a2paper.clo}{\filedate}{\fileversion}{tuda-ci~size~adjustments~for~a0paper}
+\cs_set:Nn \ptxcd_setup_title_sizes: {
+ \cs_set:Nn \ptxcd_title_fontsize: {{65pt}{82pt}}
+ \cs_set:Nn \ptxcd_titleinfo_fontsize: {{22pt}{28pt}}
+ \cs_set:Nn \ptxcd_titlethanks_fontsize: {{14pt}{20pt}}
}
-\cs_set:Nn \TUDa_setup_base_sizes: {
- \tl_if_empty:NT \g_TUDa_fontsize_tl {\tl_gset:Nn \g_TUDa_fontsize_tl {25pt}}
- \dim_gset:Nn \g_TUDa_margin_dim {30mm}
+\cs_set:Nn \ptxcd_setup_base_sizes: {
+ \tl_if_empty:NT \g_ptxcd_fontsize_tl {\tl_gset:Nn \g_ptxcd_fontsize_tl {25pt}}
+ \dim_gset:Nn \g_ptxcd_margin_dim {30mm}
}
\endinput \ No newline at end of file
diff --git a/macros/latex/contrib/tuda-ci/tex/tuda-a3paper.clo b/macros/latex/contrib/tuda-ci/tex/tuda-a3paper.clo
index 2ea4782a79..7eb16621da 100644
--- a/macros/latex/contrib/tuda-ci/tex/tuda-a3paper.clo
+++ b/macros/latex/contrib/tuda-ci/tex/tuda-a3paper.clo
@@ -1,4 +1,4 @@
-%% This is file `tuda-a3paper.clo' version 2.11 (2020/06/12),
+%% This is file `tuda-a3paper.clo' version 3.00 (2020/09/08),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -26,16 +26,16 @@
%%
%% ============================================================================
%%
-\def\fileversion{2.11}
-\def\filedate{2020/06/12}
-\ProvidesExplFile{tuda-a3paper.clo}{\filedate}{\fileversion}{tuda-ci size adjustments for a3paper}
-\cs_set:Nn \TUDa_setup_title_sizes: {
- \cs_set:Nn \TUDa_title_fontsize: {{47pt}{61pt}}
- \cs_set:Nn \TUDa_titleinfo_fontsize: {{16pt}{20pt}}
- \cs_set:Nn \TUDa_titlethanks_fontsize: {{12pt}{16pt}}
+\def\fileversion{3.00}
+\def\filedate{2020/09/08}
+\ProvidesExplFile{tuda-a3paper.clo}{\filedate}{\fileversion}{tuda-ci~size~adjustments~for~a3paper}
+\cs_set:Nn \ptxcd_setup_title_sizes: {
+ \cs_set:Nn \ptxcd_title_fontsize: {{47pt}{61pt}}
+ \cs_set:Nn \ptxcd_titleinfo_fontsize: {{16pt}{20pt}}
+ \cs_set:Nn \ptxcd_titlethanks_fontsize: {{12pt}{16pt}}
}
-\cs_set:Nn \TUDa_setup_base_sizes: {
- \tl_if_empty:NT \g_TUDa_fontsize_tl {\tl_gset:Nn \g_TUDa_fontsize_tl {17pt}}
- \dim_gset:Nn \g_TUDa_margin_dim {15mm}
+\cs_set:Nn \ptxcd_setup_base_sizes: {
+ \tl_if_empty:NT \g_ptxcd_fontsize_tl {\tl_gset:Nn \g_ptxcd_fontsize_tl {17pt}}
+ \dim_gset:Nn \g_ptxcd_margin_dim {15mm}
}
\endinput \ No newline at end of file
diff --git a/macros/latex/contrib/tuda-ci/tex/tuda-a4paper.clo b/macros/latex/contrib/tuda-ci/tex/tuda-a4paper.clo
index 351d8ec4fd..00f4d4e110 100644
--- a/macros/latex/contrib/tuda-ci/tex/tuda-a4paper.clo
+++ b/macros/latex/contrib/tuda-ci/tex/tuda-a4paper.clo
@@ -1,4 +1,4 @@
-%% This is file `tuda-a4paper.clo' version 2.11 (2020/06/12),
+%% This is file `tuda-a4paper.clo' version 3.00 (2020/09/08),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -26,16 +26,16 @@
%%
%% ============================================================================
%%
-\def\fileversion{2.11}
-\def\filedate{2020/06/12}
-\ProvidesExplFile{tuda-a4paper.clo}{\filedate}{\fileversion}{tuda-ci size adjustments for a4paper}
-\cs_set:Nn \TUDa_setup_title_sizes: {
- \cs_set:Nn \TUDa_title_fontsize: {{36pt}{47pt}}
- \cs_set:Nn \TUDa_titleinfo_fontsize: {{12pt}{14pt}}
- \cs_set:Nn \TUDa_titlethanks_fontsize: {{10pt}{11.5pt}}
+\def\fileversion{3.00}
+\def\filedate{2020/09/08}
+\ProvidesExplFile{tuda-a4paper.clo}{\filedate}{\fileversion}{tuda-ci~size~adjustments~for~a4paper}
+\cs_set:Nn \ptxcd_setup_title_sizes: {
+ \cs_set:Nn \ptxcd_title_fontsize: {{36pt}{47pt}}
+ \cs_set:Nn \ptxcd_titleinfo_fontsize: {{12pt}{14pt}}
+ \cs_set:Nn \ptxcd_titlethanks_fontsize: {{10pt}{11.5pt}}
}
-\cs_set:Nn \TUDa_setup_base_sizes: {
- \tl_if_empty:NT \g_TUDa_fontsize_tl {\tl_gset:Nn \g_TUDa_fontsize_tl {14pt}}
- \dim_gset:Nn \g_TUDa_margin_dim {15mm}
+\cs_set:Nn \ptxcd_setup_base_sizes: {
+ \tl_if_empty:NT \g_ptxcd_fontsize_tl {\tl_gset:Nn \g_ptxcd_fontsize_tl {14pt}}
+ \dim_gset:Nn \g_ptxcd_margin_dim {15mm}
}
\endinput \ No newline at end of file
diff --git a/macros/latex/contrib/tuda-ci/tex/tuda-a5paper.clo b/macros/latex/contrib/tuda-ci/tex/tuda-a5paper.clo
index 800de12c62..608441280b 100644
--- a/macros/latex/contrib/tuda-ci/tex/tuda-a5paper.clo
+++ b/macros/latex/contrib/tuda-ci/tex/tuda-a5paper.clo
@@ -1,4 +1,4 @@
-%% This is file `tuda-a5paper.clo' version 2.11 (2020/06/12),
+%% This is file `tuda-a5paper.clo' version 3.00 (2020/09/08),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -26,16 +26,16 @@
%%
%% ============================================================================
%%
-\def\fileversion{2.11}
-\def\filedate{2020/06/12}
-\ProvidesExplFile{tuda-a5paper.clo}{\filedate}{\fileversion}{tuda-ci size adjustments for a5paper}
-\cs_set:Nn \TUDa_setup_title_sizes: {
- \cs_set:Nn \TUDa_title_fontsize: {{22pt}{28pt}}
- \cs_set:Nn \TUDa_titleinfo_fontsize: {{10pt}{11.5pt}}
- \cs_set:Nn \TUDa_titlethanks_fontsize: {{10pt}{11.5pt}}
+\def\fileversion{3.00}
+\def\filedate{2020/09/08}
+\ProvidesExplFile{tuda-a5paper.clo}{\filedate}{\fileversion}{tuda-ci~size~adjustments~for~a5paper}
+\cs_set:Nn \ptxcd_setup_title_sizes: {
+ \cs_set:Nn \ptxcd_title_fontsize: {{22pt}{28pt}}
+ \cs_set:Nn \ptxcd_titleinfo_fontsize: {{10pt}{11.5pt}}
+ \cs_set:Nn \ptxcd_titlethanks_fontsize: {{10pt}{11.5pt}}
}
-\cs_set:Nn \TUDa_setup_base_sizes: {
- \tl_if_empty:NT \g_TUDa_fontsize_tl {\tl_gset:Nn \g_TUDa_fontsize_tl {10pt}}
- \dim_gset:Nn \g_TUDa_margin_dim {12mm}
+\cs_set:Nn \ptxcd_setup_base_sizes: {
+ \tl_if_empty:NT \g_ptxcd_fontsize_tl {\tl_gset:Nn \g_ptxcd_fontsize_tl {10pt}}
+ \dim_gset:Nn \g_ptxcd_margin_dim {12mm}
}
\endinput \ No newline at end of file
diff --git a/macros/latex/contrib/tuda-ci/tex/tuda-pgfplots.sty b/macros/latex/contrib/tuda-ci/tex/tuda-pgfplots.sty
index d1d928d5cc..cf6400471b 100644
--- a/macros/latex/contrib/tuda-ci/tex/tuda-pgfplots.sty
+++ b/macros/latex/contrib/tuda-ci/tex/tuda-pgfplots.sty
@@ -1,4 +1,4 @@
-%% This is file `tuda-pgfplots.sty' version 2.11 (2020/06/12),
+%% This is file `tuda-pgfplots.sty' version 3.00 (2020/09/08),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -26,8 +26,8 @@
%%
%% ============================================================================
%%
-\def\fileversion{2.11}
-\def\filedate{2020/06/12}
+\def\fileversion{3.00}
+\def\filedate{2020/09/08}
% Special thanks to: Sebastian Schöps Institut Theorie Elektromagnetischer Felder (TEMF), TU Darmstadt
% The original version of this file has been inspired by the colorscheme in the Metropolis beamer theme by Matthias Vogelgesang https://github.com/matze/mtheme
\ProvidesPackage{tuda-pgfplots}[\filedate\space\fileversion\space tuda-ci pgfplots color schemes]
diff --git a/macros/latex/contrib/tuda-ci/tex/tudabeamer.cls b/macros/latex/contrib/tuda-ci/tex/tudabeamer.cls
index 32a4d6b633..f7ba16e972 100644
--- a/macros/latex/contrib/tuda-ci/tex/tudabeamer.cls
+++ b/macros/latex/contrib/tuda-ci/tex/tudabeamer.cls
@@ -1,4 +1,4 @@
-%% This is file `tudabeamer.cls' version 2.11 (2020/06/12),
+%% This is file `tudabeamer.cls' version 3.00 (2020/09/08),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -26,8 +26,8 @@
%%
%% ============================================================================
%%
-\def\fileversion{2.11}
-\def\filedate{2020/06/12}
+\def\fileversion{3.00}
+\def\filedate{2020/09/08}
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{tudabeamer}
[\filedate\space\fileversion\space]
@@ -35,54 +35,72 @@
\RequirePackage{l3keys2e}
\RequirePackage{URspecialopts}
-\Define@specialopt@Module[TUDa/beamer]
+\Define@specialopt@Module[ptxcd/beamer]
\PassOptionsToClass{10pt}{beamer}
-\Module@DefineSpecialPassKey[TUDa/beamer]{color}<tudacolors>
+\Module@DefineSpecialPassKey[ptxcd/beamer]{color}<tudacolors>
\ExplSyntaxOn
-\keys_define:nn {TUDa/beamer} {
+\str_new:N \g_ptxcd_department_str
+\keys_define:nn {ptxcd/beamer} {
accentcolor .code:n = \PassOptionsToPackage{accentcolor=#1}{tudacolors},
colorframetitle .code:n = \PassOptionsToPackage{\l_keys_key_tl=#1}{beamercolorthemeTUDa}
\PassOptionsToPackage{\l_keys_key_tl=#1}{beamerouterthemeTUDa},
colorframetitle .default:n = true,
logo .code:n = \PassOptionsToPackage{logo=#1}{beamerouterthemeTUDa},
- pdfa .bool_gset:N = \g_TUDa@pdfa_bool,
+ pdfa .bool_gset:N = \g_ptxcd_pdfa_bool,
pdfa .initial:n = false,
logofile .code:n = \PassOptionsToPackage{logofile=#1}{beamerouterthemeTUDa},
serif .code:n = \PassOptionsToPackage{serif=#1}{beamerfontthemeTUDa},
serif .default:n = true,
sans-serif .code:n = \PassOptionsToPackage{sans-serif=#1}{beamerfontthemeTUDa},
sans-serif .default:n = true,
+ department .choice:,
+ department / default .code:n = \str_gset:Nn \g_ptxcd_department_str {default},
+ department / mecheng .code:n = {
+ \keys_set:nn {ptxcd/beamer} {
+ colorframetitle=false,
+ centerframetitle,
+ headsepline=false
+ }
+ \str_gset:Nn \g_ptxcd_department_str {mecheng}
+ },
+ department .initial:n = default,
+ mecheng .meta:n = {department=mecheng},
+ departmentlogofile .tl_gset:N = \g_ptxcd_departmentlogo_tl,
+ departmentlogofile .initial:n =,
}
\clist_map_inline:nn {colortitle, colorbacktitle, colorback} {
- \Module@DeclarePassOption[TUDa/beamer]{#1}{beamercolorthemeTUDa}
+ \Module@DeclarePassOption[ptxcd/beamer]{#1}{beamercolorthemeTUDa}
+}
+
+\clist_map_inline:nn {centerframetitle, logo, headsepline} {
+ \Module@DeclarePassOption[ptxcd/beamer]{#1}{beamerouterthemeTUDa}
}
-\Module@DeclarePassOption[TUDa/beamer]{centerframetitle}{beamerouterthemeTUDa}
-\Module@DeclarePassOption[TUDa/beamer]{authorontitle}{beamerinnerthemeTUDa}
+\Module@DeclarePassOption[ptxcd/beamer]{authorontitle}{beamerinnerthemeTUDa}
\ExplSyntaxOff
-\Module@DeclarePassOption[TUDa/beamer]{logo}{beamerouterthemeTUDa}
+
\PassOptionsToPackage{pdfpagelabels=false,plainpages=false}{hyperref}
\PassOptionsToClass{t}{beamer}
-\Module@Process@SpecialOptions[TUDa/beamer]
+\Module@Process@SpecialOptions[ptxcd/beamer]
\DeclareOption*{%
\PassOptionsToClass{\CurrentOption}{beamer}
}
-\ProcessKeysOptions{TUDa/beamer}
+\ProcessKeysOptions{ptxcd/beamer}
\ProcessOptions*
\ExplSyntaxOn
-\bool_if:NT \g_TUDa@pdfa_bool {\PassOptionsToPackage{RGB}{xcolor}}
+\bool_if:NT \g_ptxcd_pdfa_bool {\PassOptionsToPackage{RGB}{xcolor}}
-\bool_if:NT \g_TUDa@pdfa_bool {
+\bool_if:NT \g_ptxcd_pdfa_bool {
\RequirePackage{scrlfile}
\PreventPackageFromLoading{hyperref}
\def\hypersetup#1{}
@@ -93,28 +111,18 @@
\LoadClass{beamer}
\ExplSyntaxOn
-\bool_if:NT \g_TUDa@pdfa_bool {
+\bool_if:NT \g_ptxcd_pdfa_bool {
\UnPreventPackageFromLoading{hyperref}
\PassOptionsToPackage{a-2b}{pdfx}
\RequirePackage{pdfx}
}
-\ExplSyntaxOff
-
\hypersetup{hidelinks, unicode}
-% Load the TUD theme
-\AtEndOfClass{%
- \usetheme{TUDa}%
- \@input{\jobname.len}%
- \@starttoc{len}%
- \let\accentfont\normalfont%
-}
-
%\department command
-\def\department{\@dblarg\TUDa@beamer@department}
+\def\department{\@dblarg\ptxcd_beamer_department}
-\long\def\TUDa@beamer@department[#1]#2{%
+\long\def\ptxcd_beamer_department[#1]#2{%
\def\beamer@temp{#2}%
\ifx\beamer@temp\@empty
\def\insertdepartment{}
@@ -131,42 +139,39 @@
\beamer@insertshort{\beamer@shortdepartment}%
}}
%end of \department command
-%
-
-\ExplSyntaxOn
-\if_bool:N \g_TUDa@pdfa_bool
-\iow_new:N \TUDa@xmpdata_stream
-\iow_open:Nn \TUDa@xmpdata_stream {\jobname.xmpdata}
-\tl_new:N \g_TUDa@xmp_title
-\tl_new:N \g_TUDa@xmp_author
+\if_bool:N \g_ptxcd_pdfa_bool
+\iow_new:N \ptxcd_xmpdata_stream
+\iow_open:Nn \ptxcd_xmpdata_stream {\jobname.xmpdata}
+\tl_new:N \g_ptxcd_xmp_title
+\tl_new:N \g_ptxcd_xmp_author
-\cs_new:Nn \TUDa_pass_TitleData: {
+\cs_new:Nn \ptxcd_pass_TitleData: {
\begingroup
\def\newline{}
\def\\{}
\let\thanks\use_none:n
\cs_set:Npn \and {\exp_not:n {\exp_not:N \sep}}
- \bool_if:NTF \g_TUDa_pass_TitleData_bool {
- \tl_gset:Nx \g_TUDa@xmp_title {\insertshorttitle}
- \tl_gset:Nx \g_TUDa@xmp_author {\insertshortauthor}
- \iow_now:Nx \TUDa@xmpdata_stream
+ \bool_if:NTF \g_ptxcd_pass_TitleData_bool {
+ \tl_gset:Nx \g_ptxcd_xmp_title {\insertshorttitle}
+ \tl_gset:Nx \g_ptxcd_xmp_author {\insertshortauthor}
+ \iow_now:Nx \ptxcd_xmpdata_stream
{
- \exp_not:N \Title{\tl_to_str:V \g_TUDa@xmp_title}
+ \exp_not:N \Title{\tl_to_str:V \g_ptxcd_xmp_title}
^^J
- \exp_not:N \Author{\tl_to_str:V \g_TUDa@xmp_author}
+ \exp_not:N \Author{\tl_to_str:V \g_ptxcd_xmp_author}
^^J
\exp_not:N \Creator{LaTeX~ using~ the~ TUDa-CI~ Bundle}
}
}{
\begingroup
\use:c {pdfx@localcommands}
- \prop_if_in:NnF \g_TUDa_MetaData_prop {Creator} {\prop_gput:Nnn \g_TUDa_MetaData_prop {Creator} {LaTeX~ using~ the~ TUDa-CI~ Bundle}}
- \prop_map_function:NN \g_TUDa_MetaData_prop \TUDa_write_xmp_line:nn
+ \prop_if_in:NnF \g_ptxcd_MetaData_prop {Creator} {\prop_gput:Nnn \g_ptxcd_MetaData_prop {Creator} {LaTeX~ using~ the~ TUDa-CI~ Bundle}}
+ \prop_map_function:NN \g_ptxcd_MetaData_prop \ptxcd_write_xmp_line:nn
\endgroup
}
\endgroup
}
-\cs_new:Nn \TUDa_write_xmp_line:nn {
+\cs_new:Nn \ptxcd_write_xmp_line:nn {
%Fallback test for older kernels
\cs_if_exist:NTF \str_uppercase:f {
\tl_set:Nx \l_tmpa_tl {
@@ -178,32 +183,42 @@
\tl_set:Nx \l_tmpa_tl {\tl_mixed_case:n {#1}}
}
\cs_if_exist:cTF {\l_tmpa_tl}{
- \iow_now:Nx \TUDa@xmpdata_stream {
+ \iow_now:Nx \ptxcd_xmpdata_stream {
\c_backslash_str \l_tmpa_tl {\exp_not:n {#2}}
}
}{
- \msg_error:nnn {TUDapub} {unknown-metadata} {#1}
+ \msg_error:nnn{tudapub} {unknown-metadata} {#1}
}
}
-\bool_new:N \g_TUDa_pass_TitleData_bool
-\bool_gset_true:N \g_TUDa_pass_TitleData_bool
-\prop_new:N \g_TUDa_MetaData_prop
+\bool_new:N \g_ptxcd_pass_TitleData_bool
+\bool_gset_true:N \g_ptxcd_pass_TitleData_bool
+\prop_new:N \g_ptxcd_MetaData_prop
\newcommand*{\Metadata}[1]{
- \bool_gset_false:N \g_TUDa_pass_TitleData_bool
- \prop_gset_from_keyval:Nn \g_TUDa_MetaData_prop {#1}
+ \bool_gset_false:N \g_ptxcd_pass_TitleData_bool
+ \prop_gset_from_keyval:Nn \g_ptxcd_MetaData_prop {#1}
}
-\msg_new:nnnn {TUDapub} {unknown-metadata} {
+\msg_new:nnnn{tudapub} {unknown-metadata} {
You~ used~ the~ #1~ metadata~ entry.\\
I~ don't~ know~ how~ to~ handle~ that.\\
It~ will~ be~ ignored.
} {See~ TUDa-CI~ or~ pdfx~ documentation~ for~ details.}
\else:
-\msg_new:nnn {tudapub} {no-pdfa}{The~ tudapub~ class~ won't~ create~ PDF/A-mode.}
-\msg_info:nn {tudapub} {no-pdfa}
+\msg_new:nnn{tudapub} {no-pdfa}{The~ tudapub~ class~ won't~ create~ PDF/A-mode.}
+\msg_info:nn{tudapub} {no-pdfa}
\fi:
+
+\str_if_empty:NF \g_ptxcd_department_str {}
+
+% Load the TUDa theme
+\usetheme{TUDa}%
+\@input{\jobname.len}%
+\@starttoc{len}%
+\let\accentfont\normalfont%
+\file_if_exist:nT {beamerthemeTUDa-\g_ptxcd_department_str.sty} {\usetheme{TUDa-\g_ptxcd_department_str}}
+
\ExplSyntaxOff
\endinput \ No newline at end of file
diff --git a/macros/latex/contrib/tuda-ci/tex/tudacolors.def b/macros/latex/contrib/tuda-ci/tex/tudacolors.def
index 3fa655b7b1..b54b0455c4 100644
--- a/macros/latex/contrib/tuda-ci/tex/tudacolors.def
+++ b/macros/latex/contrib/tuda-ci/tex/tudacolors.def
@@ -1,4 +1,4 @@
-%% This is file `tudacolors.def' version 2.11 (2020/06/12),
+%% This is file `tudacolors.def' version 3.00 (2020/09/08),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -26,8 +26,8 @@
%%
%% ============================================================================
%%
-\def\fileversion{2.11}
-\def\filedate{2020/06/12}
+\def\fileversion{3.00}
+\def\filedate{2020/09/08}
\ProvidesFile{tudacolors.def}
[\filedate\space\fileversion\space Color definitions for tuda-ci]
diff --git a/macros/latex/contrib/tuda-ci/tex/tudacolors.sty b/macros/latex/contrib/tuda-ci/tex/tudacolors.sty
index 2b604e9d56..87094ee3c1 100644
--- a/macros/latex/contrib/tuda-ci/tex/tudacolors.sty
+++ b/macros/latex/contrib/tuda-ci/tex/tudacolors.sty
@@ -1,4 +1,4 @@
-%% This is file `tudacolors.sty' version 2.11 (2020/06/12),
+%% This is file `tudacolors.sty' version 3.00 (2020/09/08),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -26,84 +26,107 @@
%%
%% ============================================================================
%%
-\def\fileversion{2.11}
-\def\filedate{2020/06/12}
+\def\fileversion{3.00}
+\def\filedate{2020/09/08}
\NeedsTeXFormat{LaTeX2e}
\RequirePackage{expl3}
\ProvidesExplPackage{tudacolors}{\filedate}{\fileversion}{Color definition for TU Darmstadt's tuda-ci bundle}
\RequirePackage{l3keys2e}
-\keys_define:nn {TUDa/colors} {
- accent .tl_gset:N = \g_TUDa_color_accent_tl,
+\str_if_exist:NF \g_ptxcd_department_str {
+ \str_new:N \g_ptxcd_department_str
+ \str_gset:Nn \g_ptxcd_department_str {default}
+}
+
+\keys_define:nn {ptxcd/colors} {
+ accent .tl_gset:N = \g_ptxcd_color_accent_tl,
accent .initial:n = 0b,
- textaccent .tl_gset:N = \g_TUDa_color_textaccent_tl,
- textaccent .initial:n = \g_TUDa_color_accent_tl,
- identbar .tl_gset:N = \g_TUDa_color_identbar_tl,
- identbar .initial:n = \g_TUDa_color_accent_tl,
+ textaccent .tl_gset:N = \g_ptxcd_color_textaccent_tl,
+ textaccent .initial:n = \g_ptxcd_color_accent_tl,
+ identbar .tl_gset:N = \g_ptxcd_color_identbar_tl,
+ identbar .initial:n = \g_ptxcd_color_accent_tl,
accentcolor .meta:n = {accent =#1},
textaccentcolor .meta:n = {textaccent = #1},
identbarcolor .meta:n = {identbar = #1},
color .meta:n = {accent=#1, textaccent=#1, identbar=#1},
text .choice:,
- text/preferblack .code:n = \bool_gset_false:N \g_TUDa_color_whitetext_bool,
- text/preferwhite .code:n = \bool_gset_true:N \g_TUDa_color_whitetext_bool,
+ text/preferblack .code:n = \bool_gset_false:N \g_ptxcd_color_whitetext_bool,
+ text/preferwhite .code:n = \bool_gset_true:N \g_ptxcd_color_whitetext_bool,
text .initial:n = {preferwhite},
text/black .meta:n = {text=preferblack},
text/white .meta:n = {text=preferwhite},
cmyk .code:n = \PassOptionsToPackage{cmyk}{xcolor},
RGB .code:n = \PassOptionsToPackage{RGB}{xcolor},
+ department .choice:,
+ department / default .code:n = \str_gset:Nn \g_ptxcd_department_str {default},
+ department / mecheng .code:n = \str_gset:Nn \g_ptxcd_department_str {mecheng}\keys_set:nn {ptxcd/colors}{accent=TUDa-2d,identbar=TUDa-6b},
+ department .initial:V = \g_ptxcd_department_str,
+ mecheng .meta:n = {department=mecheng},
}
-\ProcessKeysOptions{TUDa/colors}
+\ProcessKeysOptions{ptxcd/colors}
\RequirePackage{xcolor}
\input{tudacolors.def}
+\str_if_eq:VnT \g_ptxcd_department_str {mecheng} {
+ \colorlet{TUDa-Primary1}{TUDa-6b}
+ \colorlet{TUDa-Primary2}{TUDa-2d}
+ \colorlet{TUDa-Secondary1}{TUDa-9a}
+ \colorlet{TUDa-Secondary2}{TUDa-8a}
+ \colorlet{TUDa-Secondary3}{TUDa-6a}
+ \colorlet{TUDa-Secondary4}{TUDa-3a}
+ \colorlet{TUDa-Secondary5}{TUDa-4a}
+ \colorlet{TUDa-Secondary6}{TUDa-5a}
+ \colorlet{TUDa-Arrow}{TUDa-Primary2}
+}
+
\clist_map_inline:nn {accent, textaccent, identbar} {
- \cs_if_exist:cF {\string\color@\tl_use:c {g_TUDa_color_#1_tl}} {
- \cs_if_exist:cT {\string\color@TUDa-\tl_use:c {g_TUDa_color_#1_tl}} {
- \tl_gset:cx {g_TUDa_color_#1_tl} {TUDa-\tl_use:c {g_TUDa_color_#1_tl}}
+ \cs_if_exist:cF {\string\color@\tl_use:c {g_ptxcd_color_#1_tl}} {
+ \cs_if_exist:cT {\string\color@TUDa-\tl_use:c {g_ptxcd_color_#1_tl}} {
+ \tl_gset:cx {g_ptxcd_color_#1_tl} {TUDa-\tl_use:c {g_ptxcd_color_#1_tl}}
}}
}
-\clist_const:Nn \c_TUDa_color_forbid_textaccent_clist {TUDa-0a,TUDa-5a,TUDa-6a,TUDa-6b,TUDa-7a}
-\clist_const:Nn \c_TUDa_color_allow_blacktext_clist {TUDa-0a,TUDa-0b,TUDa-0c,TUDa-1a,TUDa-2a,TUDa-3a,TUDa-4a,TUDa-4b,TUDa-4c,TUDa-5a,TUDa-5b,TUDa-5c,TUDa-6a,TUDa-6b,TUDa-6c,TUDa-7a,TUDa-7b,TUDa-7c,TUDa-8a,TUDa-8b,TUDa-8c,TUDa-9a,TUDa-9b,TUDa-10a}
-\clist_const:Nn \c_TUDa_color_allow_whitetext_clist {TUDa-0b,TUDa-0c,TUDa-0d,black,TUDa-1a,TUDa-1b,TUDa-1c,TUDa-1d,TUDa-2a,TUDa-2b,TUDa-2c,TUDa-2d,TUDa-3a,TUDa-3b,TUDa-3c,TUDa-3d,TUDa-4b,TUDa-4c,TUDa-4d,TUDa-5b,TUDa-5c,TUDa-5d,TUDa-6c,TUDa-6d,TUDa-7b,TUDa-7c,TUDa-7d,TUDa-8a,TUDa-8b,TUDa-8c,TUDa-8d,TUDa-9a,TUDa-9b,TUDa-9c,TUDa-9d,TUDa-10a,TUDa-10b,TUDa-10c,TUDa-10d,TUDa-11a,TUDa-11b,TUDa-11c,TUDa-11d}
+\clist_const:Nn \c_ptxcd_color_forbid_textaccent_clist {TUDa-0a,TUDa-5a,TUDa-6a,TUDa-6b,TUDa-7a}
+\clist_const:Nn \c_ptxcd_color_allow_blacktext_clist {TUDa-0a,TUDa-0b,TUDa-0c,TUDa-1a,TUDa-2a,TUDa-3a,TUDa-4a,TUDa-4b,TUDa-4c,TUDa-5a,TUDa-5b,TUDa-5c,TUDa-6a,TUDa-6b,TUDa-6c,TUDa-7a,TUDa-7b,TUDa-7c,TUDa-8a,TUDa-8b,TUDa-8c,TUDa-9a,TUDa-9b,TUDa-10a}
+\clist_const:Nn \c_ptxcd_color_allow_whitetext_clist {TUDa-0b,TUDa-0c,TUDa-0d,black,TUDa-1a,TUDa-1b,TUDa-1c,TUDa-1d,TUDa-2a,TUDa-2b,TUDa-2c,TUDa-2d,TUDa-3a,TUDa-3b,TUDa-3c,TUDa-3d,TUDa-4b,TUDa-4c,TUDa-4d,TUDa-5b,TUDa-5c,TUDa-5d,TUDa-6c,TUDa-6d,TUDa-7b,TUDa-7c,TUDa-7d,TUDa-8a,TUDa-8b,TUDa-8c,TUDa-8d,TUDa-9a,TUDa-9b,TUDa-9c,TUDa-9d,TUDa-10a,TUDa-10b,TUDa-10c,TUDa-10d,TUDa-11a,TUDa-11b,TUDa-11c,TUDa-11d}
%messages
-\msg_new:nnnn {tudacolors} {undefined-color} {The~ color~ #1~ you~ selected~ is~ not~ defined.} {See~ the~ tuda-ci~ manual~ for~ a~ list~ of~ available~ colors.}
-\msg_new:nnnn {tudacolors} {unselectable-color} {The~ color~ you~ selected~ (#1)~ must~ not~ be~ choosen~ for~ #2.} {See~ the~ Corporate~ Design~ Guidelines~ for~ further~ information.}
+\msg_new:nnnn{tudacolors} {undefined-color} {The~ color~ #1~ you~ selected~ is~ not~ defined.} {See~ the~ tuda-ci~ manual~ for~ a~ list~ of~ available~ colors.}
+\msg_new:nnnn{tudacolors} {unselectable-color} {The~ color~ you~ selected~ (#1)~ must~ not~ be~ choosen~ for~ #2.} {See~ the~ Corporate~ Design~ Guidelines~ for~ further~ information.}
%select accentcolor
-\exp_args:Nnx \colorlet{accentcolor}{\g_TUDa_color_accent_tl}
-\bool_if:NTF \g_TUDa_color_whitetext_bool {
- \clist_if_in:NVTF \c_TUDa_color_allow_whitetext_clist \g_TUDa_color_accent_tl {
+\exp_args:Nnx \colorlet{accentcolor}{\g_ptxcd_color_accent_tl}
+\bool_if:NTF \g_ptxcd_color_whitetext_bool {
+ \clist_if_in:NVTF \c_ptxcd_color_allow_whitetext_clist \g_ptxcd_color_accent_tl {
\colorlet{textonaccentcolor}{white}
} {
\colorlet{textonaccentcolor}{black}
- \tl_if_in:NnT \g_TUDa_color_accent_tl {TUDa} {\msg_warning:nnxx {tudacolors} {unselectable-color} {white} {textonaccentcolor}}
+ \tl_if_in:NnT \g_ptxcd_color_accent_tl {TUDa} {\msg_warning:nnxx{tudacolors} {unselectable-color} {white} {textonaccentcolor}}
}
} {
- \clist_if_in:NVTF \c_TUDa_color_allow_blacktext_clist \g_TUDa_color_accent_tl {
+ \clist_if_in:NVTF \c_ptxcd_color_allow_blacktext_clist \g_ptxcd_color_accent_tl {
\colorlet{textonaccentcolor}{black}
} {
\colorlet{textonaccentcolor}{white}
- \tl_if_in:NnT \g_TUDa_color_accent_tl {TUDa} {msg_warning:nnxx {tudacolors} {unselectable-color} {black} {textonaccentcolor}}
+ \tl_if_in:NnT \g_ptxcd_color_accent_tl {TUDa} {msg_warning:nnxx{tudacolors} {unselectable-color} {black} {textonaccentcolor}}
}
}
-\colorlet{identbarcolor}{\g_TUDa_color_identbar_tl}
+\colorlet{identbarcolor}{\g_ptxcd_color_identbar_tl}
-\exp_args:NNx \clist_if_in:NnTF \c_TUDa_color_forbid_textaccent_clist {\g_TUDa_color_textaccent_tl} {
- \msg_warning:nnxx {tudacolors} {unselectable-color} {\g_TUDa_color_textaccent_tl} {textaccentcolor}
+\exp_args:NNx \clist_if_in:NnTF \c_ptxcd_color_forbid_textaccent_clist {\g_ptxcd_color_textaccent_tl} {
+ \msg_warning:nnxx{tudacolors} {unselectable-color} {\g_ptxcd_color_textaccent_tl} {textaccentcolor}
\colorlet{textaccentcolor}{black}
} {
- \colorlet{textaccentcolor}{\g_TUDa_color_textaccent_tl}
+ \colorlet{textaccentcolor}{\g_ptxcd_color_textaccent_tl}
}
+\colorlet{InfoBox}{white}
\endinput \ No newline at end of file
diff --git a/macros/latex/contrib/tuda-ci/tex/tudaexercise.cls b/macros/latex/contrib/tuda-ci/tex/tudaexercise.cls
index 6c27255e47..7f7be57b7f 100644
--- a/macros/latex/contrib/tuda-ci/tex/tudaexercise.cls
+++ b/macros/latex/contrib/tuda-ci/tex/tudaexercise.cls
@@ -1,4 +1,4 @@
-%% This is file `tudaexercise.cls' version 2.11 (2020/06/12),
+%% This is file `tudaexercise.cls' version 3.00 (2020/09/08),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -26,114 +26,39 @@
%%
%% ============================================================================
%%
-\def\fileversion{2.11}
-\def\filedate{2020/06/12}
+\def\fileversion{3.00}
+\def\filedate{2020/09/08}
\NeedsTeXFormat{LaTeX2e}
\RequirePackage{expl3}
\ProvidesExplClass{tudaexercise}
- {\filedate}{\fileversion}{Exercise sheets and exams using TU Darmstadt's Coporate Desing (TUDa-CI)}
+ {\filedate}{\fileversion}{Exercise sheets and exams using TU Darmstadt's Corporate Desing (TUDa-CI)}
\RequirePackage{l3keys2e}
-\tl_new:N \g_TUDa_thesis_options_tl
+\str_const:Nn \c__ptxcd_base_str {exercise}
+\prop_new:N \g_ptxcd_clsopts_prop
+\prop_new:N \g_ptxcd_unknown_clsopts_prop
+\prop_gput:Nnn \g_ptxcd_clsopts_prop {captions} {nooneline}
+\prop_gput:Nnn \g_ptxcd_clsopts_prop {parskip} {half-}
-\prop_new:N \g_TUDa_clsopts_prop
-\prop_new:N \g_TUDa_unknown_clsopts_prop
-\prop_gput:Nnn \g_TUDa_clsopts_prop {captions} {nooneline}
-\prop_gput:Nnn \g_TUDa_clsopts_prop {parskip} {half-}
+\int_new:N \g_ptxcd_ruledheaders_int
+\int_new:N \g_ptxcd_paper_int
-\int_new:N \g_TUDa_ruledheaders_int
-\int_new:N \g_TUDa_paper_int
+\bool_new:N \g_ptxcd_geometry_bool
+\bool_new:N \g_ptxcd_custommargins_bool
+\bool_new:N \l_ptxcd_ex_solution_bool
+
+\bool_new:N \g_ptxcd_smalltitle_bool
+\str_new:N \g_ptxcd_department_str
%Message Declaration for option processing
-\msg_new:nnn {TUDaExercise} {titlepage-option-disabled} {
+\msg_new:nnn{tudaexercise} {titlepage-option-disabled} {
You~set~the~titlepage~option~to~#1.\\
This option is not supported by tudaexercise.cls.\\
The~KOMA-Script~option~titlepage~is~forced~to~"false".
}
-\bool_new:N \g_TUDa_geometry_bool
-\bool_new:N \g_TUDa_custommargins_bool
-\bool_new:N \l_TUDa_ex_solution_bool
-
-\RequirePackage{environ}
-
-\def\solution{\TUDa_ex_solutionheader:}
-\def\endsolution{}
-
-\cs_new:Nn \TUDa_setup_solution: {
- \bool_if:NTF \l_TUDa_ex_solution_bool {
- \def\solution{\TUDa_ex_solutionheader:}
- \def\endsolution{}
- }{
- \RenewEnviron{solution}{
- \if_false:
- \BODY
- \fi:
- }
- }
-}
-
-
-\bool_new:N \l_TUDa_ex_subtask_fallback_bool
-\keys_define:nn {TUDa/subtask} {
- credit .tl_set:N = \l_TUDa_ex_credit_tl,
- credit .initial:n =,
- points .int_set:N = \l_TUDa_ex_points_int,
- points .initial:n = 0,
- title .tl_set:N = \l_TUDa_ex_title_tl,
- title .initial:n =,
- unknown .code:n = \bool_set_true:N \l_TUDa_ex_subtask_fallback_bool \tl_clear:N \l_TUDa_ex_credit_tl \int_zero:N \l_TUDa_ex_points_int,
-}
-
-\keys_define:nn {TUDa/exercise} {
- solution .code:n = {
- \bool_set_eq:Nc \l_TUDa_ex_solution_bool {c_#1_bool}
- \TUDa_setup_solution:
- },
- solution .initial:n = false,
- solution .default:n = true,
- compat .bool_gset:N = \g_TUDa_ex_compatibility_bool,
- compatilibity .meta:n = {compat=#1},
- compatibility .default:n = true,
- compat .initial:n = false,
- credit .tl_set:N = \l_TUDa_ex_credit_tl,
- credit .initial:n =,
- points .int_set:N = \l_TUDa_ex_points_int,
- points .initial:n = 0,
-}
-
-\keys_define:nn {TUDa/exercise/headline} {
- headline .code:n = {
- \if@twoside
- \keys_set:nn {TUDa/exercise/headline} {odd=#1,even=#1}
- \else
- \keys_set:nn {TUDa/exercise/headline} {oneside=#1}
- \fi
- },
-}
-
-\clist_map_inline:nn {odd, even, oneside} {
- \tl_new:c {g_TUDa_ex_headline_#1_tl}
- \keys_define:nn {TUDa/exercise/headline} {
- #1 .choice:,
- #1 / title-name-id .code:n = \tl_gset:cn {g_TUDa_ex_headline_#1_tl} {
- \g_TUDa_shorttitle_tl\par
- \StudentName\StudentID},
- #1 / title-name .code:n = \tl_gset:cn {g_TUDa_ex_headline_#1_tl} {
- \g_TUDa_shorttitle_tl\par
- \smallskip
- \StudentName},
- #1 / title .code:n = \tl_gset:cn {g_TUDa_ex_headline_#1_tl} {\g_TUDa_shorttitle_tl},
- #1 / name-id .code:n = \tl_gset:cn {g_TUDa_ex_headline_#1_tl} {\StudentName\StudentID},
- #1 / name .code:n = \tl_gset:cn {g_TUDa_ex_headline_#1_tl} {\StudentName},
- #1 / unknown .code:n = \tl_gset:cn {g_TUDa_ex_headline_#1_tl} {##1}
- }
-}
-
-\bool_new:N \g_TUDa_smalltitle_bool
-
-\keys_define:nn {TUDa/pub} {
+\keys_define:nn {ptxcd/exercise} {
color .code:n = {\PassOptionsToPackage{color=#1}{tudacolors}},
accentcolor .code:n = {\PassOptionsToPackage{accentcolor=#1}{tudacolors}},
textaccentcolor .code:n = {\PassOptionsToPackage{textaccentcolor=#1}{tudacolors}},
@@ -142,58 +67,77 @@
color .initial:n = 0b,
custommargins .choice:,
custommargins / true .code:n ={
- \bool_gset_true:N \g_TUDa_custommargins_bool
- \bool_gset_false:N \g_TUDa_geometry_bool
+ \bool_gset_true:N \g_ptxcd_custommargins_bool
+ \bool_gset_false:N \g_ptxcd_geometry_bool
},
custommargins / false .code:n ={
- \bool_gset_false:N \g_TUDa_custommargins_bool
- \bool_gset_true:N \g_TUDa_geometry_bool
+ \bool_gset_false:N \g_ptxcd_custommargins_bool
+ \bool_gset_true:N \g_ptxcd_geometry_bool
},
custommargins / geometry .code:n = {
- \bool_gset_true:N \g_TUDa_custommargins_bool
- \bool_gset_true:N \g_TUDa_geometry_bool
+ \bool_gset_true:N \g_ptxcd_custommargins_bool
+ \bool_gset_true:N \g_ptxcd_geometry_bool
},
custommargins .initial:n = false,
custommargins .default:n = true,
- fontsize .code:n = \prop_gput:Nnn \g_TUDa_clsopts_prop {fontsize} {#1},
+ fontsize .code:n = \prop_gput:Nnn \g_ptxcd_clsopts_prop {fontsize} {#1},
fontsize .initial:n = {10pt},
- unknown .code:n = {\prop_gput:NVn \g_TUDa_unknown_clsopts_prop \l_keys_key_tl {#1}},
BCOR .code:n = \PassOptionsToPackage{bindingoffset=#1}{geometry},
bindingoffset .meta:n = {BCOR=#1},
- captions .code:n = {\prop_gput:Nnx \g_TUDa_clsopts_prop {captions} {
- \use:n {\prop_item:Nn \g_TUDa_clsopts_prop {captions}}, #1}
+ captions .code:n = {\prop_gput:Nnx \g_ptxcd_clsopts_prop {captions} {
+ \use:n {\prop_item:Nn \g_ptxcd_clsopts_prop {captions}}, #1}
},
- titlepage .code:n = {\msg_warning:nnn {TUDaPub} {titlepage-option-disabled} {#1}},
+ titlepage .code:n = {\msg_warning:nnn {tudapub} {titlepage-option-disabled} {#1}},
paper .choices:nn = {a0,a1,a2,a3,a4,a5,a6}{
- \int_gset_eq:NN \g_TUDa_paper_int \l_keys_choice_int
+ \int_gset_eq:NN \g_ptxcd_paper_int \l_keys_choice_int
\PassOptionsToPackage{paper=\l_keys_choice_tl}{tudarules}
\PassOptionsToPackage{paper=\l_keys_choice_tl}{typearea}
\PassOptionsToPackage{\l_keys_choice_tl paper}{geometry}
},
paper .initial:n = a4,
- logofile .tl_gset:N = \g_TUDa_logofile_tl,
+ logofile .tl_gset:N = \g_ptxcd_logofile_tl,
logofile .initial:n = tuda_logo,
- solution .meta:nn = {TUDa/exercise}{solution=#1},
- compat .meta:nn = {TUDa/exercise}{compat=#1},
- compatibility .meta:nn = {TUDa/exercise}{compat=#1},
+ compat .bool_gset:N = \g_ptxcd_ex_compatibility_bool,
+ compat .initial:n = false,
+ compatilibity .meta:n = {compat=#1},
compatibility .default:n = true,
- headontitle .bool_gset:N = \g_TUDa_headontitle_bool,
+ credit .tl_set:N = \l_ptxcd_ex_credit_tl,
+ credit .initial:n =,
+ headontitle .bool_gset:N = \g_ptxcd_headontitle_bool,
headontitle .initial:n = false,
headontitle .default:n =true,
- colorback .bool_gset:N = \g_TUDa_colorback_bool,
+ colorback .bool_gset:N = \g_ptxcd_colorback_bool,
colorback .default:n = true,
colorback .initial:n = true,
title .choice:,
title / default .meta:n = {title=large},
- title / large .code:n = \bool_gset_false:N \g_TUDa_smalltitle_bool,
- title / small .code:n = \bool_gset_true:N \g_TUDa_smalltitle_bool,
+ title / large .code:n = \bool_gset_false:N \g_ptxcd_smalltitle_bool,
+ title / small .code:n = \bool_gset_true:N \g_ptxcd_smalltitle_bool,
title .initial:n = default,
+ department .choice:,
+ department / default .code:n = \str_gset:Nn \g_ptxcd_department_str {default},
+ department / mecheng .code:n = {
+ \str_gset:Nn \g_ptxcd_department_str {mecheng}
+ \keys_set:nn {ptxcd/exercise}{colorback=false,departmentlogofile=tuda_maschinenbau_logo,color=Primary1}
+ },
+ department .initial:n = default,
+ mecheng .meta:n = {department=mecheng},
+ departmentlogofile .tl_gset:N = \g_ptxcd_departmentlogo_tl,
+ departmentlogofile .initial:n =,
+ match-task-subtask-syntax .bool_gset:N = \g_ptxcd_match_task_subtask_bool,
+ match-task-subtask-syntax .initial:n = false,
+ match-task-subtask-syntax .default:n = true,
+ solution .code:n = {
+ \bool_set_eq:Nc \l_ptxcd_ex_solution_bool {c_#1_bool}
+ \ptxcd_setup_solution:
+ },
+ solution .default:n = true,
+ unknown .code:n = {\prop_gput:NVn \g_ptxcd_unknown_clsopts_prop \l_keys_key_tl {#1}},
}
+\ProcessKeysOptions{ptxcd/exercise}
-\ProcessKeysOptions{TUDa/pub}
-
-\prop_map_inline:Nn \g_TUDa_clsopts_prop {
+\prop_map_inline:Nn \g_ptxcd_clsopts_prop {
\tl_if_empty:nTF {#2}
{\PassOptionsToClass {#1} {scrartcl}}
{
@@ -201,9 +145,76 @@
}
}
+\RequirePackage{environ}
+
+\def\solution{\ptxcd_ex_solutionheader:}
+\def\endsolution{}
+
+\cs_new:Nn \ptxcd_setup_solution: {
+ \bool_if:NTF \l_ptxcd_ex_solution_bool {
+ \def\solution{\ptxcd_ex_solutionheader:}
+ \def\endsolution{}
+ }{
+ \RenewEnviron{solution}{
+ \if_false:
+ \BODY
+ \fi:
+ }
+ }
+}
+
+
+\bool_new:N \l_ptxcd_ex_subtask_fallback_bool
+
+\keys_define:nn {ptxcd/task}{
+ points .int_set:N = \l_ptxcd_ex_points_int,
+ points .initial:n = 0,
+ credit .tl_set:N = \l_ptxcd_ex_credit_tl,
+ credit .initial:n =,
+ solution .meta:nn ={ptxcd/exercise}{solution=#1},
+}
+
+\keys_define:nn {ptxcd/subtask} {
+ credit .tl_set:N = \l_ptxcd_ex_credit_tl,
+ credit .initial:n =,
+ points .int_set:N = \l_ptxcd_ex_points_int,
+ points .initial:n = 0,
+ title .tl_set:N = \l_ptxcd_ex_title_tl,
+ title .initial:n =,
+ unknown .code:n = \bool_set_true:N \l_ptxcd_ex_subtask_fallback_bool \tl_clear:N \l_ptxcd_ex_credit_tl \int_zero:N \l_ptxcd_ex_points_int,
+}
+
+\keys_define:nn {ptxcd/exercise/headline} {
+ headline .code:n = {
+ \if@twoside
+ \keys_set:nn {ptxcd/exercise/headline} {odd=#1,even=#1}
+ \else
+ \keys_set:nn {ptxcd/exercise/headline} {oneside=#1}
+ \fi
+ },
+}
+
+\clist_map_inline:nn {odd, even, oneside} {
+ \tl_new:c {g_ptxcd_ex_headline_#1_tl}
+ \keys_define:nn {ptxcd/exercise/headline} {
+ #1 .choice:,
+ #1 / title-name-id .code:n = \tl_gset:cn {g_ptxcd_ex_headline_#1_tl} {
+ \g_ptxcd_shorttitle_tl\par
+ \StudentName\StudentID},
+ #1 / title-name .code:n = \tl_gset:cn {g_ptxcd_ex_headline_#1_tl} {
+ \g_ptxcd_shorttitle_tl\par
+ \smallskip
+ \StudentName},
+ #1 / title .code:n = \tl_gset:cn {g_ptxcd_ex_headline_#1_tl} {\g_ptxcd_shorttitle_tl},
+ #1 / name-id .code:n = \tl_gset:cn {g_ptxcd_ex_headline_#1_tl} {\StudentName\StudentID},
+ #1 / name .code:n = \tl_gset:cn {g_ptxcd_ex_headline_#1_tl} {\StudentName},
+ #1 / unknown .code:n = \tl_gset:cn {g_ptxcd_ex_headline_#1_tl} {##1}
+ }
+}
+
%Load tudasize clo file if available
-\file_if_exist:nT {tudasize\prop_item:Nn \g_TUDa_clsopts_prop {fontsize}.clo}
+\file_if_exist:nT {tudasize\prop_item:Nn \g_ptxcd_clsopts_prop {fontsize}.clo}
{\providecommand*{\@fontsizefilebase}{tudasize}}
\LoadClass{scrartcl}
@@ -214,7 +225,7 @@
\RequirePackage[draft=false]{scrlayer-scrpage}
\KOMAoptions {twoside = false}
-\prop_map_inline:Nn \g_TUDa_unknown_clsopts_prop {
+\prop_map_inline:Nn \g_ptxcd_unknown_clsopts_prop {
\cs_if_exist:cT {KV@KOMA.scrartcl.cls@#1} {
\tl_if_empty:nTF {#2}
{\KOMAoptions{#1}}
@@ -225,7 +236,7 @@
\renewcommand*\sectionlinesformat[4]{%
\parbox{\linewidth}{
- \rule[5\g_TUDa_titlerule_dim]{\linewidth}{\g_TUDa_titlerule_dim}\par\nointerlineskip
+ \rule[5\g_ptxcd_titlerule_dim]{\linewidth}{\g_ptxcd_titlerule_dim}\par\nointerlineskip
\@hangfrom{%
\hskip #2#3}{
\tl_if_eq:nnT {#1} {task} {
@@ -234,70 +245,70 @@
}
#4
\tl_if_in:nnT {#1} {task} {
- \tl_if_empty:NTF \l_TUDa_ex_credit_tl
- {\pointformat{\l_TUDa_ex_points_int}}
- {\creditformat{\l_TUDa_ex_credit_tl}}
+ \tl_if_empty:NTF \l_ptxcd_ex_credit_tl
+ {\pointformat{\l_ptxcd_ex_points_int}}
+ {\creditformat{\l_ptxcd_ex_credit_tl}}
}
\rule[-\dp\strutbox]{0pt}{\dp\strutbox}\par}\nointerlineskip
- \skip_vertical:n {\TUDa_titlerule_sep: -\dp\strutbox}
- \smash{\rule{\linewidth}{\g_TUDa_titlerule_dim}}
+ \skip_vertical:n {\ptxcd_titlerule_sep: -\dp\strutbox}
+ \smash{\rule{\linewidth}{\g_ptxcd_titlerule_dim}}
}}
\usepackage{tudafonts}
-\dim_new:N \g_TUDa_innerMargin_dim
-\dim_new:N \g_TUDa_outerMargin_dim
-\dim_new:N \g_TUDa_bottomMargin_dim
-\dim_new:N \g_TUDa_topMargin_dim
+\dim_new:N \g_ptxcd_innerMargin_dim
+\dim_new:N \g_ptxcd_outerMargin_dim
+\dim_new:N \g_ptxcd_bottomMargin_dim
+\dim_new:N \g_ptxcd_topMargin_dim
%a3,a4
- \int_compare:nTF {4<=\g_TUDa_paper_int<=5}
+ \int_compare:nTF {4<=\g_ptxcd_paper_int<=5}
{
- \dim_gset:Nn \g_TUDa_bottomMargin_dim {20mm}
- \dim_gset:Nn \g_TUDa_outerMargin_dim {15mm}
- \dim_gset_eq:NN \g_TUDa_innerMargin_dim \g_TUDa_outerMargin_dim
- \dim_gset_eq:NN \g_TUDa_topMargin_dim \g_TUDa_outerMargin_dim
+ \dim_gset:Nn \g_ptxcd_bottomMargin_dim {20mm}
+ \dim_gset:Nn \g_ptxcd_outerMargin_dim {15mm}
+ \dim_gset_eq:NN \g_ptxcd_innerMargin_dim \g_ptxcd_outerMargin_dim
+ \dim_gset_eq:NN \g_ptxcd_topMargin_dim \g_ptxcd_outerMargin_dim
}{
%a0, a1, a2
- \int_compare:nT {1<=\g_TUDa_paper_int<=3}
+ \int_compare:nT {1<=\g_ptxcd_paper_int<=3}
{
- \dim_gset:Nn \g_TUDa_bottomMargin_dim {35mm}
- \dim_gset:Nn \g_TUDa_outerMargin_dim {30mm}
- \dim_gset_eq:NN \g_TUDa_innerMargin_dim \g_TUDa_outerMargin_dim
- \dim_gset_eq:NN \g_TUDa_topMargin_dim \g_TUDa_outerMargin_dim
+ \dim_gset:Nn \g_ptxcd_bottomMargin_dim {35mm}
+ \dim_gset:Nn \g_ptxcd_outerMargin_dim {30mm}
+ \dim_gset_eq:NN \g_ptxcd_innerMargin_dim \g_ptxcd_outerMargin_dim
+ \dim_gset_eq:NN \g_ptxcd_topMargin_dim \g_ptxcd_outerMargin_dim
}
%a5
- \int_compare:nT {\g_TUDa_paper_int<=6}
+ \int_compare:nT {\g_ptxcd_paper_int<=6}
{
- \dim_gset:Nn \g_TUDa_bottomMargin_dim {16mm}
- \dim_gset:Nn \g_TUDa_outerMargin_dim {12mm}
- \dim_gset_eq:NN \g_TUDa_innerMargin_dim \g_TUDa_outerMargin_dim
- \dim_gset_eq:NN \g_TUDa_topMargin_dim \g_TUDa_outerMargin_dim
+ \dim_gset:Nn \g_ptxcd_bottomMargin_dim {16mm}
+ \dim_gset:Nn \g_ptxcd_outerMargin_dim {12mm}
+ \dim_gset_eq:NN \g_ptxcd_innerMargin_dim \g_ptxcd_outerMargin_dim
+ \dim_gset_eq:NN \g_ptxcd_topMargin_dim \g_ptxcd_outerMargin_dim
}
%a6
- \int_compare:nT {\g_TUDa_paper_int<=7}
+ \int_compare:nT {\g_ptxcd_paper_int<=7}
{
- \dim_gset:Nn \g_TUDa_bottomMargin_dim {15mm}
- \dim_gset:Nn \g_TUDa_outerMargin_dim {10mm}
- \dim_gset_eq:NN \g_TUDa_innerMargin_dim \g_TUDa_outerMargin_dim
- \dim_gset_eq:NN \g_TUDa_topMargin_dim \g_TUDa_outerMargin_dim
+ \dim_gset:Nn \g_ptxcd_bottomMargin_dim {15mm}
+ \dim_gset:Nn \g_ptxcd_outerMargin_dim {10mm}
+ \dim_gset_eq:NN \g_ptxcd_innerMargin_dim \g_ptxcd_outerMargin_dim
+ \dim_gset_eq:NN \g_ptxcd_topMargin_dim \g_ptxcd_outerMargin_dim
}
}
-\dim_new:N \g_TUDa_columnSep_dim
-\dim_gset:Nn \g_TUDa_columnSep_dim {10pt}
+\dim_new:N \g_ptxcd_columnSep_dim
+\dim_gset:Nn \g_ptxcd_columnSep_dim {10pt}
-\dim_new:N \g_TUDa_headheight_dim
-\dim_new:N \g_TUDa_headwidth_dim
+\dim_new:N \g_ptxcd_headheight_dim
+\dim_new:N \g_ptxcd_headwidth_dim
-\dim_gset:Nn \g_TUDa_headheight_dim {\c_TUDa_largerule_dim +\c_TUDa_rulesep_dim +\c_TUDa_smallrule_dim}
+\dim_gset:Nn \g_ptxcd_headheight_dim {\c_ptxcd_largerule_dim +\c_ptxcd_rulesep_dim +\c_ptxcd_smallrule_dim}
%%%%%Anfang Randeinstellungen Geometry
-\bool_if:NTF \g_TUDa_geometry_bool {
- \RequirePackage[top=\g_TUDa_topMargin_dim, inner=\g_TUDa_innerMargin_dim, outer=\dim_eval:n {\g_TUDa_outerMargin_dim}, bottom=\g_TUDa_bottomMargin_dim, columnsep= \g_TUDa_columnSep_dim, includehead, includefoot, headheight=\g_TUDa_headheight_dim
+\bool_if:NTF \g_ptxcd_geometry_bool {
+ \RequirePackage[top=\g_ptxcd_topMargin_dim, inner=\g_ptxcd_innerMargin_dim, outer=\dim_eval:n {\g_ptxcd_outerMargin_dim}, bottom=\g_ptxcd_bottomMargin_dim, columnsep= \g_ptxcd_columnSep_dim, includehead, includefoot, headheight=\g_ptxcd_headheight_dim
]{geometry}
}{
\KOMAoptions{headinclude, footinclude, headwidth=text,footwidth=text}
@@ -307,78 +318,70 @@
%Ende Randeinstellungen klassisch
\newcommand*{\institution}[1]{
- \def\TUDa@institution{#1}
+ \def\ptxcd_institution{#1}
}
-\gdef\TUDa@datename{Datum}
-\gdef\TUDa@dateseparator{:~}
+\gdef\ptxcd_datename{Datum}
+\gdef\ptxcd_dateseparator{:~}
\setkomafont{disposition}{\sffamily\bfseries}
-
-
-\dim_new:N \g_TUDa_titlerule_dim
-\dim_gset:Nn \g_TUDa_titlerule_dim {.5\c_TUDa_smallrule_dim}
-
-\cs_new:Nn \TUDa_titlerule_sep: {\the\dp\strutbox}
+\cs_new:Nn \ptxcd_titlerule_sep: {\the\dp\strutbox}
\RequirePackage{tudacolors}
\RequirePackage{environ}
-%TODO: mode -> light head.
-
\setkomafont{pageheadfoot}{\sffamily\small}
\setkomafont{pagenumber}{}
\addtokomafont{captionlabel}{\sffamily}
\addtokomafont{caption}{\sffamily}
-\box_new:N \g_TUDa_ex_headline_odd_box
-\box_new:N \g_TUDa_ex_headline_even_box
-\box_new:N \g_TUDa_ex_headline_oneside_box
+\box_new:N \g_ptxcd_ex_headline_odd_box
+\box_new:N \g_ptxcd_ex_headline_even_box
+\box_new:N \g_ptxcd_ex_headline_oneside_box
-\cs_new:Nn \TUDa_preamble_ConfigureHeadline:n {
- \tl_if_empty:nF {#1} {\keys_set:nn {TUDa/exercise/headline} {#1}}
+\cs_new:Nn \ptxcd_preamble_ConfigureHeadline:n {
+ \tl_if_empty:nF {#1} {\keys_set:nn {ptxcd/exercise/headline} {#1}}
}
-\cs_new:Nn \TUDa_ConfigureHeadline:n {
- \TUDa_preamble_ConfigureHeadline:n {#1}
- \TUDa_update_headline_boxes:
- \TUDa_ex_adjust_headheight:
+\cs_new:Nn \ptxcd_ConfigureHeadline:n {
+ \ptxcd_preamble_ConfigureHeadline:n {#1}
+ \ptxcd_update_headline_boxes:
+ \ptxcd_ex_adjust_headheight:
}
-\let\ConfigureHeadline\TUDa_preamble_ConfigureHeadline:n
-
-
+\let\ConfigureHeadline\ptxcd_preamble_ConfigureHeadline:n
-\bool_if:NT \g_TUDa_ex_compatibility_bool {
-\cs_new:Npn \TUDa_ex_env_to_tl_aux:w #1 \q_stop { \tl_gset:Nn \g_TUDa_ex_headline_oneside_tl {#1} }
-\NewEnviron{examheader}{
- \tl_gset:No \g_TUDa_ex_headline_oneside_tl {\BODY}
- \tl_gset:No \g_TUDa_ex_headline_odd_tl {\BODY}
- \tl_gset:No \g_TUDa_ex_headline_even_tl {\BODY}
- \TUDa_ConfigureHeadline:n {}
-}
-
- \newcommand*{\examheaderdefault}{\par\StudentName\StudentID}
+\bool_if:NT \g_ptxcd_ex_compatibility_bool {
+ \cs_new:Npn \ptxcd_ex_env_to_tl_aux:w #1 \q_stop { \tl_gset:Nn \g_ptxcd_ex_headline_oneside_tl {#1} }
+
+ \NewEnviron{examheader}{
+ \tl_gset:No \g_ptxcd_ex_headline_oneside_tl {\BODY}
+ \tl_gset:No \g_ptxcd_ex_headline_odd_tl {\BODY}
+ \tl_gset:No \g_ptxcd_ex_headline_even_tl {\BODY}
+ \ptxcd_ConfigureHeadline:n {}
+ }
+
+ \newcommand*{\examheaderdefault}{\par\StudentName\StudentID}
}
-\cs_new:Nn \TUDa_update_headline_boxes: {
+\cs_new:Nn \ptxcd_update_headline_boxes: {
\clist_map_inline:nn {even, odd, oneside}
{
- \tl_if_empty:cF {g_TUDa_ex_headline_##1_tl} {
- \vbox_gset:cn {g_TUDa_ex_headline_##1_box} {
+ \tl_if_empty:cF {g_ptxcd_ex_headline_##1_tl} {
+ \vbox_gset:cn {g_ptxcd_ex_headline_##1_box} {
\begin{minipage}[b]{\textwidth}
\usekomafont{pagehead}
\raggedright
- \leavevmode\rule{\z@}{\dimexpr\ht\strutbox+\c_TUDa_rulesep_dim}
+ \leavevmode\rule{\z@}{\dimexpr\ht\strutbox+\c_ptxcd_rulesep_dim}
\ignorespaces
- \use:c {g_TUDa_ex_headline_##1_tl}\ignorespaces\strut
+ \use:c {g_ptxcd_ex_headline_##1_tl}\ignorespaces\strut
\par\vspace{\z@}
\end{minipage}
}
@@ -387,105 +390,108 @@
}
-\cs_new:Nn \TUDa_ex_adjust_headheight: {
+\cs_new:Nn \ptxcd_ex_adjust_headheight: {
\if@twoside
\dim_set:Nn \l_tmpa_dim {
\dim_max:nn
- {\box_ht:N \g_TUDa_ex_headline_odd_box+\box_dp:N \g_TUDa_ex_headline_odd_box}
- {\box_ht:N \g_TUDa_ex_headline_even_box+\box_dp:N \g_TUDa_ex_headline_even_box}
+ {\box_ht:N \g_ptxcd_ex_headline_odd_box+\box_dp:N \g_ptxcd_ex_headline_odd_box}
+ {\box_ht:N \g_ptxcd_ex_headline_even_box+\box_dp:N \g_ptxcd_ex_headline_even_box}
}
\else
\dim_set:Nn \l_tmpa_dim {
- \box_ht:N \g_TUDa_ex_headline_oneside_box
- + \box_dp:N \g_TUDa_ex_headline_oneside_box
+ \box_ht:N \g_ptxcd_ex_headline_oneside_box
+ + \box_dp:N \g_ptxcd_ex_headline_oneside_box
}
\fi
\dim_compare:nT {\l_tmpa_dim > \z@}
{
- \dim_add:Nn \l_tmpa_dim {\box_dp:N \TUDa@headline_box +\c_TUDa_rulesep_dim}
- \KOMAoptions{headinclude, headheight=\l_tmpa_dim,headsepline = .5\c_TUDa_smallrule_dim}
+ \dim_add:Nn \l_tmpa_dim {\box_dp:N \ptxcd_headrule_box +\c_ptxcd_rulesep_dim}
+ \KOMAoptions{headinclude, headheight=\l_tmpa_dim,headsepline = .5\c_ptxcd_smallrule_dim}
\if@twoside
- \cehead{\box_use:c {g_TUDa_ex_headline_even_box}}
- \cohead{\box_use:c {g_TUDa_ex_headline_odd_box}}
+ \cehead{\box_use:c {g_ptxcd_ex_headline_even_box}}
+ \cohead{\box_use:c {g_ptxcd_ex_headline_odd_box}}
\else
- \chead{\box_use:c {g_TUDa_ex_headline_oneside_box}}
+ \chead{\box_use:c {g_ptxcd_ex_headline_oneside_box}}
\fi
\global\setlength{\headheight}{\l_tmpa_dim}
}
}
-\newpairofpagestyles{TUDa.ex}{
- \KOMAoptions{plainfootsepline}
+\newpairofpagestyles{TUDa.exercise}{
+ \KOMAoptions{plainfootsepline,headtopline,plainheadtopline}
\KOMAoptions {
headwidth=text,
footwidth=text
}
\setkomafont{pagehead}{}
-\box_if_exist:NF \TUDa@headline_box {
- \TUDa@makeheadrule[color=identbarcolor, width=\sls@headwidth]{TUDa@headline}
-}
+ \box_if_exist:NF \ptxcd_headrule_box {
+ \ptxcd_makeheadrule[color=identbarcolor, width=\sls@headwidth]{ptxcd_headrule}
+ }
\ModifyLayer[
background,
- height=\box_dp:N \TUDa@headline_box,
+ height=\box_dp:N \ptxcd_headrule_box,
align=tl,
- voffset=\g_TUDa_topMargin_dim,
- contents=\raisebox{\depth}{\box_use:N \TUDa@headline_box},
- ]{plain.TUDa.ex.head.above.line}
+ voffset=\g_ptxcd_topMargin_dim,
+ contents=\raisebox{\depth}{\box_use:N \ptxcd_headrule_box},
+ ]{plain.TUDa.exercise.head.above.line}
\ModifyLayer[
background,
- height=\box_dp:N \TUDa@headline_box,
+ height=\box_dp:N \ptxcd_headrule_box,
align=tl,
- voffset=\g_TUDa_topMargin_dim,
- contents=\raisebox{\depth}{\box_use:N \TUDa@headline_box},
- ]{TUDa.ex.head.above.line}
+ voffset=\g_ptxcd_topMargin_dim,
+ contents=\raisebox{\depth}{\box_use:N \ptxcd_headrule_box},
+ ]{TUDa.exercise.head.above.line}
\ofoot[\pagemark]{\pagemark}
}
-\pagestyle{TUDa.ex}
+\DeclarePageStyleAlias{TUDa}{TUDa.exercise}
+\DeclarePageStyleAlias{plain.TUDa}{plain.TUDa.exercise}
+\renewcommand{\titlepagestyle}{plain.TUDa}
+\pagestyle{TUDa}
%Titelseite
-\tl_new:N \g_TUDa_titleimage_code_tl
-\tl_gset_eq:NN \g_TUDa_titleimage_code_tl \c_empty_tl
-\newcommand{\titleimage}[1]{\tl_gset:Nn \g_TUDa_titleimage_code_tl {#1}}
+\tl_new:N \g_ptxcd_titleimage_code_tl
+\tl_gset_eq:NN \g_ptxcd_titleimage_code_tl \c_empty_tl
+\newcommand{\titleimage}[1]{\tl_gset:Nn \g_ptxcd_titleimage_code_tl {#1}}
-\box_new:N \g_TUDa_title_box
-\skip_new:N \g_TUDa_title_fill_skip
+\box_new:N \g_ptxcd_title_box
+\skip_new:N \g_ptxcd_title_fill_skip
-\renewcommand{\titlepagestyle}{plain.TUDa.ex}
-\seq_new:N \g_TUDa_author_seq
+
+\seq_new:N \g_ptxcd_author_seq
\renewcommand*\author[1]{
- \seq_gset_split:Nnn \g_TUDa_author_seq {\and} {#1}
+ \seq_gset_split:Nnn \g_ptxcd_author_seq {\and} {#1}
}
-\msg_new:nnn {TUDaPub} {unknown-language} {
+\msg_new:nnn{tudapub} {unknown-language} {
You~selected~an~unknown~language~#1.\\
The~Variable~#2~does~not~have~a~predefined~value.\\
Ensure~to~redefine~#2~to~match~your~language.\\
Otherwise~the~ngerman~vaue~#3~will~be~used.
}
-\cs_new:Nn \TUDa_define_captionFallback:Nn {
+\cs_new:Nn \ptxcd_define_captionFallback:Nn {
\providecommand*#1{
- \msg_warning:nnxxx {TUDaPub} {unknown-language}
+ \msg_warning:nnxxx{tudapub} {unknown-language}
{\languagename} {\exp_not:N #1} {#2}
\def#1{#2}
}
}
\renewcommand*{\@author}{
- \seq_use:Nnnn \g_TUDa_author_seq {~\authorandname{}~} {,~} {~\&~}
+ \seq_use:Nnnn \g_ptxcd_author_seq {~\authorandname{}~} {,~} {~\&~}
}
-\tl_new:N \g_TUDa_shorttitle_tl
+\tl_new:N \g_ptxcd_shorttitle_tl
\RenewDocumentCommand{\title}{om}{
\IfNoValueTF{#1}{
- \tl_gset:Nn \g_TUDa_shorttitle_tl {#2}
+ \tl_gset:Nn \g_ptxcd_shorttitle_tl {#2}
}{
- \tl_gset:Nn \g_TUDa_shorttitle_tl {#1}
+ \tl_gset:Nn \g_ptxcd_shorttitle_tl {#1}
}
\def\@title{#2}
}
@@ -497,43 +503,38 @@
\subsubtitle{}
-\newcommand*{\TUDa@title@footnote}[2][1]{
+\newcommand*{\ptxcd_title@footnote}[2][1]{
\textsuperscript{\@fnsymbol{#1}}#2
}
-\renewcommand*{\titlepagestyle}{plain.TUDa.ex}
\renewcommand*{\@maketitle}{%
\global\@topnum=\z@
\setparsizes{\z@}{\z@}{\z@\@plus 1fil}\par@updaterelative
\vspace*{-\dim_eval:n {
\headheight
- -\c_TUDa_largerule_dim -\c_TUDa_rulesep_dim
+ -\c_ptxcd_largerule_dim -\c_ptxcd_rulesep_dim
+\headsep
+\ht\strutbox
+\p@
}}
\par
\nointerlineskip
- \raisebox{\dim_eval:n {
- -.5\c_TUDa_logoheight_dim
- }}[0pt][\dim_eval:n {\bool_if:NTF \g_TUDa_smalltitle_bool {.25} {.5}\c_TUDa_logoheight_dim}]{
- \bool_if:NT \g_TUDa_colorback_bool {\color{accentcolor}\rule{\linewidth}{.5\c_TUDa_logoheight_dim}}
- }
- \par\nointerlineskip
\begingroup
\setlength{\fboxsep}{\z@}
- \bool_if:NT \g_TUDa_colorback_bool {\colorbox{accentcolor}}{\parbox[t]{\linewidth}{
+ \bool_if:NT \g_ptxcd_colorback_bool {\colorbox{accentcolor}}{\parbox[t]{\linewidth}{
+ \rule{0pt}{\bool_if:NTF \g_ptxcd_smalltitle_bool {.25} {.5}\c_ptxcd_logoheight_dim}
+ \par\nointerlineskip
\raisebox{-\height}{%
- \begin{minipage}[t]{\dimexpr\linewidth-2.2\c_TUDa_logoheight_dim-1ex}
- \bool_if:NT \g_TUDa_colorback_bool {\begin{addmargin}{3mm}}
+ \begin{minipage}[t]{\dimexpr\linewidth-2.2\c_ptxcd_logoheight_dim-1ex}
+ \bool_if:NT \g_ptxcd_colorback_bool {\begin{addmargin}{3mm}}
\raggedright
- \bool_if:NT \g_TUDa_colorback_bool {\color{textonaccentcolor}}
+ \bool_if:NT \g_ptxcd_colorback_bool {\color{textonaccentcolor}}
\tl_if_empty:NF \@titlehead {\usekomafont{titlehead}{\@titlehead\par}}
\leavevmode\usekomafont{title}%
- {\usekomafont{title}\bool_if:NTF \g_TUDa_smalltitle_bool {\LARGE} {\huge} {\@title\par}}%
+ {\usekomafont{title}\bool_if:NTF \g_ptxcd_smalltitle_bool {\LARGE} {\huge} {\@title\par}}%
\vskip 1em
- \bool_if:NF \g_TUDa_ex_compatibility_bool
+ \bool_if:NF \g_ptxcd_ex_compatibility_bool
{
{\ifx\@subtitle\@empty\else\usekomafont{subtitle}\@subtitle\par\fi}%
\gdef\@subtitle{}
@@ -541,61 +542,58 @@
}
{\ifx\@author\@empty\else\usekomafont{author}\@author\par\fi}%
\vskip .5em
- \bool_if:NTF \g_TUDa_colorback_bool {\end{addmargin}} {\par}
+ \bool_if:NTF \g_ptxcd_colorback_bool {\end{addmargin}} {\par}
\end{minipage}}
- \tl_if_empty:NF \g_TUDa_logofile_tl {
+ \tl_if_empty:NF \g_ptxcd_logofile_tl {
\hfill\raisebox{\dim_eval:n {
- \bool_if:NTF \g_TUDa_colorback_bool
+ \bool_if:NTF \g_ptxcd_colorback_bool
{-\height}
- {-.9\c_TUDa_logoheight_dim}
+ {-.9\c_ptxcd_logoheight_dim}
}}
[0pt]
[\dim_eval:n {
- \bool_if:NTF \g_TUDa_smalltitle_bool
- {\bool_if:NTF \g_TUDa_colorback_bool {1.15}{1}}
- {\bool_if:NTF \g_TUDa_colorback_bool {1.5}{1.3}
- }\c_TUDa_logoheight_dim}]
- {\makebox[2.2\c_TUDa_logoheight_dim][l]{\includegraphics[height=\c_TUDa_logoheight_dim]{\g_TUDa_logofile_tl}}}
+ \bool_if:NTF \g_ptxcd_smalltitle_bool
+ {\bool_if:NTF \g_ptxcd_colorback_bool {1.15}{1}}
+ {\bool_if:NTF \g_ptxcd_colorback_bool {1.5}{1.3}
+ }\c_ptxcd_logoheight_dim}]
+ {\makebox[2.2\c_ptxcd_logoheight_dim][l]{\includegraphics[height=\c_ptxcd_logoheight_dim]{\g_ptxcd_logofile_tl}}}
}
\par\medskip
}}
\par
\nointerlineskip
- \rule{\linewidth}{\g_TUDa_titlerule_dim}
+ \rule{\linewidth}{\g_ptxcd_titlerule_dim}
% subtitle fields if not compat
- \exp_args:Nf \tl_if_empty:nF {\g_TUDa_ex_sheetnum_tl\@date\g_TUDa_ex_term_tl\use:c {@subsubtitle}\@subtitle}{
+ \exp_args:Nf \tl_if_empty:nF {\g_ptxcd_ex_sheetnum_tl\@date\g_ptxcd_ex_term_tl\use:c {@subsubtitle}\@subtitle}{
\par\nointerlineskip
- \bool_if:NT \g_TUDa_colorback_bool {\colorbox{accentcolor}}{
+ \bool_if:NT \g_ptxcd_colorback_bool {\colorbox{accentcolor}}{
\parbox{\linewidth}{
\begin{minipage}{\linewidth}
- \bool_if:NT \g_TUDa_colorback_bool {
+ \bool_if:NT \g_ptxcd_colorback_bool {
\color{textonaccentcolor}
\begin{addmargin}{3mm}
}
\null\par
- \def\TUDa@nextsep{}
- \clist_map_inline:nn {@subtitle, @subsubtitle, g_TUDa_ex_term_tl, @date} {
- \tl_if_empty:cF {##1} {\TUDa@nextsep\use:c {##1}\def\TUDa@nextsep{\\}}
+ \def\ptxcd_nextsep{}
+ \clist_map_inline:nn {@subtitle, @subsubtitle, g_ptxcd_ex_term_tl, @date} {
+ \tl_if_empty:cF {##1} {\ptxcd_nextsep\use:c {##1}\def\ptxcd_nextsep{\\}}
}
- % \tl_if_empty:NF \@subtitle {}
- % \tl_if_empty:NF \g_TUDa_ex_term_tl {\TUDa@nextsep\g_TUDa_ex_term_tl\def\TUDa@nextsep{\\}}
- % \tl_if_empty:NF \@date {\TUDa@nextsep\@date\def\TUDa@nextsep{\\}}
- \tl_if_empty:NF \g_TUDa_ex_sheetnum_tl {\TUDa@nextsep\sheetname\sheetsep\g_TUDa_ex_sheetnum_tl}
- \bool_if:NT \g_TUDa_colorback_bool {\end{addmargin}}
+ \tl_if_empty:NF \g_ptxcd_ex_sheetnum_tl {\ptxcd_nextsep\sheetname\sheetsep\g_ptxcd_ex_sheetnum_tl}
+ \bool_if:NT \g_ptxcd_colorback_bool {\end{addmargin}}
\end{minipage}
\vspace*{\dp\strutbox}
}}\par\nointerlineskip
- \rule{\linewidth}{\g_TUDa_titlerule_dim}
+ \rule{\linewidth}{\g_ptxcd_titlerule_dim}
}
\par
- \bool_if:NT \g_TUDa_headontitle_bool {
+ \bool_if:NT \g_ptxcd_headontitle_bool {
\if@twoside
- \box_use:N \g_TUDa_ex_headline_odd_box
+ \box_use:N \g_ptxcd_ex_headline_odd_box
\else
- \box_use:N \g_TUDa_ex_headline_oneside_box
+ \box_use:N \g_ptxcd_ex_headline_oneside_box
\fi
\par
- \rule{\linewidth}{\g_TUDa_titlerule_dim}
+ \rule{\linewidth}{\g_ptxcd_titlerule_dim}
\par
}
\endgroup
@@ -611,15 +609,13 @@
\newkomafont{term}{\usekomafont{date}}
\date{}
-\tl_new:N \g_TUDa_ex_sheetnum_tl
-\newcommand*{\sheetnumber}[1]{\tl_gset:Nn \g_TUDa_ex_sheetnum_tl {#1}}
+\tl_new:N \g_ptxcd_ex_sheetnum_tl
+\newcommand*{\sheetnumber}[1]{\tl_gset:Nn \g_ptxcd_ex_sheetnum_tl {#1}}
\sheetnumber{}
-\tl_new:N \g_TUDa_ex_term_tl
-\newcommand*{\term}[1]{\tl_gset:Nn \g_TUDa_ex_term_tl {#1}}
+\tl_new:N \g_ptxcd_ex_term_tl
+\newcommand*{\term}[1]{\tl_gset:Nn \g_ptxcd_ex_term_tl {#1}}
\term{}
-\TUDa@makeheadrule[color=identbarcolor, width=\textwidth]{TUDa@title_headline}
-
%Logos
\RequirePackage{graphicx}
@@ -666,27 +662,26 @@
%Has to be initialized after captionnames have been defined
\AtBeginDocument{
- \TUDa_update_headline_boxes:
- \TUDa_ex_adjust_headheight:
- \global\let\ConfigureHeadline\TUDa_ConfigureHeadline:n
+ \ptxcd_update_headline_boxes:
+ \ptxcd_ex_adjust_headheight:
+ \global\let\ConfigureHeadline\ptxcd_ConfigureHeadline:n
}
%task environment
-%TODO: discussion: allow sectioning
\DeclareSectionCommand[%
-style=section,%
-level=1,%
-indent=\z@,%
-beforeskip=\cs_if_exist_use:NF \scr@subsection@beforeskip {-3.25ex\@plus -1ex \@minus -.2ex},%
-afterskip=\cs_if_exist_use:NF \scr@subsection@afterskip {1.5ex \@plus .2ex},%
-tocstyle=section,%
-tocindent=\cs_if_exist_use:NF \scr@tso@subsection@indent {1.5em},%
-tocnumwidth=\cs_if_exist_use:NF \scr@tso@subsection@numwidth {2.3em},%
+ style=section,%
+ level=1,%
+ indent=\z@,%
+ beforeskip=\cs_if_exist_use:NF \scr@subsection@beforeskip {-3.25ex\@plus -1ex \@minus -.2ex},%
+ afterskip=\cs_if_exist_use:NF \scr@subsection@afterskip {1.5ex \@plus .2ex},%
+ tocstyle=section,%
+ tocindent=\cs_if_exist_use:NF \scr@tso@subsection@indent {1.5em},%
+ tocnumwidth=\cs_if_exist_use:NF \scr@tso@subsection@numwidth {2.3em},%
]{task}
-\renewcommand*{\thetask}{\g_TUDa_ex_sheetnum_tl\tl_if_empty:NF \g_TUDa_ex_sheetnum_tl{.}\arabic{task}}
+\renewcommand*{\thetask}{\g_ptxcd_ex_sheetnum_tl\tl_if_empty:NF \g_ptxcd_ex_sheetnum_tl{.}\arabic{task}}
\renewcommand*{\taskformat}{\taskname\tasksep\thetask{}}
\let\@task\task
@@ -694,23 +689,25 @@ tocnumwidth=\cs_if_exist_use:NF \scr@tso@subsection@numwidth {2.3em},%
\NewDocumentEnvironment{task}{om}{
\begingroup
- \IfNoValueF{#1}{\keys_set:nn {TUDa/exercise}{#1}}
+ \IfNoValueF{#1}{\keys_set:nn {ptxcd/task}{#1}}
\@task{#2}
\endgroup
}{}
+\cs_set_eq:cN {task*} \task
+\cs_set_eq:cN {endtask*} \endtask
% subtasks
\DeclareSectionCommand[%
-style=section,%
-level=2,%
-indent=\z@,%
-beforeskip=\cs_if_exist_use:NF \scr@subsubsection@beforeskip {-3.25ex\@plus -1ex \@minus -.2ex},%
-afterskip=\cs_if_exist_use:NF \scr@subsubsection@afterskip {1.5ex \@plus .2ex},%
-tocstyle=subsection,%
-tocindent=\cs_if_exist_use:NF \scr@tso@subsubsection@indent {1.5em},%
-tocnumwidth=\cs_if_exist_use:NF \scr@tso@subsubsection@numwidth {2.3em},%
-counterwithin=task,%
+ style=section,%
+ level=2,%
+ indent=\z@,%
+ beforeskip=\cs_if_exist_use:NF \scr@subsubsection@beforeskip {-3.25ex\@plus -1ex \@minus -.2ex},%
+ afterskip=\cs_if_exist_use:NF \scr@subsubsection@afterskip {1.5ex \@plus .2ex},%
+ tocstyle=subsection,%
+ tocindent=\cs_if_exist_use:NF \scr@tso@subsubsection@indent {1.5em},%
+ tocnumwidth=\cs_if_exist_use:NF \scr@tso@subsubsection@numwidth {2.3em},%
+ counterwithin=task,%
]{subtask}
\renewcommand*{\thesubtask}{\alph{subtask})}
@@ -722,15 +719,22 @@ counterwithin=task,%
\NewDocumentEnvironment{subtask}{o}{
\tl_if_in:nnT {#1} {=} {
- \keys_set:nn {TUDa/subtask} {#1}
+ \keys_set:nn {ptxcd/subtask} {#1}
}
- \bool_if:NTF \l_TUDa_ex_subtask_fallback_bool {
+ \bool_if:NTF \l_ptxcd_ex_subtask_fallback_bool {
\@subtask{\IfNoValueF{#1}{#1}}
}{
- \@subtask{\l_TUDa_ex_title_tl}
+ \@subtask{\l_ptxcd_ex_title_tl}
}
}{}
+\NewDocumentEnvironment{subtask*}{om}{
+ \begingroup
+ \IfNoValueF{#1}{\keys_set:nn {ptxcd/subtask}{#1}}
+ \@subtask{#2}
+ \endgroup
+}{}
+
%Solution mechanism
\DeclareSectionCommand[%
@@ -747,33 +751,33 @@ tocnumwidth=\cs_if_exist_use:NF \scr@tso@subsubsection@numwidth {2.3em},%
\setkomafont{@solution}{\normalfont}
-\cs_new:Nn \TUDa_ex_solutionheader: {
+\cs_new:Nn \ptxcd_ex_solutionheader: {
\@solution*{\solutionname\solutionsep}
}
-\box_new:N \g_TUDa_NumberForm_box
-\hbox_gset:Nn \g_TUDa_NumberForm_box {
+\box_new:N \g_ptxcd_NumberForm_box
+\hbox_gset:Nn \g_ptxcd_NumberForm_box {
\rule{\fboxrule}{1ex}
\rule{1em}{\fboxrule}
\rule{\fboxrule}{1ex}
\,
}
-\newcommand*\TUDa@StudentID[1][7]{
- \StudentIDname\StudentIDsep\prg_replicate:nn {#1} {\box_use:N \g_TUDa_NumberForm_box}
+\newcommand*\ptxcd_StudentID[1][7]{
+ \StudentIDname\StudentIDsep\prg_replicate:nn {#1} {\box_use:N \g_ptxcd_NumberForm_box}
}
-\let\StudentID\TUDa@StudentID
+\let\StudentID\ptxcd_StudentID
-\newcommand*\TUDa@StudentName{
+\newcommand*\ptxcd_StudentName{
\StudentNamename\StudentNamesep\hrulefill\qquad
}
-\let\StudentName\TUDa@StudentName
+\let\StudentName\ptxcd_StudentName
-\let\ShortTitle\g_TUDa_shorttitle_tl
+\let\ShortTitle\g_ptxcd_shorttitle_tl
% Compatibility Features
-\bool_if:NT \g_TUDa_ex_compatibility_bool {
+\bool_if:NT \g_ptxcd_ex_compatibility_bool {
\cs_set_eq:NN \c@subsection \c@task
\cs_set_eq:NN \subsection \task
\cs_set_eq:NN \c@subsubsection \c@subtask
@@ -782,5 +786,9 @@ tocnumwidth=\cs_if_exist_use:NF \scr@tso@subsubsection@numwidth {2.3em},%
\cs_set_eq:NN \thesubtask \thesubsection
}
+\file_if_exist_input:n {tuda\g_ptxcd_department_str.cfg}
+
+\ptxcd_makeheadrule[color=identbarcolor, width=\textwidth]{ptxcd_headrule}
+
\endinput
%End of class tudaexercise.cls
diff --git a/macros/latex/contrib/tuda-ci/tex/tudafonts.sty b/macros/latex/contrib/tuda-ci/tex/tudafonts.sty
index cf9ec3e5d9..c2baab0e0e 100644
--- a/macros/latex/contrib/tuda-ci/tex/tudafonts.sty
+++ b/macros/latex/contrib/tuda-ci/tex/tudafonts.sty
@@ -1,4 +1,4 @@
-%% This is file `tudafonts.sty' version 2.11 (2020/06/12),
+%% This is file `tudafonts.sty' version 3.00 (2020/09/08),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -26,12 +26,12 @@
%%
%% ============================================================================
%%
-\def\fileversion{2.11}
-\def\filedate{2020/06/12}
+\def\fileversion{3.00}
+\def\filedate{2020/09/08}
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{tudafonts}
[\filedate\space\fileversion\space
- font loading for TUDa-CI, TU Darmstadt's Corporate Design]
+ font loading for TUDa-CI, TU Darmstadt's Corporate Design]
\expandafter\newif\csname if@TUDa@T1\endcsname
@@ -42,30 +42,33 @@
\RequirePackage{anyfontsize}
\ifPDFTeX
- \csname @TUDa@T1true\endcsname
- %Fallback for older versions
- \expandafter\ifx\csname DeclareUnicodeCharacter\endcsname\relax
- \RequirePackage[utf8]{inputenc}
- \fi
- \expandafter\ifx\csname texteuro\endcsname\relax
- \RequirePackage{textcomp}
- \fi
- \DeclareUnicodeCharacter{20AC}{\texteuro}
+ \csname @TUDa@T1true\endcsname
+ %Fallback for older versions
+ \expandafter\ifx\csname DeclareUnicodeCharacter\endcsname\relax
+ \RequirePackage[utf8]{inputenc}
+ \fi
+ \expandafter\ifx\csname texteuro\endcsname\relax
+ \RequirePackage{textcomp}
+ \fi
+ \DeclareUnicodeCharacter{20AC}{\texteuro}
\fi
\csname if@TUDa@T1\endcsname
- \RequirePackage{XCharter}%activates T1
- \PassOptionsToPackage{type1}{roboto}
- \PassOptionsToPackage{type1}{roboto-mono}
- %Workaround for missing ligature replacements with roboto in T1
- \ifXeTeX
- \else
- \RequirePackage{microtype}
- \DisableLigatures{encoding = *, family=\sfdefault, shape = sc }
- \fi
+ \ifLuaTeX
+ \RequirePackage[utf8]{luainputenc}
+ \fi
+ \RequirePackage{XCharter}%activates T1
+ \PassOptionsToPackage{type1}{roboto}
+ \PassOptionsToPackage{type1}{roboto-mono}
+ %Workaround for missing ligature replacements with roboto in T1
+ \ifXeTeX
+ \else
+ \RequirePackage{microtype}
+ \DisableLigatures{encoding = *, family=\sfdefault,shape = sc }
+ \fi
\else
- \RequirePackage{fontspec}
- \setmainfont{XCharter}
+ \RequirePackage{fontspec}
+ \setmainfont{XCharter}
\fi
\RequirePackage{roboto}
@@ -77,11 +80,6 @@
For correct font setup either install it manually or update you distribution}
}
-
-\ifPDFTeX
- \RequirePackage[T1]{fontenc}
-\fi
-
\let\accentfont\robotoslab
\DeclareTextFontCommand{\textaccent}{\accentfont}
diff --git a/macros/latex/contrib/tuda-ci/tex/tudaleaflet.cls b/macros/latex/contrib/tuda-ci/tex/tudaleaflet.cls
index ad49fdd38d..2b64756059 100644
--- a/macros/latex/contrib/tuda-ci/tex/tudaleaflet.cls
+++ b/macros/latex/contrib/tuda-ci/tex/tudaleaflet.cls
@@ -1,4 +1,4 @@
-%% This is file `tudaleaflet.cls' version 2.11 (2020/06/12),
+%% This is file `tudaleaflet.cls' version 3.00 (2020/09/08),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -26,45 +26,56 @@
%%
%% ============================================================================
%%
-\def\fileversion{2.11}
-\def\filedate{2020/06/12}
-\def\filedate{2020/02/02}
-\def\fileversion{}
+\def\fileversion{3.00}
+\def\filedate{2020/09/08}
\NeedsTeXFormat{LaTeX2e}
\RequirePackage{expl3}
\ProvidesExplPackage{tudaleaflet}{\filedate}{\fileversion}{Leaflets using the Corporate Design of TU Darmstadt}
\RequirePackage{l3keys2e}
-\tl_new:N \g_TUDa_sponsor_pos_tl
-\keys_define:nn {TUDa/leaflet} {
- logofile .tl_gset:N = \g_TUDa_logofile_tl,
+
+\str_const:Nn \c__ptxcd_base_str {leaflet}
+
+\tl_new:N \g_ptxcd_sponsor_pos_tl
+\keys_define:nn {ptxcd/leaflet} {
+ logofile .tl_gset:N = \g_ptxcd_logofile_tl,
logofile .initial:n = tuda_logo,
color .meta:n = {accentcolor=#1},
accentcolor .code:n = {\PassOptionsToPackage{accentcolor=#1}{tudacolors}},
textaccentcolor .code:n = {\PassOptionsToPackage{textaccentcolor=#1}{tudacolors}},
identbarcolor .code:n = {\PassOptionsToPackage{identbarcolor=#1}{tudacolors}},
- colorback .bool_gset:N = \g_TUDa_colorback_bool,
+ colorback .bool_gset:N = \g_ptxcd_colorback_bool,
colorback .initial:n = true,
colorback .default:n = true,
- colorbacktitle .bool_gset:N = \g_TUDa_colorbacktitle_bool,
+ colorbacktitle .bool_gset:N = \g_ptxcd_colorbacktitle_bool,
colorbacktitle .initial:n = false,
colorbacktitle .default:n = true,
- colorbacksubtitle .bool_set:N = \g_TUDa_colorbacksubtitle_bool,
+ colorbacksubtitle .bool_set:N = \g_ptxcd_colorbacksubtitle_bool,
colorbacksubtitle .initial:n = false,
colorbacksubtitle .default:n = true,
- sponsor .choices:nn = {title,lastfoot,manual}{\tl_gset_eq:NN \g_TUDa_sponsor_pos_tl \l_keys_choice_tl},
+ sponsor .choices:nn = {title,lastfoot,manual}{\tl_gset_eq:NN \g_ptxcd_sponsor_pos_tl \l_keys_choice_tl},
sponsor .initial:n = title,
+ department .choice:,
+ department / default .code:n = \str_gset:Nn \g_ptxcd_department_str {default},
+ department / mecheng .code:n = {
+ \str_gset:Nn \g_ptxcd_department_str {mecheng}
+ \keys_set:nn {ptxcd/leaflet} {colorback=false, departmentlogofile=tuda_maschinenbau_logo}
+ },
+ department .initial:n = default,
+ mecheng .meta:n = {department=mecheng},
+ departmentlogofile .tl_gset:N = \g_ptxcd_departmentlogo_tl,
+ departmentlogofile .initial:n =,
}
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{leaflet}}
-\ProcessKeysOptions{TUDa/leaflet}
+\ProcessKeysOptions{ptxcd/leaflet}
\ProcessOptions\relax
-\bool_if:NT \g_TUDa_colorbacksubtitle_bool {
- \bool_if:NF \g_TUDa_colorbacktitle_bool {
- \msg_new:nnnn {TUDa/leaflet} {incompatible-options} {You~cannot~use~the~setting~#1~at~the~same~time~as~#2.} {See~TUDaLeaflet~documentation~for~further~information.}
- \msg_error:nn {TUDa/leaflet} {incompatible-options} {colorbacksubtitle=true} {colorbacktitle=false}
+\bool_if:NT \g_ptxcd_colorbacksubtitle_bool {
+ \bool_if:NF \g_ptxcd_colorbacktitle_bool {
+ \msg_new:nnnn {ptxcd/leaflet} {incompatible-options} {You~cannot~use~the~setting~#1~at~the~same~time~as~#2.} {See~TUDaLeaflet~documentation~for~further~information.}
+ \msg_error:nn {ptxcd/leaflet} {incompatible-options} {colorbacksubtitle=true} {colorbacktitle=false}
}
}
@@ -82,17 +93,10 @@
\setlength{\footheight}{2mm}
\setmargins{10mm}{\dimexpr10mm+\headheight\relax}{10mm}{10mm}%Hardcoded, according to the guideline
-\TUDa@makeheadrule[color=identbarcolor]{TUDa_headrule}
-\box_new:N \TUDa_footrule_box
-\hbox_gset:Nn \TUDa_footrule_box {\rule{\textwidth}{.5\c_TUDa_smallrule_dim}}
-
-\dim_new:N \g_TUDa_titlerule_dim
-\dim_gset:Nn \g_TUDa_titlerule_dim {.5\c_TUDa_smallrule_dim}
-
\DeclareNewLayer[
head,
mode=picture,
- contents=\putUL{\box_use:N \TUDa_headrule_box}
+ contents=\putUL{\box_use:N \ptxcd_headrule_box}
]{TUDa.flyer.headline}
\DeclareNewLayer[
@@ -100,7 +104,7 @@
mode=picture,
height=\z@,
voffset=\paperheight-14mm,
- contents=\smash{\box_use:N \TUDa_footrule_box}
+ contents=\smash{\box_use:N \ptxcd_footrule_box}
]{TUDa.flyer.footline}
\DeclareNewPageStyleByLayers{TUDa.flyer}{
@@ -111,27 +115,27 @@
% Title specific additions to pagestyle
\DeclareNewLayer[textarea,mode=picture,
-addheight=\headheight-\box_dp:N \TUDa_headrule_box+\dp\strutbox,
+addheight=\headheight-\box_dp:N \ptxcd_headrule_box+\dp\strutbox,
contents={
- \bool_if:NT \g_TUDa_colorback_bool {\putLL{\color{identbarcolor}\rule{\layerwidth}{\layerheight}}}
- \tl_if_empty:NTF \g_TUDa_titleimage_code_tl
- {\bool_if:NT \g_TUDa_colorback_bool {\putLL{\color{identbarcolor}\rule{\layerwidth}{\layerheight}}}}
+ \bool_if:NT \g_ptxcd_colorback_bool {\putLL{\color{identbarcolor}\rule{\layerwidth}{\layerheight}}}
+ \tl_if_empty:NTF \g_ptxcd_titleimage_code_tl
+ {\bool_if:NT \g_ptxcd_colorback_bool {\putLL{\color{identbarcolor}\rule{\layerwidth}{\layerheight}}}}
{\putUL{\color{identbarcolor}\raisebox{-\height}{\parbox[t]{\textwidth}{
\let\width\layerwidth
\let\height\layerheight
- \g_TUDa_titleimage_code_tl
+ \g_ptxcd_titleimage_code_tl
}}}}
- \put(\dim_to_decimal_in_unit:nn {\layerwidth-2.2\c_TUDa_logoheight_dim
+ \put(\dim_to_decimal_in_unit:nn {\layerwidth-2.2\c_ptxcd_logoheight_dim
} {\unitlength},
- \dim_to_decimal_in_unit:nn {\layerheight-\box_ht:N \g_TUDa_title_info_box - .5\c_TUDa_logoheight_dim} {\unitlength}){
- \rlap{\box_use:N \g_TUDa_title_info_box}
+ \dim_to_decimal_in_unit:nn {\layerheight-\box_ht:N \g_ptxcd_title_info_box - .5\c_ptxcd_logoheight_dim} {\unitlength}){
+ \rlap{\box_use:N \g_ptxcd_title_info_box}
}
}
]{title.TUDa.image}
\DeclareNewLayer[textarea,background,mode=picture,
contents={
- \bool_if:NT \g_TUDa_colorbacktitle_bool {
+ \bool_if:NT \g_ptxcd_colorbacktitle_bool {
\color{identbarcolor}\rule{\layerwidth}{\layerheight}
}
}
@@ -144,21 +148,21 @@ contents={
TUDa.flyer.footline,
}
-\cs_new:Nn \TUDa_Setup_Title_box: {
- \hbox_gset:Nn \g_TUDa_title_info_box
+\cs_new:Nn \ptxcd_Setup_Title_box: {
+ \hbox_gset:Nn \g_ptxcd_title_info_box
{
- \parbox{\dimexpr2.5\c_TUDa_logoheight_dim}{
- \seq_use:Nn \g_TUDa_title_info_seq {\par\nointerlineskip\vspace{\dim_eval:n {\c_TUDa_largerule_dim+\c_TUDa_rulesep_dim}}}
+ \parbox{\dimexpr2.5\c_ptxcd_logoheight_dim}{
+ \seq_use:Nn \g_ptxcd_title_info_seq {\par\nointerlineskip\vspace{\dim_eval:n {\c_ptxcd_largerule_dim+\c_ptxcd_rulesep_dim}}}
}
}
}
\newcommand*\sectionlinesformat[1]{%
\parbox{\linewidth}{
- \rule[\TUDa_titlerule_sep:]{\linewidth}{\g_TUDa_titlerule_dim}\par\nointerlineskip
+ \rule[\ptxcd_titlerule_sep:]{\linewidth}{\g_ptxcd_titlerule_dim}\par\nointerlineskip
#1\strut\rule[-\dp\strutbox]{0pt}{\dp\strutbox}\par\nointerlineskip
- \skip_vertical:n {\TUDa_titlerule_sep: -.5\dp\strutbox}
- \smash{\rule{\linewidth}{\g_TUDa_titlerule_dim}}
+ \skip_vertical:n {\ptxcd_titlerule_sep: -.5\dp\strutbox}
+ \smash{\rule{\linewidth}{\g_ptxcd_titlerule_dim}}
}
}
@@ -166,27 +170,27 @@ contents={
\newcommand*{\raggedtitle}{\raggedright}
\renewcommand*{\maketitle}{
\def\and{,~ }
- \hbox_gset:Nn \g_TUDa_sponsor_box {
- \def\height{\dimexpr.8\c_TUDa_logoheight_dim\relax}
+ \hbox_gset:Nn \g_ptxcd_sponsor_box {
+ \def\height{\dimexpr.8\c_ptxcd_logoheight_dim\relax}
\parbox[b]{\textwidth}{%
- \rule{\linewidth}{\g_TUDa_titlerule_dim}\par\nointerlineskip
- \vspace{.1\c_TUDa_logoheight_dim}
- \seq_use:Nn \g_TUDa_sponsors_seq {\hfill}\par
- \addvspace{.1\c_TUDa_logoheight_dim}
+ \rule{\linewidth}{\g_ptxcd_titlerule_dim}\par\nointerlineskip
+ \vspace{.1\c_ptxcd_logoheight_dim}
+ \seq_use:Nn \g_ptxcd_sponsors_seq {\hfill}\par
+ \addvspace{.1\c_ptxcd_logoheight_dim}
\ifx\@sponsors\@empty
\else
\@sponsors\par
\fi
- \par\nointerlineskip\addvspace{\dim_eval:n {.1\c_TUDa_logoheight_dim-\c_TUDa_rulesep_dim}}
-% \rule{\linewidth}{\g_TUDa_titlerule_dim}
+ \par\nointerlineskip\addvspace{\dim_eval:n {.1\c_ptxcd_logoheight_dim-\c_ptxcd_rulesep_dim}}
+% \rule{\linewidth}{\g_ptxcd_titlerule_dim}
}
}
\begin{titlepage}
\def\thefootnote{\fnsymbol{footnote}}
- \hbox_gset:Nn \g_TUDa_title_box {
+ \hbox_gset:Nn \g_ptxcd_title_box {
\parbox[t]{\linewidth}{
\begin{minipage}[b]{\linewidth}
- \bool_if:NT \g_TUDa_colorbacktitle_bool {\color{textonaccentcolor}}
+ \bool_if:NT \g_ptxcd_colorbacktitle_bool {\color{textonaccentcolor}}
\begin{addmargin}{3mm}
\raggedtitle
\Huge
@@ -198,13 +202,13 @@ contents={
\end{addmargin}
\end{minipage}%
\par\nointerlineskip
- \bool_if:NTF \g_TUDa_colorbacksubtitle_bool
- {\textcolor{white}{\rule{\linewidth}{\c_TUDa_rulesep_dim}}}
- {\rule{\linewidth}{\g_TUDa_titlerule_dim}}
+ \bool_if:NTF \g_ptxcd_colorbacksubtitle_bool
+ {\textcolor{white}{\rule{\linewidth}{\c_ptxcd_rulesep_dim}}}
+ {\rule{\linewidth}{\g_ptxcd_titlerule_dim}}
\par
- \vspace{\c_TUDa_rulesep_dim}
+ \vspace{\c_ptxcd_rulesep_dim}
\begin{addmargin}{3mm}
- \bool_if:NT \g_TUDa_colorbacksubtitle_bool {\color{textonaccentcolor}}
+ \bool_if:NT \g_ptxcd_colorbacksubtitle_bool {\color{textonaccentcolor}}
\raggedtitle
\usekomafont{disposition}
{\ifx\@subtitle\@empty\else\usekomafont{subtitle}{\@subtitle\par}\fi}%
@@ -216,18 +220,18 @@ contents={
}%
{\usekomafont{date}{\@date\par}}%
\end{addmargin}\nointerlineskip
- \vspace{\c_TUDa_rulesep_dim}
- \bool_if:NT \g_TUDa_colorbacktitle_bool
+ \vspace{\c_ptxcd_rulesep_dim}
+ \bool_if:NT \g_ptxcd_colorbacktitle_bool
{
- \textcolor{white}{\rule{\linewidth}{\c_TUDa_rulesep_dim}}\par\nointerlineskip
+ \textcolor{white}{\rule{\linewidth}{\c_ptxcd_rulesep_dim}}\par\nointerlineskip
}
- \rule{\linewidth}{\g_TUDa_titlerule_dim}\par
+ \rule{\linewidth}{\g_ptxcd_titlerule_dim}\par
}
}
- \TUDa_adjust_titlepage_style:
+ \ptxcd_adjust_titlepage_style:
\par
- \vspace*{\dimexpr.5\c_TUDa_logoheight_dim-\topskip}
- \box_use:N \g_TUDa_title_box
+ \vspace*{\dimexpr.5\c_ptxcd_logoheight_dim-\topskip}
+ \box_use:N \g_ptxcd_title_box
\par
\vfill\null
\if@twoside
@@ -245,51 +249,51 @@ contents={
}
-\cs_set:Nn \TUDa_adjust_titlepage_style: {
- \dim_set:Nn \l_tmpa_dim {1\c_TUDa_logoheight_dim}%\fp_to_dim:n {2.8\baselineskip}}
- \dim_compare:nT {\box_ht:N \g_TUDa_title_box < \l_tmpa_dim} {
- \skip_set:Nn \g_TUDa_title_fill_skip {\dim_eval:n {\l_tmpa_dim - \box_ht:N \g_TUDa_title_box}}
+\cs_set:Nn \ptxcd_adjust_titlepage_style: {
+ \dim_set:Nn \l_tmpa_dim {1\c_ptxcd_logoheight_dim}%\fp_to_dim:n {2.8\baselineskip}}
+ \dim_compare:nT {\box_ht:N \g_ptxcd_title_box < \l_tmpa_dim} {
+ \skip_set:Nn \g_ptxcd_title_fill_skip {\dim_eval:n {\l_tmpa_dim - \box_ht:N \g_ptxcd_title_box}}
}
\dim_set:Nn \l_tmpa_dim {
- +\box_ht:N \g_TUDa_title_box
- +.5\c_TUDa_logoheight_dim
- +\box_dp:N \g_TUDa_title_box
- +\g_TUDa_title_fill_skip
+ +\box_ht:N \g_ptxcd_title_box
+ +.5\c_ptxcd_logoheight_dim
+ +\box_dp:N \g_ptxcd_title_box
+ +\g_ptxcd_title_fill_skip
}
\ModifyLayer[
addvoffset=\l_tmpa_dim,
addheight= -\l_tmpa_dim
]{title.TUDa.image}
- \DeclareNewLayer[clone=TUDa.flyer.footline,%clone=title.TUDa.image,
+ \DeclareNewLayer[clone=TUDa.flyer.footline,
mode=picture,
align=bl,
- height=\box_ht:N \g_TUDa_sponsor_box + \box_dp:N \g_TUDa_sponsor_box,
+ height=\box_ht:N \g_ptxcd_sponsor_box + \box_dp:N \g_ptxcd_sponsor_box,
addvoffset=-\dp\strutbox,
- contents=\raisebox{\depth}{\box_use:N \g_TUDa_sponsor_box}
+ contents=\raisebox{\depth}{\box_use:N \g_ptxcd_sponsor_box}
]
{title.TUDa.sponsor}
- \exp_args:Nx \tl_if_eq:nnT {\g_TUDa_sponsor_pos_tl} {title} {
+ \exp_args:Nx \tl_if_eq:nnT {\g_ptxcd_sponsor_pos_tl} {title} {
\AddLayersToPageStyle{title.TUDa}{title.TUDa.sponsor}
\ModifyLayer[
- addheight=-\box_ht:N \g_TUDa_sponsor_box -\box_dp:N \g_TUDa_sponsor_box-\dp\strutbox
+ addheight=-\box_ht:N \g_ptxcd_sponsor_box -\box_dp:N \g_ptxcd_sponsor_box-\dp\strutbox
]{title.TUDa.image}
}
\ModifyLayer[
- addvoffset={-\dim_eval:n {\headheight -\box_ht:N \TUDa_headrule_box-\box_dp:N \TUDa_headrule_box }},
+ addvoffset={-\dim_eval:n {\headheight -\box_ht:N \ptxcd_headrule_box-\box_dp:N \ptxcd_headrule_box }},
height={
- \bool_if:NT \g_TUDa_colorbacksubtitle_bool {\box_dp:N \g_TUDa_title_box}
- +\box_ht:N \g_TUDa_title_box+\g_TUDa_title_fill_skip+.5\c_TUDa_logoheight_dim+
- \headheight -\box_ht:N \TUDa_headrule_box-\box_dp:N \TUDa_headrule_box
+ \bool_if:NT \g_ptxcd_colorbacksubtitle_bool {\box_dp:N \g_ptxcd_title_box}
+ +\box_ht:N \g_ptxcd_title_box+\g_ptxcd_title_fill_skip+.5\c_ptxcd_logoheight_dim+
+ \headheight -\box_ht:N \ptxcd_headrule_box-\box_dp:N \ptxcd_headrule_box
}
]{title.TUDa.background}
\AddLayersToPageStyle{title.TUDa}{title.TUDa.background}
\thispagestyle{title.TUDa}
\nointerlineskip
- \TUDa_Setup_Title_box:
+ \ptxcd_Setup_Title_box:
\par
- \vspace*{\skip_use:N \g_TUDa_title_fill_skip}
+ \vspace*{\skip_use:N \g_ptxcd_title_fill_skip}
\setlength{\fboxsep}{\z@}
}
%
@@ -326,88 +330,86 @@ contents={
{\usekomafont{disposition}\usekomafont{subsubsection}\sectfont}}
\clist_map_inline:nn {section, subsection, subsubsection} {
- \cs_set_eq:cc {TUDa_save_#1} {#1}
+ \cs_set_eq:cc {ptxcd_save_#1} {#1}
\exp_args:Nc \RenewDocumentCommand{#1}{sO{##3}m}{
\IfBooleanTF{##1}{
- \use:c {TUDa_save_#1}*{\sectionlinesformat{##3}}
+ \use:c {ptxcd_save_#1}*{\sectionlinesformat{##3}}
}{
- \use:c {TUDa_save_#1}[##2]{\sectionlinesformat{##3}}
+ \use:c {ptxcd_save_#1}[##2]{\sectionlinesformat{##3}}
}
}
}
-\cs_new:Nn \TUDa_titlerule_sep: {\the\dp\strutbox}
+\cs_new:Nn \ptxcd_titlerule_sep: {\the\dp\strutbox}
\def\subtitle#1{\def\@subtitle{#1}}
\subtitle{}
-\seq_new:N \g_TUDa_sponsors_seq
-\def\AddSponsor{\seq_gput_right:Nn \g_TUDa_sponsors_seq}
+\seq_new:N \g_ptxcd_sponsors_seq
+\def\AddSponsor{\seq_gput_right:Nn \g_ptxcd_sponsors_seq}
\def\sponsors#1{\def\@sponsors{#1}}
\sponsors{}
-\box_new:N \g_TUDa_sponsor_box
+\box_new:N \g_ptxcd_sponsor_box
\newcommand*{\footergraphics}[1]{
\begingroup
- \let\height\g_TUDa_footheight_dim
- \hbox_gset:Nn \g_TUDa_footergraphics_box {#1}
+ \let\height\g_ptxcd_footheight_dim
+ \hbox_gset:Nn \g_ptxcd_footergraphics_box {#1}
\endgroup
}
-\tl_new:N \g_TUDa_titleimage_code_tl
-\tl_gset_eq:NN \g_TUDa_titleimage_code_tl \c_empty_tl
-\newcommand{\titleimage}[1]{\tl_gset:Nn \g_TUDa_titleimage_code_tl {#1}}
+\tl_new:N \g_ptxcd_titleimage_code_tl
+\tl_gset_eq:NN \g_ptxcd_titleimage_code_tl \c_empty_tl
+\newcommand{\titleimage}[1]{\tl_gset:Nn \g_ptxcd_titleimage_code_tl {#1}}
\author{}%to remove warning if no author given
-\box_new:N \g_TUDa_title_box
-\skip_new:N \g_TUDa_title_fill_skip
+\box_new:N \g_ptxcd_title_box
+\skip_new:N \g_ptxcd_title_fill_skip
-\seq_new:N \g_TUDa_title_info_seq
-\box_new:N \g_TUDa_title_info_box
+\seq_new:N \g_ptxcd_title_info_seq
+\box_new:N \g_ptxcd_title_info_box
-\colorlet{TUDa@InfoBoxColor}{white}
-
-\cs_new:Nn \TUDa_make_title_info_box:n {
+\cs_new:Nn \ptxcd_make_title_info_box:n {
\setlength{\fboxsep}{1.5mm}%
- \colorbox{TUDa@InfoBoxColor}{
- \makebox[\dim_eval:n {2.2\c_TUDa_logoheight_dim-\fboxsep}][r]{
- \parbox{2\c_TUDa_logoheight_dim}{
+ \colorbox{InfoBox}{
+ \makebox[\dim_eval:n {2.2\c_ptxcd_logoheight_dim-\fboxsep}][r]{
+ \parbox{2\c_ptxcd_logoheight_dim}{
\usekomafont{institution}
\raggedright%
#1
}}}
}
-\cs_new:Nn \TUDa_make_title_logo_box:n {
+\cs_new:Nn \ptxcd_make_title_logo_box:n {
\setlength{\fboxsep}{\z@}
- \parbox{2.2\c_TUDa_logoheight_dim}{
- \colorbox{TUDa@InfoBoxColor}{
+ \parbox{2.2\c_ptxcd_logoheight_dim}{
+ \colorbox{InfoBox}{
\rlap{
- \makebox[2.5\c_TUDa_logoheight_dim][r]{
- \colorbox{TUDa@InfoBoxColor}{#1\hspace{.3\c_TUDa_logoheight_dim}}
+ \makebox[2.5\c_ptxcd_logoheight_dim][r]{
+ \colorbox{InfoBox}{#1\hspace{.3\c_ptxcd_logoheight_dim}}
}
}
}
}
}
-\newcommand{\addTitleBox}[1]{\seq_gput_right:Nn \g_TUDa_title_info_seq {\TUDa_make_title_info_box:n {#1}}}
+\newcommand{\addTitleBox}[1]{\seq_gput_right:Nn \g_ptxcd_title_info_seq {\ptxcd_make_title_info_box:n {#1}}}
\NewDocumentCommand{\addTitleBoxLogo}{sm}{
\IfBooleanTF{#1}{
- \seq_gput_right:Nn \g_TUDa_title_info_seq {
- \TUDa_make_title_logo_box:n {#2}
+ \seq_gput_right:Nn \g_ptxcd_title_info_seq {
+ \ptxcd_make_title_logo_box:n {#2}
}
}{
- \seq_gput_right:Nn \g_TUDa_title_info_seq {
- \TUDa_make_title_logo_box:n {
+ \seq_gput_right:Nn \g_ptxcd_title_info_seq {
+ \ptxcd_make_title_logo_box:n {
\hbox_set:Nn \l_tmpa_box {
- \includegraphics[width=1.5\c_TUDa_logoheight_dim]{#2}
+ \includegraphics[width=1.5\c_ptxcd_logoheight_dim]{#2}
}
- \dim_set:Nn \l_tmpa_dim {2\c_TUDa_logoheight_dim/3}
+ \dim_set:Nn \l_tmpa_dim {2\c_ptxcd_logoheight_dim/3}
\dim_compare:nTF {\box_ht:N \l_tmpa_box > \l_tmpa_dim}
{\includegraphics[width=\l_tmpa_dim]{#2}}
{\box_use:N \l_tmpa_box}
@@ -416,24 +418,29 @@ contents={
}
}
-\addTitleBoxLogo*{\makebox[\linewidth][l]{\includegraphics[height=\c_TUDa_logoheight_dim]{\g_TUDa_logofile_tl}}}
+\addTitleBoxLogo*{\makebox[\linewidth][l]{\includegraphics[height=\c_ptxcd_logoheight_dim]{\g_ptxcd_logofile_tl}}}
\date{}
\let\insertSponsors\relax
-\str_case:Vn \g_TUDa_sponsor_pos_tl {
+\str_case:Vn \g_ptxcd_sponsor_pos_tl {
{lastfoot}{
\AtEndDocument{
\par\vspace*{\fill}
\leavevmode\raisebox{\dimexpr\depth-\baselineskip}[0pt][0pt]{
- \box_use:N \g_TUDa_sponsor_box
+ \box_use:N \g_ptxcd_sponsor_box
}
}
}
{manual} {
- \renewcommand*{\insertSponsors}{\par\vfill\leavevmode\box_use:N \g_TUDa_sponsor_box\par\nobreak\nointerlineskip\rule{\linewidth}{\g_TUDa_titlerule_dim}
+ \renewcommand*{\insertSponsors}{\par\vfill\leavevmode\box_use:N \g_ptxcd_sponsor_box\par\nobreak\nointerlineskip\rule{\linewidth}{\g_ptxcd_titlerule_dim}
}
}
}
-\endinput \ No newline at end of file
+\file_if_exist_input:n {tuda\g_ptxcd_department_str.cfg}
+
+\ptxcd_makeheadrule[color=identbarcolor]{ptxcd_headrule}
+\ptxcd_makefootrule{ptxcd_footrule}
+
+\endinput
diff --git a/macros/latex/contrib/tuda-ci/tex/tudaletter.cls b/macros/latex/contrib/tuda-ci/tex/tudaletter.cls
index 692b271239..3d92b60f21 100644
--- a/macros/latex/contrib/tuda-ci/tex/tudaletter.cls
+++ b/macros/latex/contrib/tuda-ci/tex/tudaletter.cls
@@ -1,4 +1,4 @@
-%% This is file `tudaletter.cls' version 2.11 (2020/06/12),
+%% This is file `tudaletter.cls' version 3.00 (2020/09/08),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -26,8 +26,8 @@
%%
%% ============================================================================
%%
-\def\fileversion{2.11}
-\def\filedate{2020/06/12}
+\def\fileversion{3.00}
+\def\filedate{2020/09/08}
\NeedsTeXFormat{LaTeX2e}
\RequirePackage{expl3}
\ProvidesExplClass{tudaletter}
@@ -35,48 +35,69 @@
\RequirePackage{l3keys2e}
-\keys_define:nn {TUDaLetter} {
- logo .bool_gset:N = \g_TUDaletter_logo_bool,
+\str_const:Nn \c__ptxcd_base_str {letter}
+\str_new:N \g_ptxcd_department_str
+\bool_new:N \g__ptxcd_adjust_textwidth_bool
+
+\keys_define:nn {ptxcd/letter} {
+ logo .bool_gset:N = \g__ptxcd_letter_logo_bool,
logo .default:n = true,
logo .initial:n = true,
- premium .bool_gset:N = \g_TUDaletter_premium_bool,
+ premium .bool_gset:N = \g__ptxcd_letter_premium_bool,
premium .default:n = true,
accentcolor .code:n = \PassOptionsToPackage{accentcolor=#1}{tudacolors},
- firstpagenumber .bool_gset:N = \g_TUDa_firstpagenumber_bool,
+ firstpagenumber .bool_gset:N = \g__ptxcd_firstpagenumber_bool,
firstpagenumber .initial:n = true,
- raggedright .bool_gset:N = \g_TUDa_raggedright_bool,
- pdfa .bool_gset:N = \g_TUDa@pdfa_bool,
+ raggedright .bool_gset:N = \g__ptxcd_letter_raggedright_bool,
+ pdfa .bool_gset:N = \g_ptxcd_pdfa_bool,
pdfa .initial:n = true,
- logofile .tl_gset:N = \g_TUDa_logofile_tl,
+ logofile .tl_gset:N = \g_ptxcd_logofile_tl,
logofile .initial:n = tuda_logo,
+ department .choice:,
+ department / default .code:n = \str_gset:Nn \g_ptxcd_department_str {default},
+ department / mecheng .code:n = {
+ \str_gset:Nn \g_ptxcd_department_str {mecheng}
+ \keys_set:nn {ptxcd/letter}{departmentlogofile=tuda_maschinenbau_logo,headrule=false,logo=false,textwidth=narrow}
+ \PassOptionsToPackage{identbar=Primary1,accent=Primary2}{tudacolors}
+ },
+ department .initial:n = default,
+ mecheng .meta:n = {department=mecheng},
+ departmentlogofile .tl_gset:N = \g_ptxcd_departmentlogo_tl,
+ departmentlogofile .initial:n =,
+ headrule .bool_gset:N = \g__ptxcd_letter_headrule_bool,
+ headrule .initial:n = true,
+ headrule .default:n = true,
+ textwidth .choice:,
+ textwidth / wide .code:n = \bool_gset_true:N \g__ptxcd_adjust_textwidth_bool,
+ textwidth / narrow .code:n = \bool_gset_false:N \g__ptxcd_adjust_textwidth_bool,
+ textwidth .initial:n = wide,
}
-\ProcessKeysOptions{TUDaLetter}
+\ProcessKeysOptions{ptxcd/letter}
-\bool_if:NT \g_TUDa@pdfa_bool {\PassOptionsToPackage{RGB}{xcolor}}
+\bool_if:NT \g_ptxcd_pdfa_bool {\PassOptionsToPackage{RGB}{xcolor}}
\newcommand*{\@fontsizefilebase}{tudalettersize}
-\PassOptionsToClass{fontsize=10pt, refline=nodate, parskip=full-,addrfield=topaligned}{scrlttr2}
-\LoadClass{scrlttr2}
+\PassOptionsToClass{fontsize=10pt,parskip=full-}{scrletter}
+\PassOptionsToPackage{refline=nodate,addrfield=topaligned,firstfoot=false,pagenumber=botright}{scrletter}
+\LoadClass{scrletter}
% Load the TUDa-colorscheme
\RequirePackage{tudacolors}
-\bool_if:NTF \g_TUDaletter_premium_bool
-{ \def\TUDa@premiumcolor{accentcolor}
- \def\TUDa@use@premiumcolor{\color{accentcolor}}
- \def\TUDa@use@premiumcolor@text{\color{textaccentcolor}}
+\bool_if:NTF \g__ptxcd_letter_premium_bool
+{ \cs_new:Nn \ptxcd_premiumcolor: {accentcolor}
+ \cs_new:Nn \ptxcd_use_premiumcolor: {\color{accentcolor}}
+ \cs_set:Nn \ptxcd_use_premiumcolor_text: {\color{textaccentcolor}}
}{
- \def\TUDa@premiumcolor{black}
- \let\TUDa@use@premiumcolor\relax
- \let\TUDa@use@premiumcolor@text\relax
+ \cs_new:Nn \ptxcd_premiumcolor: {black}
+ \let\ptxcd_use_premiumcolor:\relax
+ \let\ptxcd_use_premiumcolor_text:\relax
}
-
-
\RequirePackage{tudafonts}
\RequirePackage{graphicx}
\RequirePackage{afterpage}
@@ -85,77 +106,85 @@
%%%%%Briefbogen
%% Spacing:
-\dim_const:Nn \c_TuDa_HeadMargin_dim {12.5mm}
-\dim_const:Nn \c_TuDa_LeftMargin_dim {24.0mm}
-\dim_const:Nn \c_TuDa_RightMargin_dim {\c_TuDa_HeadMargin_dim}
-\dim_const:Nn \c_TuDa_BottomMargin_dim {\c_TuDa_LeftMargin_dim}
-\dim_const:Nn \c_TuDa_Linewidth_dim {\paperwidth-\c_TuDa_LeftMargin_dim-\c_TuDa_RightMargin_dim}
+\dim_const:Nn \c_ptxcd_HeadMargin_dim {12.5mm}
+\dim_const:Nn \c_ptxcd_LeftMargin_dim {24.0mm}
+\dim_const:Nn \c__ptxcd_firstpage_extraindent_dim {-\paperwidth+120mm +\c_ptxcd_LeftMargin_dim +\c_ptxcd_HeadMargin_dim}
+\bool_if:NTF \g__ptxcd_adjust_textwidth_bool
+ {
+ \dim_const:Nn \c_ptxcd_RightMargin_dim {\c_ptxcd_HeadMargin_dim}
+
+ }{
+ \dim_const:Nn \c_ptxcd_RightMargin_dim {\c_ptxcd_HeadMargin_dim-\c__ptxcd_firstpage_extraindent_dim}
+ }
+\dim_const:Nn \c_ptxcd_BottomMargin_dim {20mm}
+\dim_const:Nn \c_ptxcd_Linewidth_dim {\paperwidth-\c_ptxcd_LeftMargin_dim-\c_ptxcd_RightMargin_dim}
-\RequirePackage[heightrounded]{geometry}
+\RequirePackage{geometry}
\geometry{
twoside=false,
- left=\c_TuDa_LeftMargin_dim,
- right=\c_TuDa_RightMargin_dim,
- bottom=20mm,
- footskip=3mm,
+ left=\c_ptxcd_LeftMargin_dim,
+ right=\c_ptxcd_RightMargin_dim,
+ bottom=\c_ptxcd_BottomMargin_dim,
+ footskip=7mm,
}
-\dim_const:Nn \c_TUDa_textwidth_dim {\textwidth}
+\dim_const:Nn \c_ptxcd_textwidth_dim {\textwidth}
-\bool_if:NTF \g_TUDaletter_logo_bool {
+\bool_if:NTF \g__ptxcd_letter_logo_bool {
\geometry{top=64mm}
} {
\geometry{top=30mm}
}
-\@setplength{firstheadhpos}{\c_TuDa_HeadMargin_dim}
-\@setplength{firstheadvpos}{\c_TuDa_HeadMargin_dim}
-\@setplength{firstheadwidth}{\dim_eval:n {\paperwidth - 2\c_TuDa_HeadMargin_dim}}
+\@setplength{firstheadhpos}{\c_ptxcd_HeadMargin_dim}
+\@setplength{firstheadvpos}{\c_ptxcd_HeadMargin_dim}
+\@setplength{firstheadwidth}{\dim_eval:n {\paperwidth - 2\c_ptxcd_HeadMargin_dim}}
\@setplength{firstfootvpos}{\dim_eval:n {\paperheight -17mm}}
\@setplength{firstfoothpos}{\useplength{firstheadhpos}}
\@setplength{firstfootwidth}{\useplength{firstheadwidth}}
-\@setplength{toaddrhpos}{\c_TuDa_LeftMargin_dim}
+\@setplength{toaddrhpos}{\c_ptxcd_LeftMargin_dim}
\@setplength{toaddrvpos}{50mm}
\@setplength{backaddrheight}{4mm}
\@setplength{toaddrindent}{0mm}
-\@setplength{refhpos}{\c_TuDa_LeftMargin_dim}
+\@setplength{refhpos}{\c_ptxcd_LeftMargin_dim}
\@setplength{refvpos}{106mm}
\@setplength{subjectaftervskip}{2\baselineskip}
-\@setplength{lochpos}{\c_TuDa_HeadMargin_dim}
+\@setplength{lochpos}{\c_ptxcd_HeadMargin_dim}
\@setplength{locvpos}{\dimexpr\useplength{refvpos}+\useplength{subjectaftervskip}+1.4\baselineskip\relax}
\@setplength{refaftervskip}{0pt}
\@setplength{subjectbeforevskip}{0pt}
-\@setplength{locwidth}{\dimexpr\paperwidth-154,5mm -\c_TuDa_RightMargin_dim\relax}
-\@setplength{locheight}{\dimexpr\paperheight-\useplength{locvpos}-\c_TuDa_BottomMargin_dim\relax}
-
-
-
-\dim_const:Nn \c_TuDa_firstpage_extraindent_dim {-\paperwidth+120mm +\c_TuDa_LeftMargin_dim +\c_TuDa_RightMargin_dim}
-
+\@setplength{locwidth}{\dimexpr\paperwidth-154,5mm -\c_ptxcd_HeadMargin_dim\relax}
+\@setplength{locheight}{\dimexpr\paperheight-\useplength{locvpos}-\c_ptxcd_BottomMargin_dim\relax}
\RequirePackage[paper=a4]{tudarules}
-
-\TUDa@makeheadrule[width=\useplength{firstheadwidth}, color=\TUDa@premiumcolor]{TuDa@LetterheadRule}
-\TUDa@makefootrule[width=\useplength{firstheadwidth}]{TuDa@LetterfootRule}
+\bool_if:NTF \g__ptxcd_letter_headrule_bool {
+ \ptxcd_makeheadrule[width=\useplength{firstheadwidth},color=identbarcolor]{ptxcd_LetterheadRule}
+} {
+ \box_new:N \ptxcd_LetterheadRule_box
+ \def\ptxcd_LetterheadRule{}
+}
+\ptxcd_makefootrule[width=\useplength{firstheadwidth}]{ptxcd_LetterfootRule}
\box_new:N \g_TUDaLetter_firsthead_box
\hbox_gset:Nn \g_TUDaLetter_firsthead_box {
- \parbox{\useplength{firstheadwidth}}{
+ \parbox[t]{\useplength{firstheadwidth}}{
\raggedleft
- \smash{\TuDa@LetterheadRule}\par
- \vspace{.5\c_TUDa_logoheight_dim}
- \makebox[2.2\c_TUDa_logoheight_dim][l]{\includegraphics[height=\c_TUDa_logoheight_dim]{\g_TUDa_logofile_tl}}
+ \smash{\ptxcd_LetterheadRule}
+ \par
+ \vspace{.5\c_ptxcd_logoheight_dim}
+ \makebox[2.2\c_ptxcd_logoheight_dim][l]{\includegraphics[height=\c_ptxcd_logoheight_dim]{\g_ptxcd_logofile_tl}}
}
}
+\box_gset_dp:Nn \g_TUDaLetter_firsthead_box {\c_zero_dim}
\setkomavar{firsthead}{
\box_use:N \g_TUDaLetter_firsthead_box
}
@@ -167,21 +196,25 @@
\newkomavar{frominstitution}
\newkomavar{frominstitution-en}
-\newkomafont{TUDa_location}{\accentfont\normalcolor}
+\newkomafont{ptxcd_location}{\accentfont\normalcolor}
\setkomafont{fromname}{\small}
-\newkomafont{TUDa_frominst}{\small\TUDa@use@premiumcolor@text}
+\newkomafont{ptxcd_frominst}{\small\ptxcd_use_premiumcolor_text: }
\setkomafont{fromaddress}{\footnotesize}
\setkomafont{refname}{}
\setkomafont{refvalue}{}
+\setkomafont{pageheadfoot}{\footnotesize}
\newcommand{\TUD@locfield}{%
- \usekomafont{TUDa_location}\usekomafont{fromaddress}
+ \usekomafont{ptxcd_location}\usekomafont{fromaddress}
\setparsizes{\z@}{\z@}{\z@ plus 1fil}
\par@updaterelative
\begingroup
- \usekomafont{TUDa_frominst}
+ \int_compare:nT {0 < \@pageat <3} {
+ \ptxcd_letterpagemark:\\[\baselineskip]
+ }
+ \usekomafont{ptxcd_frominst}
\Ifkomavarempty{frominstitution}{}{%
{\usekomavar[\raggedright]{frominstitution}}
\\[\baselineskip]}%
@@ -206,7 +239,7 @@
\vspace{2\baselineskip}
\fi
\Ifkomavarempty*{date}{}{\usekomavar*{date}\\\usekomavar{date}}
- \seq_use:Nn \g_TUDa_reffields_seq {}
+ \seq_use:Nn \g__ptxcd_reffields_seq {}
\Ifkomavarempty{frombank}{}{\vfill%
\Ifkomavarempty*{frombank}{Bankverbindung}{\usekomavar*{frombank}}\\\usekomavar{frombank}
}
@@ -214,14 +247,14 @@
\setkomavar{location}{\parbox[t][.45\paperheight][t]{\useplength{locwidth}}{\TUD@locfield}}
-\tl_const:Nn \TUDa@reffield_separator_tl {\\}
+\tl_const:Nn \ptxcd_reffield_separator_tl {\\}
-\cs_new:Nn \TUDa@set@reffield:n {
+\cs_new:Nn \ptxcd_set_reffield:n {
\Ifkomavarempty{#1}{}{%
\if@tempswa\\[\baselineskip]\fi
\parbox[t]{\linewidth}{\noindent\raggedright
\usekomafont{refname}
- \usekomavar*{#1}\TUDa@reffield_separator_tl
+ \usekomavar*{#1}\ptxcd_reffield_separator_tl
\usekomafont{refvalue}
\usekomavar{#1}
}%
@@ -231,14 +264,16 @@
-\seq_new:N \g_TUDa_reffields_seq
+\seq_new:N \g__ptxcd_reffields_seq
\newlength{\TUD@page@free}
\newcounter{TUD@page@free@lines}
+\dim_new:N \g__ptxcd_page_free_dim
+\int_new:N \g__ptxcd_free_lines_int
\renewcommand{\opening}[1]{%
\widowpenalty=100
\@PapersizeWarning
- \seq_gclear:N \g_TUDa_reffields_seq
+ \seq_gclear:N \g__ptxcd_reffields_seq
\renewcommand*{\@set@reffield}[1]{
\typeout{Field: ##1}%
\str_if_eq:nnT {##1}{datemarkerfield}{%
@@ -247,8 +282,8 @@
\setkomavar{date}{}%
}
\Ifkomavarempty{##1}{}{%
- \seq_gput_right:Nn \g_TUDa_reffields_seq {%
- \TUDa@set@reffield:n {##1}
+ \seq_gput_right:Nn \g__ptxcd_reffields_seq {%
+ \ptxcd_set_reffield:n {##1}
}%
}%
}
@@ -257,7 +292,7 @@
\removereffields
\@gen@firsthead
\@mkboth{\scr@fromname@var}{\scr@subject@var}%
- \thispagestyle{empty}\noindent
+ \thispagestyle{letter.first}\noindent
\Ifkomavarempty{toname}{\setkomavar{toname}{\mbox{}}}{}
\@foldmarks\@firstheadfootfield\@addrfield\@locfield
\ifdim\useplength{subjectvpos}=\z@\else\@subjfield\fi
@@ -266,47 +301,43 @@
\ifdim\useplength{subjectvpos}=\z@\if@subjafter\else\@subjfield\fi\fi
{\setparsizes{\z@}{\z@}{\z@ plus 1fil}\par@updaterelative#1\par}%
{\setlength{\@tempdima}{\baselineskip}%
- \addtolength{\@tempdima}{-\parskip}%
- \ifdim \@tempdima>\z@\vskip\@tempdima\fi}%
+ \addtolength{\@tempdima}{-\parskip}%
+ \ifdim \@tempdima>\z@\vskip\@tempdima\fi}%
\ifdim\useplength{subjectvpos}=\z@\if@subjafter\@subjfield\fi\fi
\setcounter{equation}{0}%
\@afterheading%
\@nobreaktrue
\@afterindentfalse
- \everypar{%
- \if@nobreak
- \@nobreakfalse\clubpenalty\@M
- \if@afterindent
- \else{\setbox\z@\lastbox}
+ \bool_if:NT \g__ptxcd_adjust_textwidth_bool {
+ \everypar{%
+ \if@nobreak
+ \@nobreakfalse\clubpenalty\@M
+ \if@afterindent
+ \else{\setbox\z@\lastbox}
+ \fi
+ \else
+ \clubpenalty\@clubpenalty
\fi
- \else
- \clubpenalty \@clubpenalty
- \fi
- %TODO: ifdum < 2 \baselineskip
- \ifnum\thepage=1%
- \TUD@page@free=-\pagegoal%
- \advance\TUD@page@free\pagetotal%
- \dim_compare:nTF {-\TUD@page@free>2\baselineskip}
- {
- \bool_if:NF \g_TUDaletter_logo_bool {
- \advance\TUD@page@free-.3\baselineskip
- }
- \divide\TUD@page@free\baselineskip%
- \c@TUD@page@free@lines=\TUD@page@free%
- \int_compare:nT {\value{TUD@page@free@lines}<0} {
- \hangafter=\value{TUD@page@free@lines}\hangindent=\c_TuDa_firstpage_extraindent_dim%
+ \ifnum\thepage=1%
+ \dim_gset:Nn \g__ptxcd_page_free_dim {-\pagegoal + \pagetotal}
+ \dim_compare:nTF {-\g__ptxcd_page_free_dim>2\baselineskip}
+ {
+ \int_gset:Nn \g__ptxcd_free_lines_int {\fp_eval:n {ceil(\g__ptxcd_page_free_dim/\baselineskip)}}
+ \int_compare:nT {\g__ptxcd_free_lines_int<0} {
+ \hangafter=\g__ptxcd_free_lines_int\hangindent=\c__ptxcd_firstpage_extraindent_dim%
+ }
+ } {
+ \dim_compare:nT {-\TUD@page@free>\baselineskip} {
+ \hangafter=-2\hangindent=\c__ptxcd_firstpage_extraindent_dim%
}
- } {
- \dim_compare:nT {-\TUD@page@free>\baselineskip} {
- \hangafter=-2\hangindent=\c_TuDa_firstpage_extraindent_dim%
}
- }
- \fi%
- }%
- \global\setlength{\linewidth}{\dim_eval:n {\c_TuDa_Linewidth_dim + \c_TuDa_firstpage_extraindent_dim}}
- \afterpage{
- \global\setlength{\linewidth}{\c_TuDa_Linewidth_dim}
- \widowpenalty=10000
+ \fi%
+ }%
+ \global\setlength{\linewidth}{\dim_eval:n {\c_ptxcd_Linewidth_dim + \c__ptxcd_firstpage_extraindent_dim}}
+ \afterpage{
+ \global\setlength{\linewidth}{\c_ptxcd_Linewidth_dim}
+ \widowpenalty=10000
+ }
}
}
@@ -314,27 +345,26 @@
\raggedbottom%
}
-\setkomafont{backaddress}{\accentfont\tiny\TUDa@use@premiumcolor@text\raisebox{\dimexpr-\totalheight+\ht\strutbox\relax}{\rule{\z@}{4mm}}}
-\setkomafont{pagenumber}{\tiny}
+\setkomafont{backaddress}{\accentfont\tiny\ptxcd_use_premiumcolor_text:\raisebox{\dimexpr-\totalheight+\ht\strutbox\relax}{\rule{\z@}{4mm}}}
\raggedbottom
-\int_new:N \l_TUDa_letter_lastpage_int
-\newcommand*{\TUDa@letterpagemark}{
+\int_new:N \l_ptxcd_letter_lastpage_int
+\cs_new:Nn \ptxcd_letterpagemark: {
%get lastpage for this letter if not already done
\int_compare:nTF {\value{page} = 1} {
- \bool_if:NTF \g_TUDa_firstpagenumber_bool
+ \bool_if:NTF \g__ptxcd_firstpagenumber_bool
{\bool_set_true:N \l_tmpa_bool}
{\bool_set_false:N \l_tmpa_bool}
}
{\bool_set_true:N \l_tmpa_bool}
\bool_if:NT \l_tmpa_bool {
- \int_if_exist:cF {c_TUDa_letter\thisletter _lastpage_int} {
+ \int_if_exist:cF {c_ptxcd_letter\thisletter _lastpage_int} {
\expandafter\ifx\csname r@\thisletter.lastpage\endcsname\relax
%warning -> rerun latex
- \int_const:cn {c_TUDa_letter\thisletter _lastpage_int} {0}
+ \int_const:cn {c_ptxcd_letter\thisletter _lastpage_int} {0}
\else
- \int_const:cn {c_TUDa_letter\thisletter _lastpage_int} {
+ \int_const:cn {c_ptxcd_letter\thisletter _lastpage_int} {
\cs_if_exist:NTF \hypersetup
{\exp_args:NNc \expandafter \@secondoffive { r@\thisletter.lastpage}}
{\exp_args:NNc \expandafter \use_ii:nn { r@\thisletter.lastpage}}
@@ -343,92 +373,84 @@
}
\usekomafont{pagenumber}\pagename\nobreakspace\thepage
\int_compare:nT {
- \int_use:c {c_TUDa_letter\thisletter _lastpage_int}
+ \int_use:c {c_ptxcd_letter\thisletter _lastpage_int}
> 1
- } {/\int_to_arabic:n{\int_use:c {c_TUDa_letter\thisletter _lastpage_int}}}
+ } {/\int_to_arabic:n{\int_use:c {c_ptxcd_letter\thisletter _lastpage_int}}}
}
}
-\setkomavar{nextfoot}{
- \parbox{\useplength{firstfootwidth}}{\usekomafont{pagefoot}
- \raggedleft\TuDa@LetterfootRule\par\TUDa@letterpagemark}
-}
-\setkomavar{firstfoot}{
- \usekomavar{nextfoot}
+\setkomavar{firstfoot}{\usekomavar{nextfoot}}
+
+\setkomavar{nextfoot}{%
+ \ifnum\@pageat>2
+ \parbox[c]{\layerwidth}{%
+ \ifcase\@pageat\or\or\or\raggedright\or\centering\or\raggedleft\fi
+ \strut\pagemark%
+ }%
+ \fi
}
-%pagestyle
-\RequirePackage{scrlayer}
-
-\bool_if:NTF \g_TUDaletter_logo_bool {
- \DeclareNewLayer[
- background,
- align=tl,
- hoffset=\useplength{firstheadhpos},
- voffset=\useplength{firstheadvpos},
- width=\box_wd:N \g_TUDaLetter_firsthead_box,
- height=\box_ht:N \g_TUDaLetter_firsthead_box,
- contents={\box_use:N \g_TUDaLetter_firsthead_box}
- ]{letter.head}
-}{
- \DeclareNewLayer[
- background,
- align=tl,
- hoffset=\useplength{firstheadhpos},
- voffset=\useplength{firstheadvpos},
- %TODO: replace leiste logo=?
- width=\box_wd:N \TuDa@LetterheadRule_box,
- height=\box_ht:N \TuDa@LetterheadRule_box,
- contents=\TuDa@LetterheadRule
- ]{letter.head}
+\cs_set_eq:NN \letterpagemark \ptxcd_letterpagemark:
+
+
+\bool_if:NT \g__ptxcd_letter_headrule_bool {
+ \bool_if:NTF \g__ptxcd_letter_logo_bool {
+ \setkomavar{nexthead}{\raisebox{\topskip}{\box_use:N \g_TUDaLetter_firsthead_box}}
+ }{
+ \setkomavar{nexthead}{\raisebox{\depth}{\ptxcd_LetterheadRule}}
+ }
}
-\DeclareNewLayer[
- background,
- align=tl,
- hoffset=\useplength{firstfoothpos},
- voffset=\useplength{firstfootvpos},
- width=\useplength{firstfootwidth},
- height=\baselineskip,
- contents={\raisebox{\ht\strutbox}{\parbox[t]{\layerwidth}{\usekomavar{nextfoot}}}}
-]{letter.foot}
-
-\RequirePackage{tikz}
-\DeclareNewPageStyleByLayers{TUDaletter}{
- letter.head, letter.foot.rule, letter.foot
+\newpairofpagestyles[letter]{TUDaLetter}{
+ \exp_args:Nx \KOMAoptions{
+ footwidth=\dimexpr\paperwidth-2\c_ptxcd_HeadMargin_dim \c_colon_str-\dim_eval:n {\c_ptxcd_HeadMargin_dim -1mm},
+ headwidth=\dimexpr\paperwidth-2\c_ptxcd_HeadMargin_dim \c_colon_str-\dim_eval:n {\c_ptxcd_HeadMargin_dim -1mm},
+ footsepline=.5\c_ptxcd_smallrule_dim,plainfootsepline
+ }
+ \ModifyLayer[voffset=\c_ptxcd_HeadMargin_dim,align=tl]{TUDaLetter.head.even}
+ \ModifyLayer[voffset=\c_ptxcd_HeadMargin_dim,align=tl]{TUDaLetter.head.odd}
+ \ModifyLayer[voffset=\c_ptxcd_HeadMargin_dim,align=tl]{TUDaLetter.head.oneside}
+ \ModifyLayer[voffset=\c_ptxcd_HeadMargin_dim,align=tl]{plain.TUDaLetter.head.even}
+ \ModifyLayer[voffset=\c_ptxcd_HeadMargin_dim,align=tl]{plain.TUDaLetter.head.odd}
+ \ModifyLayer[voffset=\c_ptxcd_HeadMargin_dim,align=tl]{plain.TUDaLetter.head.oneside}
+ \lehead{\usekomavar{nexthead}}%
+ \lohead{\usekomavar{nexthead}}%
+ \lefoot{\usekomavar{nextfoot}}%
+ \lofoot{\usekomavar{nextfoot}}%
}
-\DeclarePageStyleAlias{letter}{TUDaletter}
-\DeclarePageStyleAlias{plain.letter}{TUDaletter}
+\DeclarePageStyleByLayers{TUDaLetter.first}{TUDaLetter.foot.even,TUDaLetter.foot.odd,TUDaLetter.foot.oneside,TUDaLetter.foot.above.line}
+\pagestyle{TUDaLetter}
-\pagestyle{plain.letter}
+\DeclarePageStyleAlias{letter.first}{TUDaLetter.first}
+\def\letterpagestyle{TUDaLetter}
%pdfa
-\if_bool:N \g_TUDa@pdfa_bool
+\if_bool:N \g_ptxcd_pdfa_bool
\PassOptionsToPackage{a-2b}{pdfx}
\RequirePackage{pdfx}
%%hyperref
\hypersetup{hidelinks, unicode}
-\iow_new:N \TUDa@xmpdata_stream
-\tl_new:N \g_TUDa@xmp_title
-\tl_new:N \g_TUDa@xmp_author
+\iow_new:N \ptxcd_xmpdata_stream
+\tl_new:N \g_ptxcd_xmp_title
+\tl_new:N \g_ptxcd_xmp_author
-\cs_new:Nn \TUDa_pass_TitleData: {
- \prop_if_empty:NF \g_TUDa_MetaData_prop {
- \iow_open:Nn \TUDa@xmpdata_stream {\jobname.xmpdata}
+\cs_new:Nn \ptxcd_pass_TitleData: {
+ \prop_if_empty:NF \g_ptxcd_MetaData_prop {
+ \iow_open:Nn \ptxcd_xmpdata_stream {\jobname.xmpdata}
\begingroup
\def\newline{}
\def\\{}
\let\thanks\use_none:n
\cs_set:Npn \and {\exp_not:N \sep}
\use:c {pdfx@localcommands}
- \prop_map_function:NN \g_TUDa_MetaData_prop \TUDa_write_xmp_line:nn
+ \prop_map_function:NN \g_ptxcd_MetaData_prop \ptxcd_write_xmp_line:nn
\endgroup
- \iow_close:N \TUDa@xmpdata_stream
+ \iow_close:N \ptxcd_xmpdata_stream
}
}
-\cs_new:Nn \TUDa_write_xmp_line:nn {
+\cs_new:Nn \ptxcd_write_xmp_line:nn {
%Fallback test for older kernels
\cs_if_exist:NTF \str_uppercase:f {
\tl_set:Nx \l_tmpa_tl {
@@ -440,24 +462,24 @@
\tl_set:Nx \l_tmpa_tl {\tl_mixed_case:n {#1}}
}
\cs_if_exist:cTF {\l_tmpa_tl}{
- \iow_now:Nx \TUDa@xmpdata_stream {
+ \iow_now:Nx \ptxcd_xmpdata_stream {
\c_backslash_str \l_tmpa_tl {\exp_not:n {#2}}
}
}{
- \msg_error:nnn {TUDapub} {unknown-metadata} {#1}
+ \msg_error:nnn{tudaletter} {unknown-metadata} {#1}
}
}
-\bool_new:N \g_TUDa_pass_TitleData_bool
-\bool_gset_true:N \g_TUDa_pass_TitleData_bool
-\prop_new:N \g_TUDa_MetaData_prop
+\bool_new:N \g_ptxcd_pass_TitleData_bool
+\bool_gset_true:N \g_ptxcd_pass_TitleData_bool
+\prop_new:N \g_ptxcd_MetaData_prop
\newcommand*{\Metadata}[1]{
- \bool_gset_false:N \g_TUDa_pass_TitleData_bool
- \prop_gset_from_keyval:Nn \g_TUDa_MetaData_prop {#1}
+ \bool_gset_false:N \g_ptxcd_pass_TitleData_bool
+ \prop_gset_from_keyval:Nn \g_ptxcd_MetaData_prop {#1}
}
-\msg_new:nnnn {TUDapub} {unknown-metadata} {
+\msg_new:nnnn{tudaletter} {unknown-metadata} {
You~ used~ the~ #1~ metadata~ entry.\\
I~ don't~ know~ how~ to~ handle~ that.\\
It~ will~ be~ ignored.
@@ -486,11 +508,12 @@
\newkomavar{fromfunction}
-\bool_if:NT \g_TUDa_raggedright_bool {\AtBeginLetter{\RaggedRight}}
+\bool_if:NT \g__ptxcd_letter_raggedright_bool {\AtBeginLetter{\RaggedRight}}
%backwards compatibility for KOMA-Script
\cs_if_exist:NF \Ifkomavarempty{
\let\Ifkomavarempty\ifkomavarempty
}
+\file_if_exist_input:n {tuda\g_ptxcd_department_str.cfg}
\endinput
diff --git a/macros/latex/contrib/tuda-ci/tex/tudalettersize10pt.clo b/macros/latex/contrib/tuda-ci/tex/tudalettersize10pt.clo
index 6c58267307..831defc19a 100644
--- a/macros/latex/contrib/tuda-ci/tex/tudalettersize10pt.clo
+++ b/macros/latex/contrib/tuda-ci/tex/tudalettersize10pt.clo
@@ -1,4 +1,4 @@
-%% This is file `tudalettersize10pt.clo' version 2.11 (2020/06/12),
+%% This is file `tudalettersize10pt.clo' version 3.00 (2020/09/08),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -26,8 +26,8 @@
%%
%% ============================================================================
%%
-\def\fileversion{2.11}
-\def\filedate{2020/06/12}
+\def\fileversion{3.00}
+\def\filedate{2020/09/08}
%% This is file `tudalettersize10pt.clo' version 1.0 (2018/12/12),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
diff --git a/macros/latex/contrib/tuda-ci/tex/tudamecheng.cfg b/macros/latex/contrib/tuda-ci/tex/tudamecheng.cfg
new file mode 100644
index 0000000000..d3bf8ed08a
--- /dev/null
+++ b/macros/latex/contrib/tuda-ci/tex/tudamecheng.cfg
@@ -0,0 +1,263 @@
+%% This is file `tudamecheng.cfg' version 3.00 (2020/09/08),
+%% it is part of
+%% TUDa-CI -- Corporate Design for TU Darmstadt
+%% ----------------------------------------------------------------------------
+%%
+%% Copyright (C) 2018--2020 by Marei Peischl <marei@peitex.de>
+%%
+%% ============================================================================
+%% 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 (at your option) 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 Maintainers of this work are
+%% Marei Peischl <tuda-ci@peitex.de>
+%% Markus Lazanowski <latex@ce.tu-darmstadt.de>
+%%
+%% The development respository can be found at
+%% https://github.com/tudace/tuda_latex_templates
+%% Please use the issue tracker for feedback!
+%%
+%% ============================================================================
+%%
+\def\fileversion{3.00}
+\def\filedate{2020/09/08}
+\RequirePackage{expl3}
+\ProvidesExplFile{tudamecheng.cfg}
+{\filedate}{\fileversion}{Special Features the department of mechanical engineering of Darmstadt's Corporate Design (tuda-ci)}
+
+\RequirePackage{pgf}
+
+\cs_new:Nn \ptxcd_mecheng_arrow:N {
+ \begin{pgfpicture}
+ \pgfsetbaseline{0}
+ \pgfsetcolor{TUDa-Arrow}
+ \pgfsetrectcap
+ \str_if_eq:VnTF \c__ptxcd_base_str {leaflet}
+ {\pgfsetlinewidth{2\g_ptxcd_titlerule_dim}}
+ {\pgfsetlinewidth{2\c_ptxcd_smallrule_dim}}
+ \pgfpathmoveto{\pgfpointorigin}
+ \pgfpathlineto{\pgfpointpolar{174}{.05#1}}
+ \pgfpathlineto{\pgfpointpolar{186}{.05#1}}
+ \pgfpathclose
+ \pgfusepath{fill}
+ \pgfpathmoveto{\pgfpoint{-.04#1}{0}}
+ \pgfpathlineto{\pgfpoint{-#1}{0}}
+ \pgfusepath{stroke}
+ \end{pgfpicture}
+}
+
+\NewDocumentCommand{\MechEngArrow}{sm}{
+ \IfBooleanT{#1}{\begingroup\colorlet{TUDa-Arrow}{.}}
+ \dim_set:Nn \l_tmpa_dim {#2}\ptxcd_mecheng_arrow:N \l_tmpa_dim
+ \IfBooleanT{#1}{\endgroup}
+}
+
+\box_new:N \g_ptxcd_footline_box
+\hbox_gset:Nn \g_ptxcd_footline_box {\MechEngArrow{\textwidth}}
+
+
+\RenewDocumentCommand{\ptxcd_makefootrule}{som}{
+ \keys_set:nn {ptxcd/rules} {
+ width= \textwidth
+ }
+ \IfNoValueF {#2} {\keys_set:nn {ptxcd/rules}{#2}}
+ \IfBooleanF {#1} {\box_new:c {#3_box}}
+ \IfBooleanTF {#1} \use_none:n \hbox_gset:cn {#3_box} {
+ \raisebox{-\height}{\MechEngArrow{\l_ptxcd_headrule_width_dim}}
+ }
+ \IfBooleanF{#1} {\cs_new:cpn {#3} {\box_use:c {#3_box}}}
+}
+
+
+\str_if_eq:VnT \c__ptxcd_base_str {pub} {
+ \cs_set:Nn \ptxcd_setup_sponsor_box: {
+ \hbox_gset:Nn \g_ptxcd_sponsor_box {
+ \def\height{\dimexpr.8\c_ptxcd_logoheight_dim\relax}
+ \parbox[t]{\textwidth}{
+ \bool_if:nF {\seq_if_empty_p:N \g_ptxcd_sponsors_seq && \tl_if_empty_p:N \@sponsors} {
+ \rule{\linewidth}{\g_ptxcd_titlerule_dim}\par\nointerlineskip
+ \vspace{\dimexpr.1\c_ptxcd_logoheight_dim-\c_ptxcd_smallrule_dim}
+ }
+ \seq_use:Nn \g_ptxcd_sponsors_seq {\hfill}
+ \ifhmode
+ \par
+ \nointerlineskip
+ \addvspace{.1\c_ptxcd_logoheight_dim}
+ \fi
+ \ifx\@sponsors\@empty
+ \else
+ \@sponsors\par
+ \nointerlineskip\addvspace{.1\c_ptxcd_logoheight_dim}
+ \fi
+
+ \smash{\MechEngArrow{\linewidth}}
+ \\[\c_ptxcd_rulesep_dim]
+ \usekomafont{pagefoot}\includegraphics[width=\c_ptxcd_logoheight_dim]{\g_ptxcd_departmentlogo_tl}
+ }
+ }
+ }
+
+ \renewcommand*{\sectionformat}{\color{TUDa-Primary2}\thesection\autodot\enskip}
+
+ \if@titlepage
+ \titlehead{\rule{0pt}{\c_ptxcd_logoheight_dim}}
+ \fi
+}
+
+\str_case:VnT \c__ptxcd_base_str {
+ {pub} {}
+ {exercise} {}
+} {
+
+ \addtokomafont{footsepline}{\color{accentcolor}}
+
+ \newpairofpagestyles[TUDa.\c__ptxcd_base_str]{TUDa.mecheng}{
+ \KOMAoptions{plainfootsepline,footsepline=5pt}
+ \ptxcd_makeheadrule[color=TUDa-Primary1, width=\sls@headwidth]{ptxcd_headrule}
+
+ \ModifyLayer[
+ contents=\smash{\ptxcd_headrule}
+ ]{TUDa.mecheng.head.above.line}
+ \ModifyLayer[
+ contents=\smash{\ptxcd_headrule}
+ ]{plain.TUDa.mecheng.head.above.line}
+
+
+ \ModifyLayer[
+ contents={
+ \dim_compare:nF {\box_wd:N \g_ptxcd_footline_box=\layerwidth} {
+ \hbox_gset:Nn \g_ptxcd_footline_box {\MechEngArrow{\layerwidth}}
+ }
+ \smash{\box_use:N \g_ptxcd_footline_box}
+ }
+ ]{TUDa.mecheng.foot.above.line}
+
+ \ModifyLayer[
+ contents={
+ \dim_compare:nF {\box_wd:N \g_ptxcd_footline_box=\layerwidth} {
+ \hbox_gset:Nn \g_ptxcd_footline_box {\MechEngArrow{\layerwidth}}
+ }
+ \smash{\box_use:N \g_ptxcd_footline_box}
+ }
+ ]{plain.TUDa.mecheng.foot.above.line}
+
+ \clearpairofpagestyles
+ \cfoot[\pagemark]{\pagemark}
+ \tl_if_empty:NF \g_ptxcd_departmentlogo_tl {
+ \lefoot[{\raisebox{-\height}[0pt][0pt]{\includegraphics[width=\c_ptxcd_logoheight_dim]{\g_ptxcd_departmentlogo_tl}}}]{\raisebox{-\height}[0pt][0pt]{\includegraphics[width=\c_ptxcd_logoheight_dim]{\g_ptxcd_departmentlogo_tl}}}
+ \lofoot[{\raisebox{-\height}[0pt][0pt]{\includegraphics[width=\c_ptxcd_logoheight_dim]{\g_ptxcd_departmentlogo_tl}}}]{\raisebox{-\height}[0pt][0pt]{\includegraphics[width=\c_ptxcd_logoheight_dim]{\g_ptxcd_departmentlogo_tl}}}
+ }
+ }
+ \DeclarePageStyleAlias{TUDa}{TUDa.mecheng}
+ \DeclarePageStyleAlias{plain.TUDa}{plain.TUDa.mecheng}
+ \pagestyle{TUDa}
+}
+
+
+\str_if_eq:VnT \c__ptxcd_base_str {sciposter} {
+ \cs_set:Nn \__ptxcd_typeset_footer: {
+ \coordinate(lastpos) at (bottomright);
+ \tl_if_empty:NF \g_ptxcd_poster_qrcode_tl
+ {
+ \node[anchor=south~east, inner~sep=\z@] (qrcode)at (lastpos)
+ {
+ \exp_args:NnV \use:n {\qrcode[height=\dim_use:N \g_ptxcd_footheight_dim]}\g_ptxcd_poster_qrcode_tl
+ };
+ \coordinate (lastpos) at (qrcode.south~west);
+ }
+ \box_if_empty:NF \g_ptxcd_footergraphics_box {
+ \node[anchor=south~east, inner~sep=\z@] at (lastpos) {
+ \accentfont
+ \box_use:N \g_ptxcd_footergraphics_box
+ };
+ }
+ \node[anchor=south~west,inner~sep=\z@] (footerarrow) at ([yshift=\g_ptxcd_footheight_dim]bottomleft) {\MechEngArrow{\contentwidth}};
+ \node[anchor=north~west,inner~sep=\z@] (departmentlogo) at ([yshift=\g_ptxcd_footheight_dim]bottomleft)
+ {\includegraphics[width=\dimexpr2\linewidth/7]{\g_ptxcd_departmentlogo_tl}};
+ \node[anchor=south~west,inner~sep=\z@] (infofooter) at (footerarrow.north~west) {
+ \parbox{\contentwidth}{
+ \accentfont\small\g_ptxcd_poster_foot_tl
+ \par\medskip
+ \let\footnotetext\ptxcd_title@footnote
+ \g_ptxcd_thanks_tl}
+ };
+ }
+}
+
+\str_if_eq:VnT \c__ptxcd_base_str {poster} {
+ \ModifyLayer[
+ clone=TUDa.poster.qrcode,
+ align=bl,
+ hoffset=\g_ptxcd_margin_dim,
+ width=\paperwidth-2\g_ptxcd_margin_dim,
+ height=\g_ptxcd_footheight_dim,
+ contents={
+ \usekomafont{pagefoot}
+ \bool_if:NTF \g_ptxcd_poster_foot_bool {
+ \put(0,\LenToUnit{\g_ptxcd_qrcode_dim+\g_ptxcd_footheight_dim}){\rlap{\rule{\dimexpr\paperwidth-2\g_ptxcd_margin_dim}{.5\c_ptxcd_smallrule_dim}}}
+ \put(0,\LenToUnit{\g_ptxcd_qrcode_dim+.5\g_ptxcd_footheight_dim}) {
+ \parbox[c][\g_ptxcd_footheight_dim][c]{\layerwidth}{\strut\g_ptxcd_poster_foot_tl\strut}}
+ \put(0,\LenToUnit{1.2\g_ptxcd_qrcode_dim}){\rlap{\ptxcd_makefootrule*[width=\dimexpr\paperwidth-2\g_ptxcd_margin_dim, color=identbarcolor]{TUDa@footrule}}}
+ \putLL{
+ \includegraphics[width=\dimexpr2\linewidth/7]{\g_ptxcd_departmentlogo_tl}
+ }
+ }{
+ \put(0,\LenToUnit{1.2\g_ptxcd_qrcode_dim}){\rlap{\ptxcd_makefootrule*[width=\dimexpr\paperwidth-2\g_ptxcd_margin_dim, color=identbarcolor]{TUDa@footrule}}}
+ \putLL{
+ \includegraphics[width=\dimexpr2\linewidth/7]{\g_ptxcd_departmentlogo_tl}
+ }
+ }
+ }
+ ]{TUDa.poster.footer}
+
+ \dim_set:Nn \g_ptxcd_footheight_dim {\dim_max:nn {2\g_ptxcd_footheight_dim} {1.5\baselineskip}}
+ \geometry{bottom=\dim_eval:n {\g_ptxcd_footheight_dim+\footskip+\g_ptxcd_margin_dim}}
+}
+
+\str_if_eq:VnT \c__ptxcd_base_str {letter} {
+ \setkomavar{nextfoot}{
+ \raisebox{-\height}[0pt][0pt]{
+ \parbox{\useplength{firstfootwidth}}{
+ \usekomafont{pagefoot}
+ \includegraphics[width=1.4\c_ptxcd_logoheight_dim]{\g_ptxcd_departmentlogo_tl}\\
+ \MechEngArrow{\l_ptxcd_headrule_width_dim}
+ }
+ }
+ }
+
+ \setkomavar{nexthead}{}
+ \newpairofpagestyles[TUDaLetter]{TUDaLetter.mecheng}{
+ \KOMAoptions{footsepline=false,pagenumber=topright}
+ \clearpairofpagestyles
+ \lehead{\usekomavar{nexthead}}%
+ \lohead{\usekomavar{nexthead}}%
+ \lefoot{\usekomavar{nextfoot}}%
+ \lofoot{\usekomavar{nextfoot}}%
+ \rehead[\pagemark]{\pagemark}
+ \rohead[\pagemark]{\pagemark}
+ }
+
+ \DeclarePageStyleByLayers{TUDaLetter.mecheng.first}{TUDaLetter.mecheng.foot.even,TUDaLetter.mecheng.foot.odd,TUDaLetter.mecheng.foot.oneside,TUDaLetter.mecheng.foot.above.line}
+ \DeclarePageStyleAlias{letter.first}{TUDaLetter.mecheng.first}
+
+ \def\letterpagestyle{TUDaLetter.mecheng}
+ \geometry{bottom=\dimexpr\c_ptxcd_BottomMargin_dim+10mm}
+}
+
+\str_if_eq:VnT \c__ptxcd_base_str {leaflet} {
+ \ModifyLayer[
+ contents={\raisebox{-\height}[0pt][0pt]{\parbox{\layerwidth}{
+ \leavevmode\box_use:N \ptxcd_footrule_box\\[\c_ptxcd_rulesep_dim]
+ \includegraphics[width=\c_ptxcd_logoheight_dim]{\g_ptxcd_departmentlogo_tl}
+ }}}
+ ]{TUDa.flyer.footline}
+}
+
+\endinput \ No newline at end of file
diff --git a/macros/latex/contrib/tuda-ci/tex/tudaposter.cls b/macros/latex/contrib/tuda-ci/tex/tudaposter.cls
index 403abef8e7..81581aa1bf 100644
--- a/macros/latex/contrib/tuda-ci/tex/tudaposter.cls
+++ b/macros/latex/contrib/tuda-ci/tex/tudaposter.cls
@@ -1,4 +1,4 @@
-%% This is file `tudaposter.cls' version 2.11 (2020/06/12),
+%% This is file `tudaposter.cls' version 3.00 (2020/09/08),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -26,52 +26,55 @@
%%
%% ============================================================================
%%
-\def\fileversion{2.11}
-\def\filedate{2020/06/12}
+\def\fileversion{3.00}
+\def\filedate{2020/09/08}
\NeedsTeXFormat{LaTeX2e}
\RequirePackage{expl3}
\ProvidesExplPackage{tudaposter}{\filedate}{\fileversion}{Poster Layouts for the Corporate Design of TU Darmstadt}
\RequirePackage{l3keys2e}
-\bool_new:N \g_TUDa_logo@inhead_bool
-\dim_new:N \g_TUDa_margin_dim
-\int_new:N \g_TUDa_paper_int
-\int_new:N \g_TUDa_postertype_int
+\bool_new:N \g_ptxcd_logo_inhead_bool
+\dim_new:N \g_ptxcd_margin_dim
+\int_new:N \g_ptxcd_paper_int
+\int_new:N \g_ptxcd_postertype_int
+\str_new:N \g_ptxcd_department_str
-\keys_define:nn {TUDa/poster} {
+\str_const:Nn \c__ptxcd_base_str {poster}
+
+\keys_define:nn {ptxcd/poster} {
accentcolor .code:n = {\PassOptionsToPackage{accent=#1}{tudacolors}},
color .code:n = {\PassOptionsToPackage{color=#1}{tudacolors}},
textaccentcolor .code:n = {\PassOptionsToPackage{textaccent=#1}{tudacolors}},
identbarcolor .code:n = {\PassOptionsToPackage{identbar=#1}{tudacolors}},
logo .choice:,
- logo / head .code:n = {\bool_gset_true:N \g_TUDa_logo@inhead_bool},
- logo / body .code:n = {\bool_gset_false:N \g_TUDa_logo@inhead_bool},
- logo / top .code:n = {\bool_gset_true:N \g_TUDa_logo@inhead_bool},
- logo / bottom .code:n = {\bool_gset_false:N \g_TUDa_logo@inhead_bool},
+ logo / head .code:n = {\bool_gset_true:N \g_ptxcd_logo_inhead_bool},
+ logo / body .code:n = {\bool_gset_false:N \g_ptxcd_logo_inhead_bool},
+ logo / top .code:n = {\bool_gset_true:N \g_ptxcd_logo_inhead_bool},
+ logo / bottom .code:n = {\bool_gset_false:N \g_ptxcd_logo_inhead_bool},
logo .initial:n = {head},
- footer .bool_gset:N = \g_TUDa_poster_foot_bool,
+ footer .bool_gset:N = \g_ptxcd_poster_foot_bool,
footer .default:n = true,
footer .initial:n = false,
- footheight .dim_gset:N = \g_TUDa_footheight_dim,
+ footheight .dim_gset:N = \g_ptxcd_footheight_dim,
paper .choices:nn = {a0,a1,a2,a3,a4}{
- \int_gset_eq:NN \g_TUDa_paper_int \l_keys_choice_int
+ \int_gset_eq:NN \g_ptxcd_paper_int \l_keys_choice_int
\PassOptionsToPackage{paper=\l_keys_choice_tl}{tudarules}
- \tl_gset_eq:NN \g_TUDa_paper_tl \l_keys_choice_tl
+ \tl_gset_eq:NN \g_ptxcd_paper_tl \l_keys_choice_tl
},
fontsize .choice:,
- fontsize / auto .code:n = \tl_gclear:N \g_TUDa_fontsize_tl,
- fontsize / unknown .code:n = {\@defaultunits\@tempdima#1pt\relax\@nnil \tl_gset:Nx \g_TUDa_fontsize_tl {\the\@tempdima}},
+ fontsize / auto .code:n = \tl_gclear:N \g_ptxcd_fontsize_tl,
+ fontsize / unknown .code:n = {\@defaultunits\@tempdima#1pt\relax\@nnil \tl_gset:Nx \g_ptxcd_fontsize_tl {\the\@tempdima}},
fontsize .initial:n = auto,
- logofile .tl_gset:N = \g_TUDa_logofile_tl,
+ logofile .tl_gset:N = \g_ptxcd_logofile_tl,
logofile .initial:n = tuda_logo,
type .choice:,
type / default .code:n = {
- \int_gset:Nn \g_TUDa_postertype_int {1}
+ \int_gset:Nn \g_ptxcd_postertype_int {1}
},
type / announcement .code:n = {
- \int_gset:Nn \g_TUDa_postertype_int {2}
- \keys_set:nn {TUDa/poster}{
+ \int_gset:Nn \g_ptxcd_postertype_int {2}
+ \keys_set:nn {ptxcd/poster}{
marginpar=true,
indenttext=false,%allow overwrite - check default
logo=head,
@@ -80,25 +83,36 @@
}
},
type .initial:n = default,
- indenttext .bool_gset:N = \g_TUDa_indenttext_bool,
+ indenttext .bool_gset:N = \g_ptxcd_indenttext_bool,
indenttext .initial:n = false,
indenttext .default:n = true,
- marginpar .bool_gset:N = \g_TUDa_marginpar_bool,
+ marginpar .bool_gset:N = \g_ptxcd_marginpar_bool,
marginpar / auto .meta:n = {marginpar = true} ,
marginpar .default:n = true,
marginpar .initial:n = false,
title .choice:,
title / default .meta:n = {title=large},
- title / large .code:n = \bool_gset_false:N \g_TUDa_smalltitle_bool,
- title / small .code:n = \bool_gset_true:N \g_TUDa_smalltitle_bool,
+ title / large .code:n = \bool_gset_false:N \g_ptxcd_smalltitle_bool,
+ title / small .code:n = \bool_gset_true:N \g_ptxcd_smalltitle_bool,
title .initial:n = default,
- colorsubtitle .bool_gset:N = \g_TUDa_colorsubtitle_bool,
+ colorback .bool_gset:N = \g_ptxcd_colorback_bool,
+ colorback .initial:n = true,
+ colorsubtitle .bool_gset:N = \g_ptxcd_colorsubtitle_bool,
colorsubtitle .default:n = true,
colorsubtitle .initial:n = false,
+ department .choice:,
+ department / default .code:n = \str_gset:Nn \g_ptxcd_department_str {default},
+ department / mecheng .code:n = {
+ \str_gset:Nn \g_ptxcd_department_str {mecheng}
+ \keys_set:nn {ptxcd/poster} {colorback=false, departmentlogofile=tuda_maschinenbau_logo}
+ },
+ department .initial:n = default,
+ mecheng .meta:n = {department=mecheng},
+ departmentlogofile .tl_gset:N = \g_ptxcd_departmentlogo_tl,
+ departmentlogofile .initial:n =,
}
-
-\ProcessKeysOptions{TUDa/poster}
+\ProcessKeysOptions{ptxcd/poster}
\ExplSyntaxOff
\LoadClass[parskip=half-]{scrartcl}
@@ -106,32 +120,34 @@
\RequirePackage{scrlayer-notecolumn}
\ExplSyntaxOn
-\tl_if_empty:NT \g_TUDa_paper_tl {\keys_set:nn {TUDa/poster} {paper=a0}}
+\tl_if_empty:NT \g_ptxcd_paper_tl {\keys_set:nn {ptxcd/poster} {paper=a0}}
-\bool_if:NTF \g_TUDa_smalltitle_bool {
- \file_input:n {tuda-a\int_use:N \g_TUDa_paper_int paper.clo}
- \TUDa_setup_title_sizes:
- \file_input:n {tuda-a\int_use:N \g_TUDa_paper_int paper.clo}
- \TUDa_setup_base_sizes:
+\bool_if:NTF \g_ptxcd_smalltitle_bool {
+ \file_input:n {tuda-a\int_use:N \g_ptxcd_paper_int paper.clo}
+ \ptxcd_setup_title_sizes:
+ \file_input:n {tuda-a\int_use:N \g_ptxcd_paper_int paper.clo}
+ \ptxcd_setup_base_sizes:
}{
- \int_gdecr:N \g_TUDa_paper_int
- \file_input:n {tuda-a\int_use:N \g_TUDa_paper_int paper.clo}
- \TUDa_setup_title_sizes:
- \TUDa_setup_base_sizes:
+ \int_gdecr:N \g_ptxcd_paper_int
+ \file_input:n {tuda-a\int_use:N \g_ptxcd_paper_int paper.clo}
+ \ptxcd_setup_title_sizes:
+ \ptxcd_setup_base_sizes:
}
-\setkomafont{title}{\color{textonaccentcolor}\expandafter\fontsize\TUDa_title_fontsize:\selectfont}
-\setkomafont{subtitle}{\expandafter\fontsize\TUDa_titleinfo_fontsize:\selectfont}
-\newkomafont{titleinfo}{\expandafter\fontsize\TUDa_titleinfo_fontsize:\selectfont}
+\setkomafont{title}{
+ \bool_if:NT \g_ptxcd_colorback_bool
+ {\color{textonaccentcolor}}\expandafter\fontsize\ptxcd_title_fontsize:\selectfont}
+\setkomafont{subtitle}{\expandafter\fontsize\ptxcd_titleinfo_fontsize:\selectfont}
+\newkomafont{titleinfo}{\expandafter\fontsize\ptxcd_titleinfo_fontsize:\selectfont}
\ExplSyntaxOff
-\KOMAoptions{fontsize=\csname g_TUDa_fontsize_tl\endcsname}
+\KOMAoptions{fontsize=\csname g_ptxcd_fontsize_tl\endcsname}
\ExplSyntaxOn
\RequirePackage{tudafonts}
\renewcommand*{\familydefault}{\sfdefault}
-\RequirePackage[paper=\g_TUDa_paper_tl,mode=tikz]{tudarules}
+\RequirePackage[paper=\g_ptxcd_paper_tl,mode=tikz]{tudarules}
\RequirePackage{tudacolors}
\RequirePackage{qrcode}
@@ -141,14 +157,12 @@
\newlength{\contentwidth}
-\setlength{\contentwidth}{\dimexpr\paperwidth-2\g_TUDa_margin_dim}
+\setlength{\contentwidth}{\dimexpr\paperwidth-2\g_ptxcd_margin_dim}
-\TUDa@makeheadrule[width=\contentwidth, color=identbarcolor]{TUDa@posterrule}
-
-\TUDa@makefootrule[width=\contentwidth, color=identbarcolor]{TUDa@smallrule}
+\ptxcd_makeheadrule[width=\contentwidth, color=identbarcolor]{ptxcd_headrule}
%%%%%%%%%%%%%%%%%%%%%%
-\int_case:nn {\g_TUDa_postertype_int}
+\int_case:nn {\g_ptxcd_postertype_int}
{
{1} {}
{2} {
@@ -158,140 +172,130 @@
%%%%%%%%%%%%%%%%%%%%%%
%marginpar option
-\dim_new:N \g_TUDa_marginpar_dim
+\dim_new:N \g_ptxcd_marginpar_dim
%%%%%%%%%%%%%%%%%%%%%%
-\dim_new:N \g_TUDa_titleindent_dim
+\dim_new:N \g_ptxcd_titleindent_dim
\begingroup
-\expandafter\fontsize\TUDa_title_fontsize:\selectfont
- \dim_gset:Nn \g_TUDa_titleindent_dim {.5ex}
+\expandafter\fontsize\ptxcd_title_fontsize:\selectfont
+ \dim_gset:Nn \g_ptxcd_titleindent_dim {.5ex}
\endgroup
-\dim_new:N \g_TUDa_columnSep_dim
-\dim_gset:Nn \g_TUDa_columnSep_dim {1em}
+\dim_new:N \g_ptxcd_columnSep_dim
+\dim_gset:Nn \g_ptxcd_columnSep_dim {1em}
\RequirePackage{geometry}
\geometry{
- margin= \g_TUDa_margin_dim,
+ margin= \g_ptxcd_margin_dim,
hmargin = \dim_eval:n {
- \g_TUDa_margin_dim +
- \bool_if:NTF \g_TUDa_indenttext_bool
- {\g_TUDa_titleindent_dim} {0pt}
+ \g_ptxcd_margin_dim +
+ \bool_if:NTF \g_ptxcd_indenttext_bool
+ {\g_ptxcd_titleindent_dim} {0pt}
},
top=\dim_eval:n {
- \box_ht:N \TUDa@posterrule_box + \box_dp:N \TUDa@posterrule_box
- + .5\c_TUDa_logoheight_dim
- +\g_TUDa_margin_dim}
+ \box_ht:N \ptxcd_headrule_box + \box_dp:N \ptxcd_headrule_box
+ + .5\c_ptxcd_logoheight_dim
+ +\g_ptxcd_margin_dim}
}
-\bool_if:NTF \g_TUDa_marginpar_bool {
- \dim_gset:Nn \g_TUDa_marginpar_dim {2.2\c_TUDa_logoheight_dim}
+\bool_if:NTF \g_ptxcd_marginpar_bool {
+ \dim_gset:Nn \g_ptxcd_marginpar_dim {2.2\c_ptxcd_logoheight_dim}
\geometry{
- includemp, marginpar=\g_TUDa_marginpar_dim, marginparsep=\g_TUDa_columnSep_dim,
+ includemp, marginpar=\g_ptxcd_marginpar_dim, marginparsep=\g_ptxcd_columnSep_dim,
right = \dim_eval:n {
- \g_TUDa_margin_dim +
- \bool_if:nTF {\g_TUDa_indenttext_bool && !\g_TUDa_marginpar_bool}
- {\g_TUDa_titleindent_dim} {0pt}
+ \g_ptxcd_margin_dim +
+ \bool_if:nTF {\g_ptxcd_indenttext_bool && !\g_ptxcd_marginpar_bool}
+ {\g_ptxcd_titleindent_dim} {0pt}
},
}
\KOMAoptions{mpinclude}
}{
- \dim_gzero:N \g_TUDa_marginpar_dim
+ \dim_gzero:N \g_ptxcd_marginpar_dim
\geometry{
nomarginpar,
right = \dim_eval:n {
- \bool_if:NT \g_TUDa_indenttext_bool
- {\g_TUDa_titleindent_dim}
- + \g_TUDa_margin_dim
+ \bool_if:NT \g_ptxcd_indenttext_bool
+ {\g_ptxcd_titleindent_dim}
+ + \g_ptxcd_margin_dim
},
}
\KOMAoptions{mpinclude=false}
}
-\bool_if:NT \g_TUDa_poster_foot_bool {
- \dim_compare:nT {\g_TUDa_footheight_dim = 0pt} {
- \dim_set:Nn \g_TUDa_footheight_dim
+\bool_if:NT \g_ptxcd_poster_foot_bool {
+ \dim_compare:nT {\g_ptxcd_footheight_dim = 0pt} {
+ \dim_set:Nn \g_ptxcd_footheight_dim
{1.5\baselineskip}
}
- \geometry{bottom=\dim_eval:n {\g_TUDa_footheight_dim+\footskip+\g_TUDa_margin_dim}}
+ \geometry{bottom=\dim_eval:n {\g_ptxcd_footheight_dim+\footskip+\g_ptxcd_margin_dim}}
}
%%%%%%%%%%%%%%%%%%%%%%
-\dim_new:N \g_TUDa_qrcode_dim
-\dim_gset:Nn \g_TUDa_qrcode_dim {.7\c_TUDa_logoheight_dim}
+\dim_new:N \g_ptxcd_qrcode_dim
+\dim_gset:Nn \g_ptxcd_qrcode_dim {.7\c_ptxcd_logoheight_dim}
\DeclareNewLayer[
background,
align=br,
- width=\g_TUDa_qrcode_dim,
- height=\g_TUDa_qrcode_dim,
- hoffset=\paperwidth-\g_TUDa_margin_dim,
- voffset=\paperheight-\g_TUDa_margin_dim,
+ width=\g_ptxcd_qrcode_dim,
+ height=\g_ptxcd_qrcode_dim,
+ hoffset=\paperwidth-\g_ptxcd_margin_dim,
+ voffset=\paperheight-\g_ptxcd_margin_dim,
mode=picture,
contents={%
- \tl_if_empty:NF \g_TUDa_poster_qrcode_tl {
- \let\width\g_TUDa_qrcode_dim
- \let\height\g_TUDa_qrcode_dim
- \g_TUDa_poster_qrcode_tl
+ \tl_if_empty:NF \g_ptxcd_poster_qrcode_tl {
+ \let\width\g_ptxcd_qrcode_dim
+ \let\height\g_ptxcd_qrcode_dim
+ \g_ptxcd_poster_qrcode_tl
}
}
]{TUDa.poster.qrcode}
-\bool_if:NTF \g_TUDa_poster_foot_bool {
- \DeclareNewLayer[
+
+\DeclareNewLayer[
clone=TUDa.poster.qrcode,
align=bl,
- hoffset=\g_TUDa_margin_dim,
- width=\paperwidth-2\g_TUDa_margin_dim,
- height=\g_TUDa_footheight_dim,
+ hoffset=\g_ptxcd_margin_dim,
+ width=\paperwidth-2\g_ptxcd_margin_dim,
+ height=\g_ptxcd_footheight_dim,
contents={
- \putUL{\rule{\layerwidth}{.5\c_TUDa_smallrule_dim}}
- \put(0,0) {
- \parbox[b][\g_TUDa_footheight_dim][c]{\layerwidth}{\strut\g_TUDa_poster_foot_tl\strut}}
- \putLL{\rule{\layerwidth}{.5\c_TUDa_smallrule_dim}}
+ \bool_if:NTF \g_ptxcd_poster_foot_bool {
+ \putUL{\rule{\layerwidth}{\g_ptxcd_titlerule_dim}}
+ \put(0,0) {\parbox[b][\g_ptxcd_footheight_dim][c]{\layerwidth}{\strut\g_ptxcd_poster_foot_tl\strut}}
+ \putLL{\rule{\layerwidth}{\g_ptxcd_titlerule_dim}}
+ }{
+ \smash{\rule{\layerwidth}{\g_ptxcd_titlerule_dim}}
+ }
}
- ]{TUDa.poster.footer}
-}{
- \DeclareNewLayer[
- clone=TUDa.poster.qrcode,
- align=bl,
- hoffset=\g_TUDa_margin_dim,
- width=\paperwidth-2\g_TUDa_margin_dim,
- height=0pt,
- contents={\smash{\rule{\layerwidth}{.5\c_TUDa_smallrule_dim}}}
- ]{TUDa.poster.footer}
-}
+]{TUDa.poster.footer}
\DeclareNewLayer[
background,mode=picture,
- width=\paperwidth-2\g_TUDa_margin_dim,
- hoffset=\g_TUDa_margin_dim,
- voffset=\g_TUDa_margin_dim+\box_ht:N \TUDa@posterrule_box + \box_dp:N \TUDa@posterrule_box,
- contents={\color{accentcolor}\rule{\layerwidth}{\layerheight}}
+ width=\paperwidth-2\g_ptxcd_margin_dim,
+ hoffset=\g_ptxcd_margin_dim,
+ voffset=\g_ptxcd_margin_dim+\box_ht:N \ptxcd_headrule_box + \box_dp:N \ptxcd_headrule_box,
+ contents=\bool_if:NT \g_ptxcd_colorback_bool {\color{accentcolor}\rule{\layerwidth}{\layerheight}},
]{TUDa.poster.background}
\DeclareNewLayer[
textarea,
foreground,
align=tr,
- hoffset=\paperwidth-\g_TUDa_margin_dim,
- width=2.2\c_TUDa_logoheight_dim,
+ hoffset=\paperwidth-\g_ptxcd_margin_dim,
+ width=2.2\c_ptxcd_logoheight_dim,
height=.5\textheight,
- contents={\box_use:N \g_TUDa_title_info_box}
+ contents={\box_use:N \g_ptxcd_title_info_box}
]{TUDa.poster.logo}
\DeclareNewLayer[
clone=TUDa.poster.background,
-% textarea,
align=tl,
- voffset=\g_TUDa_margin_dim,
- height=\box_ht:N \TUDa@posterrule_box + \box_dp:N \TUDa@posterrule_box,
+ voffset=\g_ptxcd_margin_dim,
+ height=\box_ht:N \ptxcd_headrule_box + \box_dp:N \ptxcd_headrule_box,
mode=picture,
- contents={
- \box_use:N \TUDa@posterrule_box
- }
+ contents={\box_use:N \ptxcd_headrule_box}
]{TUDa.poster.rule}
\DeclareNewLayer[
@@ -303,8 +307,8 @@
\pagestyle{TUDa.poster}
-\dim_new:N \g_TUDa_titlegraphic_max_height_dim
-\dim_new:N \g_TUDa_titleback_dim
+\dim_new:N \g_ptxcd_titlegraphic_max_height_dim
+\dim_new:N \g_ptxcd_titleback_dim
\newcommand*{\titleinfo}[1]{\def\@titleinfo{#1}}
\titleinfo{}
@@ -312,88 +316,90 @@
\renewcommand*{\maketitle}{
\begingroup
\setparsizes{\z@}{\z@}{\z@\@plus 1fil}\par@updaterelative
- \bool_if:NT \g_TUDa_marginpar_bool
- {\setlength{\linewidth}{\dim_eval:n {\textwidth+\g_TUDa_marginpar_dim + \marginparsep}}}
- \vbox_gset:Nn \g_TUDa_title_box
+ \bool_if:NT \g_ptxcd_marginpar_bool
+ {\setlength{\linewidth}{\dim_eval:n {\textwidth+\g_ptxcd_marginpar_dim + \marginparsep}}}
+ \vbox_gset:Nn \g_ptxcd_title_box
{
\usesizeofkomafont{title}
\parbox[t]{\linewidth}{
- \bool_if:NT \g_TUDa_smalltitle_bool {\raisebox{
- \dim_max:nn {0pt} {1.5\c_TUDa_logoheight_dim - \height}
+ \bool_if:NT \g_ptxcd_smalltitle_bool {\raisebox{
+ \dim_max:nn {0pt} {1.5\c_ptxcd_logoheight_dim - \height}
}}
{
- \begin{minipage}[b]{\bool_if:NT \g_TUDa_logo@inhead_bool {.75}\linewidth}
+ \begin{minipage}[b]{\bool_if:NT \g_ptxcd_logo_inhead_bool {.75}\linewidth}
\leavevmode\par\nointerlineskip
- \bool_if:NF \g_TUDa_indenttext_bool {\begin{addmargin}{\g_TUDa_titleindent_dim }}
+ \bool_if:NF \g_ptxcd_indenttext_bool {\begin{addmargin}{\g_ptxcd_titleindent_dim }}
\usekomafont{title}
\raggedright
\tl_if_empty:NF \@titlehead {\usekomafont{titlehead}{\@titlehead\par}}
\leavevmode\usekomafont{disposition}\usekomafont{title}%
\@title\strut\par
- \bool_if:NTF \g_TUDa_indenttext_bool {\nointerlineskip\leavevmode}{\end{addmargin}}
+ \bool_if:NTF \g_ptxcd_indenttext_bool {\nointerlineskip\leavevmode}{\end{addmargin}}
\end{minipage}
}
\par\nointerlineskip
\exp_args:Nf \tl_if_empty:nF {\@subtitle\@titleinfo} {
- \bool_if:NT \g_TUDa_indenttext_bool {\hspace*{-\g_TUDa_titleindent_dim}}\TUDa@smallrule\par
+ \bool_if:NT \g_ptxcd_indenttext_bool {\hspace*{-\g_ptxcd_titleindent_dim}}
+ \rule{\linewidth}{\g_ptxcd_titlerule_dim}
+ \par
\nointerlineskip
- \vspace{\c_TUDa_rulesep_dim}
- \bool_if:NTF \g_TUDa_indenttext_bool {\begingroup}{\begin{addmargin}{\g_TUDa_titleindent_dim }}
- \bool_if:NT \g_TUDa_colorsubtitle_bool {\color{textonaccentcolor}}
+ \vspace{\c_ptxcd_rulesep_dim}
+ \bool_if:NTF \g_ptxcd_indenttext_bool {\begingroup}{\begin{addmargin}{\g_ptxcd_titleindent_dim }}
+ \bool_if:NT \g_ptxcd_colorsubtitle_bool {\color{textonaccentcolor}}
\tl_if_empty:NF \@subtitle {{\usekomafont{subtitle}\strut\@subtitle\strut\par}}
\tl_if_empty:NF \@titleinfo {{\usekomafont{titleinfo}\@titleinfo\par}}
\nointerlineskip
- \bool_if:NTF \g_TUDa_indenttext_bool {\endgroup} {\end{addmargin}}
- \vspace{\c_TUDa_rulesep_dim}
+ \bool_if:NTF \g_ptxcd_indenttext_bool {\endgroup} {\end{addmargin}}
+ \vspace{\c_ptxcd_rulesep_dim}
\par\nointerlineskip
- \bool_if:NT \g_TUDa_indenttext_bool {\hspace*{-\g_TUDa_titleindent_dim}
+ \bool_if:NT \g_ptxcd_indenttext_bool {\hspace*{-\g_ptxcd_titleindent_dim}
}
}
\nointerlineskip
- \TUDa@smallrule
+ \rule{\linewidth}{\g_ptxcd_titlerule_dim}
}
}
\endgroup
- \TUDa_Setup_Title_box:
- \dim_gset:Nn \g_TUDa_titleback_dim {
- \bool_if:NT \g_TUDa_colorsubtitle_bool {\box_dp:N \g_TUDa_title_box}+
- \box_ht:N \g_TUDa_title_box+.5\c_TUDa_logoheight_dim
+ \ptxcd_Setup_Title_box:
+ \dim_gset:Nn \g_ptxcd_titleback_dim {
+ \bool_if:NT \g_ptxcd_colorsubtitle_bool {\box_dp:N \g_ptxcd_title_box}+
+ \box_ht:N \g_ptxcd_title_box+.5\c_ptxcd_logoheight_dim
}
\ModifyLayer[
- height=\g_TUDa_titleback_dim
+ height=\g_ptxcd_titleback_dim
]{TUDa.poster.background}
- \bool_if:NF \g_TUDa_logo@inhead_bool {
+ \bool_if:NF \g_ptxcd_logo_inhead_bool {
\ModifyLayer[
- addvoffset=\g_TUDa_titleback_dim+\c_TUDa_smallrule_dim
+ addvoffset=\g_ptxcd_titleback_dim+\c_ptxcd_smallrule_dim
]{TUDa.poster.logo}
}
- \bool_if:NT \g_TUDa_logo@inhead_bool {
- \dim_compare:nT {\box_ht:N \g_TUDa_title_info_box+ \box_dp:N \g_TUDa_title_info_box > \box_ht:N \g_TUDa_title_box}
- {\msg_warning:nn {TUDaPoster} {infobox-too-high}}
+ \bool_if:NT \g_ptxcd_logo_inhead_bool {
+ \dim_compare:nT {\box_ht:N \g_ptxcd_title_info_box+ \box_dp:N \g_ptxcd_title_info_box > \box_ht:N \g_ptxcd_title_box}
+ {\msg_warning:nn{tudaposter} {infobox-too-high}}
}
- \leavevmode\box_use:N \g_TUDa_title_box\par
- \dim_set:Nn \g_TUDa_titlegraphic_max_height_dim {\textheight-\pagetotal}
- \global\def\contentheight{\g_TUDa_titlegraphic_max_height_dim}
+ \leavevmode\box_use:N \g_ptxcd_title_box\par
+ \dim_set:Nn \g_ptxcd_titlegraphic_max_height_dim {\textheight-\pagetotal}
+ \global\def\contentheight{\g_ptxcd_titlegraphic_max_height_dim}
\tl_if_empty:NF \@titlegraphic{
- \vbox_gset:Nn \g_TUDa_titlegraphic_box {\parbox[t]{\dim_eval:n {\paperwidth-2\g_TUDa_margin_dim}}{\@titlegraphic}}
+ \vbox_gset:Nn \g_ptxcd_titlegraphic_box {\parbox[t]{\dim_eval:n {\paperwidth-2\g_ptxcd_margin_dim}}{\@titlegraphic}}
\par\nointerlineskip
- \box_use:N \g_TUDa_titlegraphic_box
+ \box_use:N \g_ptxcd_titlegraphic_box
}
\DeclareLayer[
clone=TUDa.poster.marginpar,
- height=\bool_if:NF \l_TUDa_marginpar_overlap_bool {-\box_ht:N \g_TUDa_titlegraphic_box-\box_dp:N \g_TUDa_titlegraphic_box}
- +\textheight-\box_ht:N \g_TUDa_title_box-\box_dp:N \g_TUDa_title_box-.5\c_TUDa_logoheight_dim,
- addvoffset=\bool_if:NF \l_TUDa_marginpar_overlap_bool {+\box_ht:N\g_TUDa_titlegraphic_box+\box_dp:N \g_TUDa_titlegraphic_box}
- +\box_ht:N \g_TUDa_title_box+\box_dp:N \g_TUDa_title_box+.5\c_TUDa_logoheight_dim,
+ height=\bool_if:NF \l_ptxcd_marginpar_overlap_bool {-\box_ht:N \g_ptxcd_titlegraphic_box-\box_dp:N \g_ptxcd_titlegraphic_box}
+ +\textheight-\box_ht:N \g_ptxcd_title_box-\box_dp:N \g_ptxcd_title_box-.5\c_ptxcd_logoheight_dim,
+ addvoffset=\bool_if:NF \l_ptxcd_marginpar_overlap_bool {+\box_ht:N\g_ptxcd_titlegraphic_box+\box_dp:N \g_ptxcd_titlegraphic_box}
+ +\box_ht:N \g_ptxcd_title_box+\box_dp:N \g_ptxcd_title_box+.5\c_ptxcd_logoheight_dim,
]{TUDa.poster.marginpar.title}
- \tl_if_empty:NF \g_TUDa_poster_qrcode_tl {
- \ModifyLayer[addwidth=-\g_TUDa_qrcode_dim-\c_TUDa_rulesep_dim]{TUDa.poster.footer}
+ \tl_if_empty:NF \g_ptxcd_poster_qrcode_tl {
+ \ModifyLayer[addwidth=-\g_ptxcd_qrcode_dim-\c_ptxcd_rulesep_dim]{TUDa.poster.footer}
}
\AddLayersToPageStyle{TUDa.poster.title}{TUDa.poster.marginpar.title}
@@ -406,44 +412,39 @@
\let\@titleinfo\@empty
}
-\global\def\contentwidth{\linewidth}
-\global\def\contentheight{\g_TUDa_titlegraphic_max_height_dim}
-
\def\@titlegraphic{}
\newcommand{\titlegraphic}[1]{
\def\@titlegraphic{#1}
}
-\box_new:N \g_TUDa_titlegraphic_box
+\box_new:N \g_ptxcd_titlegraphic_box
-\seq_new:N \g_TUDa_title_info_seq
+\seq_new:N \g_ptxcd_title_info_seq
-\seq_gput_right:Nn \g_TUDa_title_info_seq {
- \rlap{\includegraphics[height=\c_TUDa_logoheight_dim]{\g_TUDa_logofile_tl}}
+\seq_gput_right:Nn \g_ptxcd_title_info_seq {
+ \rlap{\includegraphics[height=\c_ptxcd_logoheight_dim]{\g_ptxcd_logofile_tl}}
}
-\box_new:N \g_TUDa_title_info_box
-\box_new:N \g_TUDa_title_box
-
-\colorlet{TUDa@InfoBoxColor}{white}
+\box_new:N \g_ptxcd_title_info_box
+\box_new:N \g_ptxcd_title_box
-\cs_new:Nn \TUDa_make_title_info_box:n {
+\cs_new:Nn \ptxcd_make_title_info_box:n {
\usekomafont{titleinfo}
\setlength{\fboxsep}{.2\baselineskip}
- \colorbox{TUDa@InfoBoxColor}{\hspace*{\dimexpr.2\c_TUDa_logoheight_dim-\fboxsep}%
- \parbox{2\c_TUDa_logoheight_dim}{
+ \colorbox{InfoBox}{\hspace*{\dimexpr.2\c_ptxcd_logoheight_dim-\fboxsep}%
+ \parbox{2\c_ptxcd_logoheight_dim}{
\raggedright
#1
}}
}
-\cs_new:Nn \TUDa_make_title_logo_box:n {
+\cs_new:Nn \ptxcd_make_title_logo_box:n {
\setlength{\fboxsep}{\z@}%
- \parbox{2.2\c_TUDa_logoheight_dim}{
- \colorbox{TUDa@InfoBoxColor}{
+ \parbox{2.2\c_ptxcd_logoheight_dim}{
+ \colorbox{InfoBox}{
\rlap{
- \makebox[2.5\c_TUDa_logoheight_dim][r]{
- \colorbox{TUDa@InfoBoxColor}{#1\hspace{.3\c_TUDa_logoheight_dim}}
+ \makebox[2.5\c_ptxcd_logoheight_dim][r]{
+ \colorbox{InfoBox}{#1\hspace{.3\c_ptxcd_logoheight_dim}}
}
}
}
@@ -451,20 +452,20 @@
}
-\newcommand{\addTitleBox}[1]{\seq_gput_right:Nn \g_TUDa_title_info_seq {\TUDa_make_title_info_box:n {#1}}}
+\newcommand{\addTitleBox}[1]{\seq_gput_right:Nn \g_ptxcd_title_info_seq {\ptxcd_make_title_info_box:n {#1}}}
\NewDocumentCommand{\addTitleBoxLogo}{sm}{
\IfBooleanTF{#1}{
- \seq_gput_right:Nn \g_TUDa_title_info_seq {
- \TUDa_make_title_logo_box:n {#2}
+ \seq_gput_right:Nn \g_ptxcd_title_info_seq {
+ \ptxcd_make_title_logo_box:n {#2}
}
}{
- \seq_gput_right:Nn \g_TUDa_title_info_seq {
- \TUDa_make_title_logo_box:n {
+ \seq_gput_right:Nn \g_ptxcd_title_info_seq {
+ \ptxcd_make_title_logo_box:n {
\hbox_set:Nn \l_tmpa_box {
- \includegraphics[width=1.5\c_TUDa_logoheight_dim]{#2}
+ \includegraphics[width=1.5\c_ptxcd_logoheight_dim]{#2}
}
- \dim_set:Nn \l_tmpa_dim {2\c_TUDa_logoheight_dim/3}
+ \dim_set:Nn \l_tmpa_dim {2\c_ptxcd_logoheight_dim/3}
\dim_compare:nTF {\box_ht:N \l_tmpa_box > \l_tmpa_dim}
{\includegraphics[width=\l_tmpa_dim]{#2}}
{\box_use:N \l_tmpa_box}
@@ -473,44 +474,44 @@
}
}
-\cs_new:Nn \TUDa_Setup_Title_box: {
- \hbox_gset:Nn \g_TUDa_title_info_box
- {\parbox{2.2\c_TUDa_logoheight_dim}{
- \seq_use:Nn \g_TUDa_title_info_seq {\par\nointerlineskip\skip_vertical:n
+\cs_new:Nn \ptxcd_Setup_Title_box: {
+ \hbox_gset:Nn \g_ptxcd_title_info_box
+ {\parbox{2.2\c_ptxcd_logoheight_dim}{
+ \seq_use:Nn \g_ptxcd_title_info_seq {\par\nointerlineskip\skip_vertical:n
{
- \box_ht:N \TUDa@posterrule_box + \box_dp:N \TUDa@posterrule_box
+ \box_ht:N \ptxcd_headrule_box + \box_dp:N \ptxcd_headrule_box
}
}
}}
}
-\tl_new:N \g_TUDa_poster_foot_tl
+\tl_new:N \g_ptxcd_poster_foot_tl
\newcommand{\footer}[1]{
- \tl_gset:Nn \g_TUDa_poster_foot_tl {#1}
+ \tl_gset:Nn \g_ptxcd_poster_foot_tl {#1}
}
-\tl_new:N \g_TUDa_poster_qrcode_tl
+\tl_new:N \g_ptxcd_poster_qrcode_tl
\newcommand*{\footerqrcode}[1]{
- \tl_gset:Nn \g_TUDa_poster_qrcode_tl
- {\raisebox{\depth}{\qrcode[height={\g_TUDa_qrcode_dim}]{#1}}}
+ \tl_gset:Nn \g_ptxcd_poster_qrcode_tl
+ {\raisebox{\depth}{\qrcode[height={\g_ptxcd_qrcode_dim}]{#1}}}
}
-\newcommand*{\footerqrcodeimg}[1]{\tl_gset:Nn \g_TUDa_poster_qrcode_tl {#1}}
+\newcommand*{\footerqrcodeimg}[1]{\tl_gset:Nn \g_ptxcd_poster_qrcode_tl {#1}}
\RedeclareSectionCommand[afterskip=1ex plus .2ex]{section}
\RedeclareSectionCommand[afterskip=.2ex plus .2ex]{subsection}
-\msg_new:nnn {TUDaPoster} {infobox-too-high} {
+\msg_new:nnn{tudaposter} {infobox-too-high} {
The~height~of~your~Infobox~exeeds~the~space~reserved~in~the~title~block.\\
You~should~probably~switch~to~logo=bottom~or~reduce~the~number/size~of~InfoBoxes.
}
-\keys_define:nn {TUDa/poster/marginparopts}{
- valign .tl_set:N = \l_TUDa_marginpar_valign_tl,
+\keys_define:nn {ptxcd/poster/marginparopts}{
+ valign .tl_set:N = \l_ptxcd_marginpar_valign_tl,
valign .initial:n = t,
- overlap .bool_set:N = \l_TUDa_marginpar_overlap_bool,
+ overlap .bool_set:N = \l_ptxcd_marginpar_overlap_bool,
overlap .initial:n = false,
overlap .default:n = true
}
@@ -521,16 +522,16 @@
\newcommand*{\infofont}{\accentfont\normalcolor\footnotesize}
\DeclareTextFontCommand{\infotext}{\infofont}
-\int_new:N \g_TUDa_marginpar_int
+\int_new:N \g_ptxcd_marginpar_int
\NewDocumentCommand{\SetMarginpar}{o+m}{
- \bool_if:NF \g_TUDa_marginpar_bool {\msg_warning:nn {TUDa/Poster} {marginpar-disabled}}
- \IfNoValueF{#1}{\keys_set:nn {TUDa/poster/marginparopts} {#1}}
- \ModifyLayer[addvoffset={-\ht\strutbox},contents={\parbox[t][\layerheight][\l_TUDa_marginpar_valign_tl]{\layerwidth}{#2}}]{TUDa.poster.marginpar}
+ \bool_if:NF \g_ptxcd_marginpar_bool {\msg_warning:nn {ptxcd/Poster} {marginpar-disabled}}
+ \IfNoValueF{#1}{\keys_set:nn {ptxcd/poster/marginparopts} {#1}}
+ \ModifyLayer[addvoffset={-\ht\strutbox},contents={\parbox[t][\layerheight][\l_ptxcd_marginpar_valign_tl]{\layerwidth}{#2\strut}}]{TUDa.poster.marginpar}
\bool_set_true:N \l_tmpa_bool
}
-\msg_new:nnnn {TUDa/Poster} {marginpar-disabled} {
+\msg_new:nnnn {ptxcd/Poster} {marginpar-disabled} {
You~are~adding~data~to~the~marginpar~box,~though~marginpar option is set to false.\\
I~will~add~it,~but~cannot~ensure~the~position.
} {
@@ -538,4 +539,10 @@
See~the~TUDa-CI~documentation~for~further~information.
}
+\global\def\contentwidth{\linewidth}
+\global\def\contentheight{\g_ptxcd_titlegraphic_max_height_dim}
+
+\file_if_exist_input:n {tuda\g_ptxcd_department_str.cfg}
+
+
\endinput
diff --git a/macros/latex/contrib/tuda-ci/tex/tudapub.cls b/macros/latex/contrib/tuda-ci/tex/tudapub.cls
index 700fbd0c6a..f42c037891 100644
--- a/macros/latex/contrib/tuda-ci/tex/tudapub.cls
+++ b/macros/latex/contrib/tuda-ci/tex/tudapub.cls
@@ -1,4 +1,4 @@
-%% This is file `tudapub.cls' version 2.11 (2020/06/12),
+%% This is file `tudapub.cls' version 3.00 (2020/09/08),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -26,168 +26,189 @@
%%
%% ============================================================================
%%
-\def\fileversion{2.11}
-\def\filedate{2020/06/12}
+\def\fileversion{3.00}
+\def\filedate{2020/09/08}
\NeedsTeXFormat{LaTeX2e}
\RequirePackage{expl3}
\ProvidesExplClass{tudapub}
- {\filedate}{\fileversion}{Publications using TU Darmstadt's Coporate Design (TUDa-CI)}
+ {\filedate}{\fileversion}{Publications using TU Darmstadt's Corporate Design (TUDa-CI)}
\RequirePackage{l3keys2e}
\RequirePackage{URspecialopts}
-\Define@specialopt@Module[TUDa/special]
+\Define@specialopt@Module[ptxcd/pub]
+\str_const:Nn \c__ptxcd_base_str {pub}
+\tl_new:N \g_ptxcd_pub_class_tl
+\tl_new:N \g_ptxcd_thesis_options_tl
-\tl_new:N \g_TUDa_pub_class_tl
-\tl_new:N \g_TUDa_thesis_options_tl
+\prop_new:N \g_ptxcd_clsopts_prop
+\prop_new:N \g_ptxcd_unknown_clsopts_prop
+\prop_gput:Nnn \g_ptxcd_clsopts_prop {titlepage} {firstiscover}
+\prop_gput:Nnn \g_ptxcd_clsopts_prop {captions} {nooneline}
-\prop_new:N \g_TUDa_clsopts_prop
-\prop_new:N \g_TUDa_unknown_clsopts_prop
-\prop_gput:Nnn \g_TUDa_clsopts_prop {titlepage} {firstiscover}
-\prop_gput:Nnn \g_TUDa_clsopts_prop {captions} {nooneline}
-
-\int_new:N \g_TUDa_ruledheaders_int
-\int_new:N \g_TUDa_paper_int
-\msg_new:nnnn {TUDa} {compatibility-only} {
+\int_new:N \g_ptxcd_ruledheaders_int
+\int_new:N \g_ptxcd_paper_int
+\msg_new:nnnn {tudapub} {compatibility-only} {
You~used~the~outdated~#1~option.\\
This~only~exists~due~to~compatibility~reasons.
}{
Please~look~at~tuda-ci~documentation~for~further~information~and~avoid~using~outdated~options.
}
-\bool_new:N \g_TUDa_geometry_bool
-\bool_new:N \g_TUDa_custommargins_bool
+\bool_new:N \g_ptxcd_geometry_bool
+\bool_new:N \g_ptxcd_custommargins_bool
-\keys_define:nn {TUDa/pub} {
+\keys_define:nn {ptxcd/pub} {
%twoside -> geometry + class
class .choice:,
class/report .meta:n = {class=scrreprt},
- class/scrreprt .code:n = \tl_gset:Nn \g_TUDa_pub_class_tl {scrreprt},
+ class/scrreprt .code:n = \tl_gset:Nn \g_ptxcd_pub_class_tl {scrreprt},
class/article .meta:n = {class=scrartcl},
- class/scrartcl .code:n = \tl_gset:Nn \g_TUDa_pub_class_tl {scrartcl},
+ class/scrartcl .code:n = \tl_gset:Nn \g_ptxcd_pub_class_tl {scrartcl},
class/book .meta:n = {class=scrbook},
- class/scrbook .code:n = \tl_gset:Nn \g_TUDa_pub_class_tl {scrbook},
+ class/scrbook .code:n = \tl_gset:Nn \g_ptxcd_pub_class_tl {scrbook},
class .initial:n = scrartcl,%MAYBE add custom values
color .meta:n = {accentcolor=#1},
accentcolor .code:n = {\PassOptionsToPackage{accentcolor=#1}{tudacolors}},
textaccentcolor .code:n = {\PassOptionsToPackage{textaccentcolor=#1}{tudacolors}},
identbarcolor .code:n = {\PassOptionsToPackage{identbarcolor=#1}{tudacolors}},
- marginpar .tl_gset:N = \g_TUDa_marginpar_tl,
+ marginpar .tl_gset:N = \g_ptxcd_marginpar_tl,
marginpar .default:n = auto,
marginpar .initial:n = auto,
custommargins .choice:,
custommargins / true .code:n ={
- \bool_gset_true:N \g_TUDa_custommargins_bool
- \bool_gset_false:N \g_TUDa_geometry_bool
+ \bool_gset_true:N \g_ptxcd_custommargins_bool
+ \bool_gset_false:N \g_ptxcd_geometry_bool
},
custommargins / false .code:n ={
- \bool_gset_false:N \g_TUDa_custommargins_bool
- \bool_gset_true:N \g_TUDa_geometry_bool
+ \bool_gset_false:N \g_ptxcd_custommargins_bool
+ \bool_gset_true:N \g_ptxcd_geometry_bool
},
custommargins / geometry .code:n = {
- \bool_gset_true:N \g_TUDa_custommargins_bool
- \bool_gset_true:N \g_TUDa_geometry_bool
+ \bool_gset_true:N \g_ptxcd_custommargins_bool
+ \bool_gset_true:N \g_ptxcd_geometry_bool
},
custommargins .initial:n = false,
custommargins .default:n = true,
- fontsize .code:n = \prop_gput:Nnn \g_TUDa_clsopts_prop {fontsize} {#1},
+ fontsize .code:n = \prop_gput:Nnn \g_ptxcd_clsopts_prop {fontsize} {#1},
fontsize .initial:n = {9pt},
ruledheaders .choices:nn = {false, none, chapter, section, true, all}{
- \int_gset:Nn \g_TUDa_ruledheaders_int {\l_keys_choice_int}
+ \int_gset:Nn \g_ptxcd_ruledheaders_int {\l_keys_choice_int}
},
ruledheaders .initial:n = all,
- type .choices:nn = {publication, thesis} {\tl_gset_eq:NN \g_TUDa_pubType_tl \l_keys_choice_tl},
- type / intern .code:n = {\keys_set:nn {TUDa/pub} {titlepage=false, pdfa=false, IMRAD=false}},
+ type .choices:nn = {publication, thesis} {\tl_gset_eq:NN \g_ptxcd_pubType_tl \l_keys_choice_tl},
+ type / intern .code:n = {\keys_set:nn {ptxcd/pub} {titlepage=false, pdfa=false, IMRAD=false}},
type .initial:n = publication,
- unknown .code:n = {\prop_gput:NVn \g_TUDa_unknown_clsopts_prop \l_keys_key_tl {#1}},
+ unknown .code:n = {\prop_gput:NVn \g_ptxcd_unknown_clsopts_prop \l_keys_key_tl {#1}},
headline .choice:,
- headline / true .code:n = \bool_gset_true:N \g_TUDa_headline_bool,
- headline / false .code:n = \bool_gset_false:N \g_TUDa_headline_bool,
- headline / automark .code:n = {\bool_gset_true:N \g_TUDa_headline_bool \PassOptionsToPackage{automark}{scrlayer-scrpage}},
+ headline / true .code:n = \bool_gset_true:N \g_ptxcd_headline_bool,
+ headline / false .code:n = \bool_gset_false:N \g_ptxcd_headline_bool,
+ headline / automark .code:n = {\bool_gset_true:N \g_ptxcd_headline_bool \PassOptionsToPackage{automark}{scrlayer-scrpage}},
automark .meta:n = {headline=automark},
headline .initial:n =false,
- colorback .bool_gset:N = \g_TUDa_colorback_bool,
+ colorback .bool_gset:N = \g_ptxcd_colorback_bool,
colorback .initial:n = true,
- colortitleback .code:n = \msg_warning:nnx {TUDa} {compatibility-only} {\l_keys_key_tl}\keys_set:nn {TUDa/pub} {logo=head,colorback=false},
- pdfa .bool_gset:N = \g_TUDa@pdfa_bool,
+ colortitleback .code:n = \msg_warning:nnx {tudapub} {compatibility-only} {\l_keys_key_tl}
+ \keys_set:nn {ptxcd/pub} {logo=head,colorback=false},
+ pdfa .bool_gset:N = \g_ptxcd_pdfa_bool,
pdfa .initial:n = true,
- twocolumn .bool_gset:N = \g_TUDa_twocolumn_bool,
+ twocolumn .bool_gset:N = \g_ptxcd_twocolumn_bool,
twocolumn .default:n = true,
twocolumn .initial:n = false,
BCOR .code:n = \PassOptionsToPackage{bindingoffset=#1}{geometry},
bindingoffset .meta:n = {BCOR=#1},
- captions .code:n = {\prop_gput:Nnx \g_TUDa_clsopts_prop {captions} {
- \use:n {\prop_item:Nn \g_TUDa_clsopts_prop {captions}}, #1}
+ captions .code:n = {\prop_gput:Nnx \g_ptxcd_clsopts_prop {captions} {
+ \use:n {\prop_item:Nn \g_ptxcd_clsopts_prop {captions}}, #1}
},
- abstract .code:n = \prop_gput:Nnn \g_TUDa_unknown_clsopts_prop {abstract} {#1},
+ abstract .code:n = \prop_gput:Nnn \g_ptxcd_unknown_clsopts_prop {abstract} {#1},
abstract .initial:n =true,
logo .choice:,
- logo / head .code:n = {\bool_gset_true:N \g_TUDa_logo@inhead_bool},
- logo / body .code:n = {\bool_gset_false:N \g_TUDa_logo@inhead_bool},
- logo / top .code:n = {\bool_gset_true:N \g_TUDa_logo@inhead_bool},
- logo / bottom .code:n = {\bool_gset_false:N \g_TUDa_logo@inhead_bool},
+ logo / head .code:n = {\bool_gset_true:N \g_ptxcd_logo@inhead_bool},
+ logo / body .code:n = {\bool_gset_false:N \g_ptxcd_logo@inhead_bool},
+ logo / top .code:n = {\bool_gset_true:N \g_ptxcd_logo@inhead_bool},
+ logo / bottom .code:n = {\bool_gset_false:N \g_ptxcd_logo@inhead_bool},
logo .initial:n = {body},
paper .choices:nn = {a0,a1,a2,a3,a4,a5,a6}{
- \int_gset_eq:NN \g_TUDa_paper_int \l_keys_choice_int
+ \int_gset_eq:NN \g_ptxcd_paper_int \l_keys_choice_int
\PassOptionsToPackage{paper=\l_keys_choice_tl}{tudarules}
\PassOptionsToPackage{paper=\l_keys_choice_tl}{typearea}
\PassOptionsToPackage{\l_keys_choice_tl paper}{geometry}
},
paper .initial:n = a4,
- IMRAD .bool_gset:N = \g_TUDa_IMRAD_bool,
+ IMRAD .bool_gset:N = \g_ptxcd_IMRAD_bool,
IMRAD .initial:n = true,
IMRAD .default:n = true,
- instbox .code:n = {\tl_gput_right:Nn \g_TUDa_thesis_options_tl {,instbox=#1}},
- noinstbox .code:n = {\tl_gput_right:Nn \g_TUDa_thesis_options_tl {,noinstbox=#1}},
- logofile .tl_gset:N = \g_TUDa_logofile_tl,
+ instbox .code:n = {\tl_gput_right:Nn \g_ptxcd_thesis_options_tl {,instbox=#1}},
+ noinstbox .code:n = {\tl_gput_right:Nn \g_ptxcd_thesis_options_tl {,noinstbox=#1}},
+ logofile .tl_gset:N = \g_ptxcd_logofile_tl,
logofile .initial:n = tuda_logo,
title .choice:,
title / default .meta:n = {title=large},
- title / large .code:n = \bool_gset_false:N \g_TUDa_smalltitle_bool,
- title / small .code:n = \bool_gset_true:N \g_TUDa_smalltitle_bool,
+ title / large .code:n = \bool_gset_false:N \g_ptxcd_smalltitle_bool,
+ title / small .code:n = \bool_gset_true:N \g_ptxcd_smalltitle_bool,
title .initial:n = default,
+ department .choice:,
+ department / default .code:n = \str_gset:Nn \g_ptxcd_department_str {default},
+ department / mecheng .code:n = {
+ \str_gset:Nn \g_ptxcd_department_str {mecheng}
+ \keys_set:nn {ptxcd/pub}{colorback=false,ruledheaders=section,departmentlogofile=tuda_maschinenbau_logo}
+ },
+ department .initial:n = default,
+ mecheng .meta:n = {department=mecheng},
+ departmentlogofile .tl_gset:N = \g_ptxcd_departmentlogo_tl,
+ departmentlogofile .initial:n =,
+ BCORtitlepage .bool_gset:N = \g_ptxcd_BCOR_titlepage_bool,
+ BCORtitlepage .initial:n = false,
+ BCORtitlepage .default:n = true,
}
%
%%special option handling grouped values
-\Module@DefineSpecialKey[TUDa/special]{thesis}{
- \keys_set:nn {TUDa/pub}{type=thesis}
- \tl_gput_right:No \g_TUDa_thesis_options_tl {#1}
+\Module@DefineSpecialKey[ptxcd/pub]{thesis}{
+ \keys_set:nn {ptxcd/pub}{type=thesis}
+ \tl_gput_right:No \g_ptxcd_thesis_options_tl {#1}
}
-\Module@Process@SpecialOptions[TUDa/special]
+\Module@Process@SpecialOptions[ptxcd/pub]
-\ProcessKeysOptions{TUDa/pub}
+\ProcessKeysOptions{ptxcd/pub}
%Option adjustments required for valid PDF/A
-\bool_if:NT \g_TUDa@pdfa_bool {
+\bool_if:NT \g_ptxcd_pdfa_bool {
\PassOptionsToPackage{RGB}{xcolor}
\PassOptionsToPackage{T1}{tudafonts}
}
-\prop_gput:Nnx \g_TUDa_clsopts_prop {twocolumn} {\bool_if:NTF \g_TUDa_twocolumn_bool {true} {false}}
+\exp_args:Nx \tl_if_eq:nnT {\prop_item:Nn \g_ptxcd_clsopts_prop {fontsize}} {9pt}
+ {
+ \prop_if_in:NnF \g_ptxcd_unknown_clsopts_prop {DIV}
+ {\PassOptionsToPackage{DIV=calc}{typearea}}
+ }
-\prop_map_inline:Nn \g_TUDa_clsopts_prop {
+\prop_gput:Nnx \g_ptxcd_clsopts_prop {twocolumn} {
+ \bool_if:NTF \g_ptxcd_twocolumn_bool {true} {false}
+}
+
+\prop_map_inline:Nn \g_ptxcd_clsopts_prop {
\tl_if_empty:nTF {#2}
- {\PassOptionsToClass {#1} {\g_TUDa_pub_class_tl}}
+ {\PassOptionsToClass {#1} {\g_ptxcd_pub_class_tl}}
{
- \clist_map_inline:nn {#2} {\PassOptionsToClass {#1=##1} {\g_TUDa_pub_class_tl}}
+ \clist_map_inline:nn {#2} {\PassOptionsToClass {#1=##1} {\g_ptxcd_pub_class_tl}}
}
}
%Load tudasize clo file if available
-\file_if_exist:nT {tudasize\prop_item:Nn \g_TUDa_clsopts_prop {fontsize}.clo}
+\file_if_exist:nT {tudasize\prop_item:Nn \g_ptxcd_clsopts_prop {fontsize}.clo}
{\providecommand*{\@fontsizefilebase}{tudasize}}
-%\PassOptionsToPackage{DIV=7}{typearea}
+\LoadClass{\g_ptxcd_pub_class_tl}
-\LoadClass{\g_TUDa_pub_class_tl}
-\prop_map_inline:Nn \g_TUDa_unknown_clsopts_prop {
- \cs_if_exist:cT {KV@KOMA.\g_TUDa_pub_class_tl.cls@#1} {
+\prop_map_inline:Nn \g_ptxcd_unknown_clsopts_prop {
+ \cs_if_exist:cT {KV@KOMA.\g_ptxcd_pub_class_tl.cls@#1} {
\tl_if_empty:nTF {#2}
{\KOMAoptions{#1}}
{\KOMAoption{#1}{#2}}
@@ -195,37 +216,37 @@
}
%ruled headers
-\int_compare:nT {\g_TUDa_ruledheaders_int>=3} {
+\int_compare:nT {\g_ptxcd_ruledheaders_int>=3} {
\cs_if_exist:NT \chapterlinesformat {
\renewcommand*{\chapterlinesformat}[3]{%
\@hangfrom{#2}{#3}
- \smash{\raisebox{\depth}{\rule[\dp\strutbox]{\linewidth}{\g_TUDa_titlerule_dim}}}
+ \smash{\raisebox{\depth}{\rule[\dp\strutbox]{\linewidth}{\g_ptxcd_titlerule_dim}}}
}
}
}
-\int_compare:nT {\g_TUDa_ruledheaders_int =4 }{
+\int_compare:nT {\g_ptxcd_ruledheaders_int =4 }{
\renewcommand*\sectionlinesformat[4]{%
\tl_if_eq:nnTF {#1} {section}
{
\parbox{\linewidth}{
- \rule[5\g_TUDa_titlerule_dim]{\linewidth}{\g_TUDa_titlerule_dim}\par\nointerlineskip
+ \rule[5\g_ptxcd_titlerule_dim]{\linewidth}{\g_ptxcd_titlerule_dim}\par\nointerlineskip
\@hangfrom{%
\hskip #2#3\strut}{#4\rule[-\dp\strutbox]{0pt}{\dp\strutbox}\par}\nointerlineskip
- \skip_vertical:n {\TUDa_titlerule_sep: -\dp\strutbox}
- \smash{\rule{\linewidth}{\g_TUDa_titlerule_dim}}}
+ \skip_vertical:n {\ptxcd_titlerule_sep: -\dp\strutbox}
+ \smash{\rule{\linewidth}{\g_ptxcd_titlerule_dim}}}
}{
\@hangfrom{\hskip #2#3}{#4}
}
}
}
-\int_compare:nT {\g_TUDa_ruledheaders_int>4} {
+\int_compare:nT {\g_ptxcd_ruledheaders_int>4} {
\renewcommand*\sectionlinesformat[4]{%
\parbox{\linewidth}{
- \rule[5\g_TUDa_titlerule_dim]{\linewidth}{\g_TUDa_titlerule_dim}\par\nointerlineskip
+ \rule[5\g_ptxcd_titlerule_dim]{\linewidth}{\g_ptxcd_titlerule_dim}\par\nointerlineskip
\@hangfrom{%
\hskip #2#3\strut}{#4\rule[-\dp\strutbox]{0pt}{\dp\strutbox}\par}\nointerlineskip
- \skip_vertical:n {\TUDa_titlerule_sep: -\dp\strutbox}
- \smash{\rule{\linewidth}{\g_TUDa_titlerule_dim}}
+ \skip_vertical:n {\ptxcd_titlerule_sep: -\dp\strutbox}
+ \smash{\rule{\linewidth}{\g_ptxcd_titlerule_dim}}
}}
}
@@ -234,144 +255,141 @@
%,~ subsection,~
-
-
-%\newcommand{\chapterlineswithprefixformat}[3]{%
-% #2#3%
-%}
-%
-%ngerman,article,dr=phil,type=drfinal,colorback,accentcolor=TUDa-9c, fontsize=9pt,twoside=true
-
\usepackage{tudafonts}
%Margin & titlefontsize setup setup
-\bool_new:N \g_TUDa_marginpar_bool
+\bool_new:N \g_ptxcd_marginpar_bool
-\dim_new:N \g_TUDa_marginpar_dim
-\dim_new:N \g_TUDa_innerMargin_dim
-\dim_new:N \g_TUDa_outerMargin_dim
-\dim_new:N \g_TUDa_bottomMargin_dim
-\dim_new:N \g_TUDa_topMargin_dim
+\dim_new:N \g_ptxcd_marginpar_dim
+\dim_new:N \g_ptxcd_innerMargin_dim
+\dim_new:N \g_ptxcd_outerMargin_dim
+\dim_new:N \g_ptxcd_bottomMargin_dim
+\dim_new:N \g_ptxcd_topMargin_dim
%a3,a4
- \int_compare:nTF {4<=\g_TUDa_paper_int<=5}
+ \int_compare:nTF {4<=\g_ptxcd_paper_int<=5}
{
- \dim_gset:Nn \g_TUDa_bottomMargin_dim {20mm}
- \dim_gset:Nn \g_TUDa_outerMargin_dim {15mm}
- \dim_gset_eq:NN \g_TUDa_innerMargin_dim \g_TUDa_outerMargin_dim
- \dim_gset_eq:NN \g_TUDa_topMargin_dim \g_TUDa_outerMargin_dim
+ \dim_gset:Nn \g_ptxcd_bottomMargin_dim {20mm}
+ \dim_gset:Nn \g_ptxcd_outerMargin_dim {15mm}
+ \dim_gset_eq:NN \g_ptxcd_innerMargin_dim \g_ptxcd_outerMargin_dim
+ \dim_gset_eq:NN \g_ptxcd_topMargin_dim \g_ptxcd_outerMargin_dim
}{
%a0, a1, a2
- \int_compare:nT {1<=\g_TUDa_paper_int<=3}
+ \int_compare:nT {1<=\g_ptxcd_paper_int<=3}
{
- \dim_gset:Nn \g_TUDa_bottomMargin_dim {35mm}
- \dim_gset:Nn \g_TUDa_outerMargin_dim {30mm}
- \dim_gset_eq:NN \g_TUDa_innerMargin_dim \g_TUDa_outerMargin_dim
- \dim_gset_eq:NN \g_TUDa_topMargin_dim \g_TUDa_outerMargin_dim
+ \dim_gset:Nn \g_ptxcd_bottomMargin_dim {35mm}
+ \dim_gset:Nn \g_ptxcd_outerMargin_dim {30mm}
+ \dim_gset_eq:NN \g_ptxcd_innerMargin_dim \g_ptxcd_outerMargin_dim
+ \dim_gset_eq:NN \g_ptxcd_topMargin_dim \g_ptxcd_outerMargin_dim
}
%a5
- \int_compare:nT {\g_TUDa_paper_int<=6}
+ \int_compare:nT {\g_ptxcd_paper_int<=6}
{
- \dim_gset:Nn \g_TUDa_bottomMargin_dim {16mm}
- \dim_gset:Nn \g_TUDa_outerMargin_dim {12mm}
- \dim_gset_eq:NN \g_TUDa_innerMargin_dim \g_TUDa_outerMargin_dim
- \dim_gset_eq:NN \g_TUDa_topMargin_dim \g_TUDa_outerMargin_dim
+ \dim_gset:Nn \g_ptxcd_bottomMargin_dim {16mm}
+ \dim_gset:Nn \g_ptxcd_outerMargin_dim {12mm}
+ \dim_gset_eq:NN \g_ptxcd_innerMargin_dim \g_ptxcd_outerMargin_dim
+ \dim_gset_eq:NN \g_ptxcd_topMargin_dim \g_ptxcd_outerMargin_dim
}
%a6
- \int_compare:nT {\g_TUDa_paper_int<=7}
+ \int_compare:nT {\g_ptxcd_paper_int<=7}
{
- \dim_gset:Nn \g_TUDa_bottomMargin_dim {15mm}
- \dim_gset:Nn \g_TUDa_outerMargin_dim {10mm}
- \dim_gset_eq:NN \g_TUDa_innerMargin_dim \g_TUDa_outerMargin_dim
- \dim_gset_eq:NN \g_TUDa_topMargin_dim \g_TUDa_outerMargin_dim
+ \dim_gset:Nn \g_ptxcd_bottomMargin_dim {15mm}
+ \dim_gset:Nn \g_ptxcd_outerMargin_dim {10mm}
+ \dim_gset_eq:NN \g_ptxcd_innerMargin_dim \g_ptxcd_outerMargin_dim
+ \dim_gset_eq:NN \g_ptxcd_topMargin_dim \g_ptxcd_outerMargin_dim
}
}
-\dim_new:N \g_TUDa_columnSep_dim
-\dim_gset:Nn \g_TUDa_columnSep_dim {10pt}
+\dim_new:N \g_ptxcd_columnSep_dim
+\dim_gset:Nn \g_ptxcd_columnSep_dim {10pt}
%coverpage
-\edef\coverpageleftmargin{\dim_eval:n {\g_TUDa_outerMargin_dim}}
-\renewcommand*{\coverpagetopmargin}{\g_TUDa_outerMargin_dim}
-\edef\coverpagerightmargin{\dim_eval:n {\g_TUDa_outerMargin_dim}}
-\renewcommand*{\coverpagebottommargin}{\g_TUDa_outerMargin_dim}
-
-\str_case:onTF {\g_TUDa_marginpar_tl} {
- {true} {\bool_gset_true:N \g_TUDa_marginpar_bool}
- {false} {\bool_gset_false:N \g_TUDa_marginpar_bool}
- {auto} {\bool_gset_true:N \g_TUDa_marginpar_bool}
+\edef\coverpageleftmargin{\dim_eval:n {\g_ptxcd_outerMargin_dim}}
+\renewcommand*{\coverpagetopmargin}{\g_ptxcd_outerMargin_dim}
+\edef\coverpagerightmargin{\dim_eval:n {\g_ptxcd_outerMargin_dim}}
+\renewcommand*{\coverpagebottommargin}{\g_ptxcd_outerMargin_dim}
+
+\str_case:onTF {\g_ptxcd_marginpar_tl} {
+ {true} {\bool_gset_true:N \g_ptxcd_marginpar_bool}
+ {false} {\bool_gset_false:N \g_ptxcd_marginpar_bool}
+ {auto} {\bool_gset_true:N \g_ptxcd_marginpar_bool}
} {
- \bool_if:NT \g_TUDa_marginpar_bool {
- \msg_new:nnnn {TUDa} {marginpar-auto} {Setting~up~marginpar~consistent~with~layout~guidelines.} {To~turn~this~off~use~marginpar=false~option.}
- \msg_info:nn {TUDa} {marginpar-auto}
- \dim_gset:Nn \g_TUDa_marginpar_dim {(\paperwidth - \g_TUDa_innerMargin_dim -\g_TUDa_outerMargin_dim - 4 \g_TUDa_columnSep_dim)/5}
+ \bool_if:NT \g_ptxcd_marginpar_bool {
+ \msg_new:nnnn {tudapub} {marginpar-auto} {Setting~up~marginpar~consistent~with~layout~guidelines.}
+ {To~turn~this~off~use~marginpar=false~option.}
+ \msg_info:nn {tudapub} {marginpar-auto}
+ \dim_gset:Nn \g_ptxcd_marginpar_dim {(\paperwidth - \g_ptxcd_innerMargin_dim -\g_ptxcd_outerMargin_dim - 4 \g_ptxcd_columnSep_dim)/5}
}
} {
- \msg_new:nnn {TUDa} {marginpar-no-key} {I~did~not~find~a~text~key~for~marginpar~setup~will~use~the~value~#1~as~width.}
- \msg_info:nnx {TUDa} {marginpar-no-key} {\g_TUDa_marginpar_tl}
- \bool_gset_true:N \g_TUDa_marginpar_bool
- \dim_gset:Nn \g_TUDa_marginpar_dim {\g_TUDa_marginpar_tl}
+ \msg_new:nnn {tudapub} {marginpar-no-key} {I~did~not~find~a~text~key~for~marginpar~setup~will~use~the~value~#1~as~width.}
+ \msg_info:nnx {tudapub} {marginpar-no-key} {\g_ptxcd_marginpar_tl}
+ \bool_gset_true:N \g_ptxcd_marginpar_bool
+ \dim_gset:Nn \g_ptxcd_marginpar_dim {\g_ptxcd_marginpar_tl}
}
-\dim_new:N \g_TUDa_headheight_dim
-\dim_new:N \g_TUDa_headwidth_dim
+\dim_new:N \g_ptxcd_headheight_dim
+\dim_new:N \g_ptxcd_headwidth_dim
-\bool_if:NTF \g_TUDa_headline_bool
- {\dim_gset:Nn \g_TUDa_headheight_dim {20pt +\c_TUDa_largerule_dim +\c_TUDa_rulesep_dim +\c_TUDa_smallrule_dim}}
- {\dim_gset:Nn \g_TUDa_headheight_dim {1.25\baselineskip +\c_TUDa_largerule_dim +\c_TUDa_rulesep_dim +\c_TUDa_smallrule_dim}}
+\bool_if:NTF \g_ptxcd_headline_bool
+ {\dim_gset:Nn \g_ptxcd_headheight_dim {20pt +\c_ptxcd_largerule_dim +\c_ptxcd_rulesep_dim +\c_ptxcd_smallrule_dim}}
+ {\dim_gset:Nn \g_ptxcd_headheight_dim {1.25\baselineskip +\c_ptxcd_largerule_dim +\c_ptxcd_rulesep_dim +\c_ptxcd_smallrule_dim}}
%%%%%Anfang Randeinstellungen Geometry
%Has to be loaded here due to headwidth options
\usepackage[draft=false]{scrlayer-scrpage}
-\bool_if:NTF \g_TUDa_geometry_bool {
+\bool_if:NTF \g_ptxcd_geometry_bool {
\RequirePackage{geometry}
\geometry{
- top=\g_TUDa_topMargin_dim,
- inner=\g_TUDa_innerMargin_dim,
- outer=\dim_eval:n {\g_TUDa_outerMargin_dim},
- bottom=\g_TUDa_bottomMargin_dim,
- columnsep= \g_TUDa_columnSep_dim,
+ top=\g_ptxcd_topMargin_dim,
+ inner=\g_ptxcd_innerMargin_dim,
+ outer=\dim_eval:n {\g_ptxcd_outerMargin_dim},
+ bottom=\g_ptxcd_bottomMargin_dim,
+ columnsep= \g_ptxcd_columnSep_dim,
includehead,
includefoot,
includemp,
nomarginpar,
- headheight=\g_TUDa_headheight_dim
+ headheight=\g_ptxcd_headheight_dim
}
- \savegeometry{TUDa@nomarginpar}
- \geometry{includemp, marginpar=\g_TUDa_marginpar_dim, marginparsep=\g_TUDa_columnSep_dim}
+ \savegeometry{TUDa-nomarginpar}
+ \geometry{includemp, marginpar=\g_ptxcd_marginpar_dim, marginparsep=\g_ptxcd_columnSep_dim}
\KOMAoptions{mpinclude}
- \savegeometry{TUDa@marginpar}
+ \savegeometry{TUDa-marginpar}
- \bool_if:NTF \g_TUDa_custommargins_bool {
- \AtBeginDocument{\savegeometry{TUDa@default}}
- \tl_const:Nn \c_TUDa_default_geometry_tl {TUDa@default}
+ \bool_if:NTF \g_ptxcd_custommargins_bool {
+ \AtBeginDocument{\savegeometry{TUDa-default}}
+ \tl_const:Nn \c_ptxcd_default_geometry_tl {TUDa-default}
}{
- \bool_if:NTF \g_TUDa_marginpar_bool {
- \tl_const:Nn \c_TUDa_default_geometry_tl {TUDa@marginpar}
+ \bool_if:NTF \g_ptxcd_marginpar_bool {
+ \tl_const:Nn \c_ptxcd_default_geometry_tl {TUDa-marginpar}
} {
- \tl_const:Nn \c_TUDa_default_geometry_tl {TUDa@nomarginpar}
+ \tl_const:Nn \c_ptxcd_default_geometry_tl {TUDa-nomarginpar}
+ }
+ \AtBeginDocument{
+ \loadgeometry{\c_ptxcd_default_geometry_tl}
+ \bool_if:NT \g_ptxcd_BCOR_titlepage_bool {\xdef\coverpageleftmargin{\the\dimexpr\coverpageleftmargin+\the\ta@bcor}}
}
- \AtBeginDocument{\loadgeometry{\c_TUDa_default_geometry_tl}}
}
- \dim_gset:Nn \g_TUDa_headwidth_dim {\paperwidth-\g_TUDa_innerMargin_dim-\g_TUDa_outerMargin_dim-\Gm@bindingoffset}
+ \dim_gset:Nn \g_ptxcd_headwidth_dim {\paperwidth-\g_ptxcd_innerMargin_dim-\g_ptxcd_outerMargin_dim-\Gm@bindingoffset}
- \cs_set:Nn \TUDa_disable_marginpar: {\loadgeometry{TUDa@nomarginpar}}
- \cs_set:Nn \TUDa_restore_typearea: {\loadgeometry{\c_TUDa_default_geometry_tl}}
+ \cs_set:Nn \ptxcd_disable_marginpar: {\loadgeometry{TUDa-nomarginpar}}
+ \cs_set:Nn \ptxcd_restore_typearea: {\loadgeometry{\c_ptxcd_default_geometry_tl}}
}{
- \let\TUDa_disable_marginpar:\relax
- \def\TUDa_restore_typearea:{
+ \let\ptxcd_disable_marginpar:\relax
+ \def\ptxcd_restore_typearea:{
\KOMAoptions{headinclude, footinclude}
- \bool_if:NTF \g_TUDa_marginpar_bool {\KOMAoptions{headwidth=textwithmarginpar,footwidth=textwithmarginpar}}
+ \bool_if:NTF \g_ptxcd_marginpar_bool {\KOMAoptions{headwidth=textwithmarginpar,footwidth=textwithmarginpar}}
{\KOMAoptions{headwidth=text,footwidth=text}}
+ \bool_if:NT \g_ptxcd_headline_bool {\KOMAoptions{headheight=\g_ptxcd_headheight_dim}}
\recalctypearea
}
- \TUDa_restore_typearea:
+ \ptxcd_restore_typearea:
}
@@ -383,25 +401,13 @@
\newcommand*{\institution}[1]{
- \def\TUDa@institution{#1}
+ \def\ptxcd_institution{#1}
}
-\gdef\TUDa@datename{Datum}
-\gdef\TUDa@dateseparator{:~}
-
-
-
-
-
-
-
+\gdef\ptxcd_datename{Datum}
+\gdef\ptxcd_dateseparator{:~}
-\dim_new:N \g_TUDa_titlerule_dim
-\dim_gset:Nn \g_TUDa_titlerule_dim {.5\c_TUDa_smallrule_dim}
-
-%\dim_new:N \g_TUDa_titlerule_sep_dim
-%\dim_set:Nn \g_TUDa_titlerule_sep_dim {1ex}
-\cs_new:Nn \TUDa_titlerule_sep: {\the\dp\strutbox}
+\cs_new:Nn \ptxcd_titlerule_sep: {\the\dp\strutbox}
\usepackage{tudacolors}
@@ -412,13 +418,13 @@
\addtokomafont{caption}{\sffamily}
-\KOMAoptions{footsepline=.5\c_TUDa_smallrule_dim}
-\bool_if:NT \g_TUDa_headline_bool {\KOMAoptions{headsepline=.5\c_TUDa_smallrule_dim}}
+\KOMAoptions{footsepline=.5\c_ptxcd_smallrule_dim}
+\setlength{\footheight}{\dimexpr\baselineskip+\c_ptxcd_rulesep_dim}
+\bool_if:NT \g_ptxcd_headline_bool {\KOMAoptions{headsepline=.5\c_ptxcd_smallrule_dim}}
%Adjust headheight
\AtBeginDocument{
-\KOMAoptions{headlines=1.5}
-\bool_if:NTF \g_TUDa_marginpar_bool
+\bool_if:NTF \g_ptxcd_marginpar_bool
{
\KOMAoptions {
headwidth=textwithmarginpar,
@@ -430,22 +436,22 @@
footwidth=text
}
}
-\box_if_exist:NF \TUDa@headline_box {
- \TUDa@makeheadrule[color=identbarcolor, width=\sls@headwidth]{TUDa@headline}
+\box_if_exist:NF \ptxcd_headrule_box {
+ \ptxcd_makeheadrule[color=identbarcolor, width=\sls@headwidth]{ptxcd_headrule}
}
}
\newpairofpagestyles[scrheadings]{TUDa.headings}{
- \KOMAoptions{headsepline, headlines=1.25, footlines=1.25}
+ \KOMAoptions{headsepline, headlines=1.25}
\setkomafont{pagehead}{}
\chead{}
\ohead{\headmark}
}
-\newpairofpagestyles{TUDa}{
+\newpairofpagestyles{TUDa.pub}{
\KOMAoptions{plainfootsepline}
- \bool_if:NTF \g_TUDa_marginpar_bool
+ \bool_if:NTF \g_ptxcd_marginpar_bool
{
\KOMAoptions {
headwidth=textwithmarginpar,
@@ -457,31 +463,37 @@
footwidth=text
}
}
-
-\setkomafont{pagehead}{\Large\bfseries}
\RedeclareLayer[
clone=scrheadings.head.above.line,
background,
contents={
- \dim_compare:nF {\box_wd:N \TUDa@headline_box=\layerwidth} {
- \TUDa@makeheadrule*[color=identbarcolor, width=\layerwidth]{TUDa@headline}
+ \dim_compare:nF {\box_wd:N \ptxcd_headrule_box=\layerwidth} {
+ \ptxcd_makeheadrule[color=identbarcolor, width=\layerwidth]{ptxcd_headrule}
}
- \smash{\TUDa@headline}
+ \smash{\ptxcd_headrule}
}
- ]{TUDa.head.above.line}
+ ]{TUDa.pub.head.above.line}
\RedeclareLayer[
clone=plain.scrheadings.head.above.line,
background,
contents={
- \dim_compare:nF {\box_wd:N \TUDa@headline_box=\layerwidth} {
- \TUDa@makeheadrule*[color=identbarcolor, width=\layerwidth]{TUDa@headline}
+ \dim_compare:nF {\box_wd:N \ptxcd_headrule_box=\layerwidth} {
+ \ptxcd_makeheadrule[color=identbarcolor, width=\layerwidth]{ptxcd_headrule}
}
- \smash{\TUDa@headline}
+ \smash{\ptxcd_headrule}
}
- ]{plain.TUDa.head.above.line}
- \bool_if:NT \g_TUDa_headline_bool {
+ ]{plain.TUDa.pub.head.above.line}
+ \ModifyLayer[addvoffset=\c_ptxcd_rulesep_dim]{TUDa.pub.foot.even}
+ \ModifyLayer[addvoffset=\c_ptxcd_rulesep_dim]{TUDa.pub.foot.odd}
+ \ModifyLayer[addvoffset=\c_ptxcd_rulesep_dim]{TUDa.pub.foot.oneside}
+ \ModifyLayer[addvoffset=\c_ptxcd_rulesep_dim]{plain.TUDa.pub.foot.even}
+ \ModifyLayer[addvoffset=\c_ptxcd_rulesep_dim]{plain.TUDa.pub.foot.odd}
+ \ModifyLayer[addvoffset=\c_ptxcd_rulesep_dim]{plain.TUDa.pub.foot.oneside}
+ \bool_if:NT \g_ptxcd_headline_bool {
+ \setkomafont{pagehead}{\Large\bfseries}
+ \KOMAoptions{headlines=2}
\clist_map_variable:nNn {oneside, even, odd} \l_tmpa_tl {
- \ModifyLayer[pretocontents={\rule[-6pt]{0pt}{\layerheight}}]{TUDa.head.\l_tmpa_tl}
+ \ModifyLayer[pretocontents={\rule[-6pt]{0pt}{\layerheight}}]{TUDa.pub.head.\l_tmpa_tl}
}
\lehead{\headmark}
\lohead{\headmark}
@@ -489,7 +501,12 @@
\ofoot[\pagemark]{\pagemark}
}
-\cs_new:Nn \TUDa_sls@leftmargin: {%
+\DeclarePageStyleAlias{TUDa}{TUDa.pub}
+\DeclarePageStyleAlias{plain.TUDa}{plain.TUDa.pub}
+\pagestyle{TUDa}
+
+\renewcommand*{\titlepagestyle}{plain.TUDa}
+\cs_new:Nn \ptxcd_sls@leftmargin: {%
\dimexpr
\if@twoside
\ifodd\value{page}
@@ -500,41 +517,41 @@
\else
\oddsidemargin
\fi
- \bool_if:NT \g_TUDa_twocolumn_bool {
+ \bool_if:NT \g_ptxcd_twocolumn_bool {
-\marginparwidth-\marginparsep
}
+1in\relax
}
-\pagestyle{TUDa}
+
%Titelseite
-\tl_new:N \g_TUDa_titleimage_code_tl
-\tl_gset_eq:NN \g_TUDa_titleimage_code_tl \c_empty_tl
-\newcommand{\titleimage}[1]{\tl_gset:Nn \g_TUDa_titleimage_code_tl {#1}}
+\tl_new:N \g_ptxcd_titleimage_code_tl
+\tl_gset_eq:NN \g_ptxcd_titleimage_code_tl \c_empty_tl
+\newcommand{\titleimage}[1]{\tl_gset:Nn \g_ptxcd_titleimage_code_tl {#1}}
+
+\box_new:N \g_ptxcd_title_box
+\skip_new:N \g_ptxcd_title_fill_skip
-\box_new:N \g_TUDa_title_box
-\skip_new:N \g_TUDa_title_fill_skip
-\renewcommand{\titlepagestyle}{TUDa}
-\seq_new:N \g_TUDa_author_seq
+\seq_new:N \g_ptxcd_author_seq
\renewcommand*\author[1]{
- \seq_gset_split:Nnn \g_TUDa_author_seq {\and} {#1}
+ \seq_gset_split:Nnn \g_ptxcd_author_seq {\and} {#1}
}
-\msg_new:nnn {TUDaPub} {unknown-language} {
+\msg_new:nnn{tudapub} {unknown-language} {
You~selected~an~unknown~language~#1.\\
The~Variable~#2~does~not~have~a~predefined~value.\\
Ensure~to~redefine~#2~to~match~your~language.\\
Otherwise~the~ngerman~vaue~#3~will~be~used.
}
-\cs_new:Nn \TUDa_define_captionFallback:Nn {
+\cs_new:Nn \ptxcd_define_captionFallback:Nn {
\providecommand*#1{
- \msg_warning:nnxxx {TUDaPub} {unknown-language}
+ \msg_warning:nnxxx{tudapub} {unknown-language}
{\languagename} {\exp_not:N #1} {#2}
\def#1{#2}
}
@@ -543,129 +560,125 @@
\renewcommand*{\@author}{
\begingroup
\hyphenpenalty=100000
- \seq_use:Nnnn \g_TUDa_author_seq {~\authorandname{}~} {,~} {~\&~}
+ \seq_use:Nnnn \g_ptxcd_author_seq {~\authorandname{}~} {,~} {~\&~}
\endgroup
}
-\msg_new:nnn {TUDaPub} {infobox-too-high} {
+\msg_new:nnn{tudapub} {infobox-too-high} {
The~height~of~your~Infobox~exeeds~the~space~reserved~in~the~title~block.\\
You~should~probably~switch~to~logo=bottom~or~reduce~the~number/size~of~InfoBoxes.
}
-\cs_set:Nn \TUDa_adjust_titlepage_style: {
- \dim_set:Nn \l_tmpa_dim {\fp_to_dim:n {\expandafter \use_ii:nn\TUDa_title_fontsize: *2.8}}
- \dim_compare:nT {\box_ht:N \g_TUDa_title_box < \l_tmpa_dim} {
- \skip_set:Nn \g_TUDa_title_fill_skip {\dim_eval:n {\l_tmpa_dim - \box_ht:N \g_TUDa_title_box}}
+\cs_set:Nn \ptxcd_adjust_titlepage_style: {
+ \dim_set:Nn \l_tmpa_dim {\fp_to_dim:n {\expandafter \use_ii:nn\ptxcd_title_fontsize: *2.8}}
+ \dim_compare:nT {\box_ht:N \g_ptxcd_title_box < \l_tmpa_dim} {
+ \skip_set:Nn \g_ptxcd_title_fill_skip {\dim_eval:n {\l_tmpa_dim - \box_ht:N \g_ptxcd_title_box}}
}
\dim_set:Nn \l_tmpa_dim {
- \box_ht:N \TUDa@headline_box+\box_dp:N \TUDa@headline_box-\g_TUDa_titlerule_dim
- +\box_ht:N \g_TUDa_title_box+.5\c_TUDa_logoheight_dim+\g_TUDa_title_fill_skip+
- \box_dp:N \g_TUDa_title_box
+ \box_ht:N \ptxcd_headrule_box+\box_dp:N \ptxcd_headrule_box-\g_ptxcd_titlerule_dim
+ +\box_ht:N \g_ptxcd_title_box+.5\c_ptxcd_logoheight_dim+\g_ptxcd_title_fill_skip+\box_dp:N \g_ptxcd_title_box
}
\ModifyLayer[
addvoffset=\l_tmpa_dim,
addheight=-\l_tmpa_dim
+ -\box_dp:N \g_ptxcd_sponsor_box
+ +\c_ptxcd_rulesep_dim
]{title.TUDa.image}
- \bool_if:NT \g_TUDa_logo@inhead_bool {
+ \bool_if:NT \g_ptxcd_logo@inhead_bool {
\ModifyLayer[
- addvoffset=\dim_eval:n {\box_ht:N \TUDa@headline_box+\box_dp:N \TUDa@headline_box-\g_TUDa_titlerule_dim},
- height={\box_ht:N \g_TUDa_title_box+ \g_TUDa_title_fill_skip+.5\c_TUDa_logoheight_dim}
+ addvoffset=\dim_eval:n {\box_ht:N \ptxcd_headrule_box+\box_dp:N \ptxcd_headrule_box-\g_ptxcd_titlerule_dim},
+ height={\box_ht:N \g_ptxcd_title_box+ \g_ptxcd_title_fill_skip+.5\c_ptxcd_logoheight_dim
+ }
]{title.TUDa.background}
\AddLayersToPageStyle{title.TUDa}{title.TUDa.background}
}
-
-
-
- \thispagestyle{title.TUDa}
-
\vspace*{\dim_eval:n {
-\topskip
- -\g_TUDa_titlerule_dim
- +\box_ht:N \TUDa@headline_box
- +\box_dp:N \TUDa@headline_box
- +.5\c_TUDa_logoheight_dim
+ -\g_ptxcd_titlerule_dim
+ +\box_ht:N \ptxcd_headrule_box
+ +\box_dp:N \ptxcd_headrule_box
+ +.5\c_ptxcd_logoheight_dim
}}
\nointerlineskip
- \TUDa_Setup_Title_box:
+ \ptxcd_setup_title_box:
- \bool_if:NT \g_TUDa_logo@inhead_bool {
- \dim_compare:nT {\box_ht:N \g_TUDa_title_info_box+ \box_dp:N \g_TUDa_title_info_box > \box_ht:N \g_TUDa_title_box}
- {\msg_warning:nn {TUDaPub} {infobox-too-high}}
+ \bool_if:NT \g_ptxcd_logo@inhead_bool {
+ \dim_compare:nT {\box_ht:N \g_ptxcd_title_info_box+ \box_dp:N \g_ptxcd_title_info_box > \box_ht:N \g_ptxcd_title_box}
+ {\msg_warning:nn{tudapub} {infobox-too-high}}
\makebox[\linewidth][r]{\smash{
\raisebox{-\height}{
- \makebox[2.2\c_TUDa_logoheight_dim][l]{
+ \makebox[2.2\c_ptxcd_logoheight_dim][l]{
% }
- \box_use:N \g_TUDa_title_info_box
+ \box_use:N \g_ptxcd_title_info_box
}}
}}
}
\par
- \vspace*{\skip_use:N \g_TUDa_title_fill_skip}
+ \vspace*{\skip_use:N \g_ptxcd_title_fill_skip}
\setlength{\fboxsep}{\z@}
}
\newkomafont{institution}{\sffamily}
+\newkomafont{titleinfo}{\sffamily}
\setkomafont{subtitle}{\bfseries}
\setkomafont{subject}{}
\setkomafont{publishers}{}
\setkomafont{author}{}
\setkomafont{date}{}
-\bool_if:NF \g_TUDa_smalltitle_bool {
- \int_gdecr:N \g_TUDa_paper_int
+\bool_if:NF \g_ptxcd_smalltitle_bool {
+ \int_gdecr:N \g_ptxcd_paper_int
}
-\file_input:n {tuda-a\int_use:N \g_TUDa_paper_int paper.clo}
-\TUDa_setup_title_sizes:
+\file_input:n {tuda-a\int_use:N \g_ptxcd_paper_int paper.clo}
+\ptxcd_setup_title_sizes:
-\seq_new:N \g_TUDa_title_info_seq
-\box_new:N \g_TUDa_title_info_box
+\seq_new:N \g_ptxcd_title_info_seq
+\box_new:N \g_ptxcd_title_info_box
-\colorlet{TUDa@InfoBoxColor}{white}
-
-\cs_new:Nn \TUDa_make_title_info_box:n {
+\cs_new:Nn \ptxcd_make_title_info_box:n {
\setlength{\fboxsep}{1.5mm}%
- \colorbox{TUDa@InfoBoxColor}{
- \makebox[\dim_eval:n {2.2\c_TUDa_logoheight_dim-\fboxsep}][r]{
- \parbox{2\c_TUDa_logoheight_dim}{
- \expandafter\fontsize\TUDa_titlethanks_fontsize:\selectfont\usekomafont{institution}%
+ \colorbox{InfoBox}{
+ \makebox[\dim_eval:n {2.2\c_ptxcd_logoheight_dim-\fboxsep}][r]{
+ \parbox{2\c_ptxcd_logoheight_dim}{
+ \expandafter\fontsize\ptxcd_titlethanks_fontsize:\selectfont\usekomafont{institution}%
\raggedright%
#1
}}}
}
-\cs_new:Nn \TUDa_make_title_logo_box:n {
+\cs_new:Nn \ptxcd_make_title_logo_box:n {
\setlength{\fboxsep}{\z@}%
- \parbox{2.2\c_TUDa_logoheight_dim}{
- \colorbox{TUDa@InfoBoxColor}{
+ \parbox{2.2\c_ptxcd_logoheight_dim}{
+ \colorbox{InfoBox}{
\rlap{
- \makebox[2.5\c_TUDa_logoheight_dim][r]{
- \colorbox{TUDa@InfoBoxColor}{#1\hspace{.3\c_TUDa_logoheight_dim}}
+ \makebox[2.5\c_ptxcd_logoheight_dim][r]{
+ \colorbox{InfoBox}{#1\hspace{.3\c_ptxcd_logoheight_dim}}
}
}
}
}
}
-\newcommand{\addTitleBox}[1]{\seq_gput_right:Nn \g_TUDa_title_info_seq {\TUDa_make_title_info_box:n {#1}}}
+\newcommand{\addTitleBox}[1]{\seq_gput_right:Nn \g_ptxcd_title_info_seq {\ptxcd_make_title_info_box:n {#1}}}
\NewDocumentCommand{\addTitleBoxLogo}{sm}{
\IfBooleanTF{#1}{
- \seq_gput_right:Nn \g_TUDa_title_info_seq {
- \TUDa_make_title_logo_box:n {#2}
+ \seq_gput_right:Nn \g_ptxcd_title_info_seq {
+ \ptxcd_make_title_logo_box:n {#2}
}
}{
- \seq_gput_right:Nn \g_TUDa_title_info_seq {
- \TUDa_make_title_logo_box:n {
+ \seq_gput_right:Nn \g_ptxcd_title_info_seq {
+ \ptxcd_make_title_logo_box:n {
\hbox_set:Nn \l_tmpa_box {
- \includegraphics[width=1.5\c_TUDa_logoheight_dim]{#2}
+ \includegraphics[width=1.5\c_ptxcd_logoheight_dim]{#2}
}
- \dim_set:Nn \l_tmpa_dim {2\c_TUDa_logoheight_dim/3}
+ \dim_set:Nn \l_tmpa_dim {2\c_ptxcd_logoheight_dim/3}
\dim_compare:nTF {\box_ht:N \l_tmpa_box > \l_tmpa_dim}
{\includegraphics[width=\l_tmpa_dim]{#2}}
{\box_use:N \l_tmpa_box}
@@ -674,25 +687,26 @@
}
}
-\addTitleBoxLogo*{\makebox[\linewidth][l]{\includegraphics[height=\c_TUDa_logoheight_dim]{\g_TUDa_logofile_tl}}}
+\addTitleBoxLogo*{\makebox[\linewidth][l]{\includegraphics[height=\c_ptxcd_logoheight_dim]{\g_ptxcd_logofile_tl}}}
\DeclareNewLayer[textarea,background,mode=picture,
contents={
- \tl_if_empty:NTF \g_TUDa_titleimage_code_tl
- {\bool_if:NT \g_TUDa_colorback_bool {\putLL{\color{identbarcolor}\rule{\layerwidth}{\layerheight}}}}
- {\putUL{\color{identbarcolor}\raisebox{-\height}{\parbox[t]{\textwidth}{
- \let\width\layerwidth
- \let\height\layerheight
- \g_TUDa_titleimage_code_tl
+ \tl_if_empty:NTF \g_ptxcd_titleimage_code_tl
+ {\bool_if:NT \g_ptxcd_colorback_bool {\putLL{\color{identbarcolor}\rule{\layerwidth}{\layerheight}}}}
+ {\putUL{\color{identbarcolor}
+ \let\width\layerwidth
+ \let\height\layerheight
+ \raisebox{-\height}{\parbox[t]{\textwidth}{
+ \leavevmode\ignorespaces
+ \g_ptxcd_titleimage_code_tl
}}}}
- \bool_if:NF \g_TUDa_logo@inhead_bool {
- \put(\dim_to_decimal_in_unit:nn {\layerwidth-2.2\c_TUDa_logoheight_dim
+ \bool_if:NF \g_ptxcd_logo@inhead_bool {
+ \put(\dim_to_decimal_in_unit:nn {\layerwidth-2.2\c_ptxcd_logoheight_dim
} {\unitlength},
- \dim_to_decimal_in_unit:nn {\layerheight-\box_ht:N \g_TUDa_title_info_box - .5\c_TUDa_logoheight_dim} {\unitlength}){
- \rlap{\box_use:N \g_TUDa_title_info_box}
+ \dim_to_decimal_in_unit:nn {\layerheight-\box_ht:N \g_ptxcd_title_info_box - .5\c_ptxcd_logoheight_dim} {\unitlength}){
+ \rlap{\box_use:N \g_ptxcd_title_info_box}
}
}
- \put(0,0){\rule{\linewidth}{\g_TUDa_titlerule_dim}}
}
]{title.TUDa.image}
@@ -701,28 +715,41 @@ contents={\color{identbarcolor}\rule{\layerwidth}{\layerheight}}
]{title.TUDa.background}
\DeclareNewLayer[
- mode=picture,
- align=tl,
+ clone=plain.TUDa.pub.head.above.line,
hoffset=\coverpageleftmargin,
- voffset=\coverpagetopmargin,
width=\paperwidth-\coverpageleftmargin-\coverpagerightmargin,
- contents={
-% \box_if_exist:NF \TUDa@title_headline_box
-% {}
- \dim_compare:nF {\box_wd:N \TUDa@title_headline_box=\layerwidth} {
- \TUDa@makeheadrule*[color=identbarcolor, width=\layerwidth]{TUDa@title_headline}
- }
- \putUL{\TUDa@title_headline}
- }
]{title.TUDa.rule}
-\TUDa@makeheadrule[color=identbarcolor, width=\textwidth]{TUDa@title_headline}
-\cs_new:Nn \TUDa_Setup_Title_box: {
- \hbox_gset:Nn \g_TUDa_title_info_box
+
+\ptxcd_makeheadrule[color=identbarcolor, width=\textwidth]{ptxcd_title_headline}
+
+\cs_new:Nn \ptxcd_setup_title_box: {
+ \hbox_gset:Nn \g_ptxcd_title_info_box
{
- \parbox{\dimexpr2.5\c_TUDa_logoheight_dim}{
- \seq_use:Nn \g_TUDa_title_info_seq {\par\nointerlineskip\vspace{\dim_eval:n {\c_TUDa_largerule_dim+\c_TUDa_rulesep_dim}}}
+ \parbox{\dimexpr2.5\c_ptxcd_logoheight_dim}{
+ \seq_use:Nn \g_ptxcd_title_info_seq {\par\nointerlineskip\vspace{\dim_eval:n {\c_ptxcd_largerule_dim+\c_ptxcd_rulesep_dim}}}
+ }
+ }
+}
+
+\cs_new:Nn \ptxcd_setup_sponsor_box: {
+ \bool_if:nF {\seq_if_empty_p:N \g_ptxcd_sponsors_seq && \tl_if_empty_p:N \@sponsors} {
+ \hbox_gset:Nn \g_ptxcd_sponsor_box {
+ \def\height{\dimexpr.8\c_ptxcd_logoheight_dim\relax}
+ \parbox[t]{\textwidth}{
+ \rule{\linewidth}{\g_ptxcd_titlerule_dim}\par\nointerlineskip
+ \addvspace{\c_ptxcd_rulesep_dim}
+ \seq_use:Nn \g_ptxcd_sponsors_seq {\hfill}
+ \ifhmode\par\fi
+ \ifx\@sponsors\@empty
+ \else
+ \addvspace{.1\c_ptxcd_logoheight_dim}
+ \@sponsors\par
+ \fi
+ \par\nointerlineskip\addvspace{\c_ptxcd_rulesep_dim}
+ \rule{\linewidth}{\g_ptxcd_titlerule_dim}
+ }
}
}
}
@@ -732,9 +759,9 @@ contents={\color{identbarcolor}\rule{\layerwidth}{\layerheight}}
%Logos
\RequirePackage{graphicx}
-\if_bool:N \g_TUDa@pdfa_bool
+\if_bool:N \g_ptxcd_pdfa_bool
- \msg_new:nnn {TUDaPub} {prefer-lualatex} {
+ \msg_new:nnn{tudapub} {prefer-lualatex} {
You~use~pdfa-mode~in~#1.\\
This~can~lead~to~incompatiblities~especially~with~older~compiler~versions.\\
You~should~prefer~using~lualatex.
@@ -745,30 +772,30 @@ contents={\color{identbarcolor}\rule{\layerwidth}{\layerheight}}
\RequirePackage{pdfx}
\sys_if_engine_pdftex:T {
- \msg_warning:nnn {TUDaPub} {prefer-lualatex} {PDFTeX}
+ \msg_warning:nnn{tudapub} {prefer-lualatex} {PDFTeX}
}
\sys_if_engine_pdftex:T {
- \msg_warning:nnn {TUDaPub} {prefer-lualatex} {XeTeX}
+ \msg_warning:nnn{tudapub} {prefer-lualatex} {XeTeX}
}
\@ifpackagelater{pdfx}{2018/12/01}{
}{
- \msg_new:nnnn {TUDaPub} {outdated-pdfx} {
+ \msg_new:nnnn{tudapub} {outdated-pdfx} {
Your~Version~of~the~PDFx-package~is~too~old~to~support~all~methods~required~by~tudapubs~pdfa-mode.\\
Either~update~your~TeX-distribution~or~switch~to~pdfa=false.
- }{See~DEMO-TUDaPub~for~further~information.}
- \msg_error:nn {TUDaPub} {outdated-pdfx}
+ }{See~DEMO-tudapub~for~further~information.}
+ \msg_error:nn{tudapub} {outdated-pdfx}
}
%%hyperref
\hypersetup{hidelinks, unicode}
- \iow_new:N \TUDa@xmpdata_stream
- \tl_new:N \g_TUDa@xmp_title_tl
- \tl_new:N \g_TUDa@xmp_author_tl
+ \iow_new:N \ptxcd_xmpdata_stream
+ \tl_new:N \g_ptxcd_xmp_title_tl
+ \tl_new:N \g_ptxcd_xmp_author_tl
\cs_if_exist:NF \prop_gput_if_new:Nnx {
\cs_generate_variant:Nn \prop_gput_if_new:Nnn {Nnx}
@@ -776,29 +803,29 @@ contents={\color{identbarcolor}\rule{\layerwidth}{\layerheight}}
\cs_if_exist:NF \tl_to_str:V {\cs_generate_variant:Nn \tl_to_str:N {V}}
- \cs_new:Nn \TUDa_pass_TitleData: {
- \iow_open:Nn \TUDa@xmpdata_stream {\jobname.xmpdata}
+ \cs_new:Nn \ptxcd_pass_TitleData: {
+ \iow_open:Nn \ptxcd_xmpdata_stream {\jobname.xmpdata}
\begingroup
\def\newline{}
\def\\{}
\let\thanks\use_none:n
\cs_set:Npn \and {\exp_not:n {\exp_not:N \sep}}
\use:c {Hy@pdfstringtrue}
- \tl_gset:Nf \g_TUDa@xmp_title_tl {\@title}
- \prop_gput_if_new:Nnx \g_TUDa_MetaData_prop {title} {\tl_to_str:V \g_TUDa@xmp_title_tl}
- \prop_if_in:NnF \g_TUDa_MetaData_prop {author} {
- \tl_gset:Nx \g_TUDa@xmp_author_tl {\seq_use:Nn \g_TUDa_author_seq {\exp_not:N \sep}}
- \tl_gset:Nx \g_TUDa@xmp_author_tl {\g_TUDa@xmp_author_tl}
- \prop_gput:Nnx \g_TUDa_MetaData_prop {author} {\tl_to_str:V \g_TUDa@xmp_author_tl}
+ \tl_gset:Nf \g_ptxcd_xmp_title_tl {\@title}
+ \prop_gput_if_new:Nnx \g_ptxcd_MetaData_prop {title} {\tl_to_str:V \g_ptxcd_xmp_title_tl}
+ \prop_if_in:NnF \g_ptxcd_MetaData_prop {author} {
+ \tl_gset:Nx \g_ptxcd_xmp_author_tl {\seq_use:Nn \g_ptxcd_author_seq {\exp_not:N \sep}}
+ \tl_gset:Nx \g_ptxcd_xmp_author_tl {\g_ptxcd_xmp_author_tl}
+ \prop_gput:Nnx \g_ptxcd_MetaData_prop {author} {\tl_to_str:V \g_ptxcd_xmp_author_tl}
}
- \prop_gput_if_new:Nnn \g_TUDa_MetaData_prop {publisher}{TU~Darmstadt}
- \prop_gput_if_new:Nnn \g_TUDa_MetaData_prop {creator}{LaTeX~using~TUDa-CI}
+ \prop_gput_if_new:Nnn \g_ptxcd_MetaData_prop {publisher}{TU~Darmstadt}
+ \prop_gput_if_new:Nnn \g_ptxcd_MetaData_prop {creator}{LaTeX~using~TUDa-CI}
\use:c {pdfx@localcommands}%should be held inside group
- \prop_map_function:NN \g_TUDa_MetaData_prop \TUDa_write_xmp_line:nn
+ \prop_map_function:NN \g_ptxcd_MetaData_prop \ptxcd_write_xmp_line:nn
\endgroup
- \iow_close:N \TUDa@xmpdata_stream
+ \iow_close:N \ptxcd_xmpdata_stream
}
- \cs_new:Nn \TUDa_write_xmp_line:nn {
+ \cs_new:Nn \ptxcd_write_xmp_line:nn {
\begingroup
\cs_set:Npn \sep {\exp_not:N \sep}
%Fallback test for older kernels
@@ -812,58 +839,58 @@ contents={\color{identbarcolor}\rule{\layerwidth}{\layerheight}}
\tl_set:Nx \l_tmpa_tl {\tl_mixed_case:n {#1}}
}
\cs_if_exist:cTF {\l_tmpa_tl}{
- \iow_now:Nx \TUDa@xmpdata_stream {
+ \iow_now:Nx \ptxcd_xmpdata_stream {
\c_backslash_str \l_tmpa_tl {\exp_not:n {#2}}
}
}{
- \msg_error:nnn {TUDaPub} {unknown-metadata} {#1}
+ \msg_error:nnn{tudapub} {unknown-metadata} {#1}
}
\endgroup
}
-\prop_new:N \g_TUDa_MetaData_prop
+\prop_new:N \g_ptxcd_MetaData_prop
\newcommand*{\Metadata}[1]{
- \keyval_parse:NNn \use_none:n \TUDa_set_metadata_prop:nn
+ \keyval_parse:NNn \use_none:n \ptxcd_set_metadata_prop:nn
{#1}
}
- \cs_set:Nn \TUDa_set_metadata_prop:nn {
- \exp_args:NNf \prop_gput:Nnn \g_TUDa_MetaData_prop {\tl_lower_case:n{#1}} {#2}
+ \cs_set:Nn \ptxcd_set_metadata_prop:nn {
+ \exp_args:NNf \prop_gput:Nnn \g_ptxcd_MetaData_prop {\tl_lower_case:n{#1}} {#2}
}
- \msg_new:nnnn {TUDaPub} {unknown-metadata} {
+ \msg_new:nnnn{tudapub} {unknown-metadata} {
You~ used~ the~ #1~ metadata~ entry.\\
I~ don't~ know~ how~ to~ handle~ that.\\
It~ will~ be~ ignored.
} {See~ TUDa-CI~ or~ pdfx~ documentation~ for~ details.}
\else:
- \msg_new:nnn {tudaPub} {no-pdfa}{The~ tudapub~ class~ won't~ create~ PDF/A-mode.}
- \msg_info:nn {tudaPub} {no-pdfa}
+ \msg_new:nnn{tudapub} {no-pdfa}{The~ tudapub~ class~ won't~ create~ PDF/A-mode.}
+ \msg_info:nn{tudapub} {no-pdfa}
%%hyperref
\RequirePackage[hidelinks, unicode]{hyperref}
\newcommand{\Metadata}[1]{\ClassError{tudapub}{You~cannot~use~\string\Metadata\ ~with~pdfa=false.}{}}
\fi:
-\csname if@TUDa@T1\endcsname
-\ifLuaTeX
-\RequirePackage[utf8]{luainputenc}
-\fi
-\fi
+\box_new:N \g_ptxcd_sponsor_box
+\seq_new:N \g_ptxcd_sponsors_seq
+\def\AddSponsor{\seq_gput_right:Nn \g_ptxcd_sponsors_seq}
+\def\sponsors#1{\def\@sponsors{#1}}
+\sponsors{}
-\exp_args:NV \tl_if_eq:nnTF {\g_TUDa_pubType_tl} {thesis} {
+\str_if_eq:VnTF \g_ptxcd_pubType_tl {thesis} {
\input{tudathesis.cfg}
} {
-\msg_new:nnnn {TUDa/pub} {only-thesis} {You~tried~to~use~\use:c { #1}.~This~macro~is~only~available~for~publications~of~type~thesis}{See~tuda-ci~documentation~for~further~information}
+\msg_new:nnnn {tudapub} {only-thesis} {You~tried~to~use~\use:c { #1}.~This~macro~is~only~available~for~publications~of~type~thesis}{See~tuda-ci~documentation~for~further~information}
\clist_map_inline:nn {birthplace, group, examdate, submissiondate, tuprints, urn, reviewer} {
\expandafter\newcommand\csname #1\endcsname[2][]{
- \msg_error:nnn {TUDa/pub} {only-thesis} {#1}
+ \msg_error:nnn {tudapub} {only-thesis} {#1}
}
}
-\newcommand*{\TUDa@title@footnote}[2][1]{
+\newcommand*{\ptxcd_title@footnote}[2][1]{
\textsuperscript{\@fnsymbol{#1}}#2
}
@@ -871,9 +898,9 @@ contents={\color{identbarcolor}\rule{\layerwidth}{\layerheight}}
% Copyright (c) 1994-2019 Markus Kohm [komascript at gmx info]
\renewcommand*{\maketitle}[1][1]{
\def\and{,~ }
- \cs_if_exist_use:N \TUDa_pass_TitleData:
+ \cs_if_exist_use:N \ptxcd_pass_TitleData:
\if@titlepage
- \TUDa_disable_marginpar:
+ \ptxcd_disable_marginpar:
\begin{titlepage}
\setcounter{page}{%
#1%
@@ -909,24 +936,34 @@ contents={\color{identbarcolor}\rule{\layerwidth}{\layerheight}}
\let\titlepage@restore\relax
\fi
\setparsizes{\z@}{\z@}{\z@\@plus 1fil}\par@updaterelative
- \hbox_gset:Nn \g_TUDa_title_box {
+ \ptxcd_setup_sponsor_box:
+ \hbox_gset:Nn \g_ptxcd_title_box {
\parbox[t]{\linewidth}{
- \begin{minipage}[b]{\bool_if:NT \g_TUDa_logo@inhead_bool {.75}\linewidth}
- \bool_if:NT \g_TUDa_logo@inhead_bool {\color{textonaccentcolor}}
- \begin{addmargin}{3mm}
+ \begin{minipage}[b]{\bool_if:NT \g_ptxcd_logo@inhead_bool {.75}\linewidth}
+ \bool_if:NT \g_ptxcd_logo@inhead_bool {\color{textonaccentcolor}}
+ \tl_if_empty:NF \@titlehead {
+ \begin{addmargin}{3mm}
+ {\usekomafont{titlehead}{\@titlehead\par}}
+ \end{addmargin}
+ }
+ \begin{addmargin}[\dim_eval:n {\box_if_empty:NF \g_ptxcd_PaperID_box {\box_wd:N\g_ptxcd_PaperID_box+.5\c_ptxcd_logoheight_dim} +3mm}]{3mm}
\raggedright
- \tl_if_empty:NF \@titlehead {\usekomafont{titlehead}{\@titlehead\par}}
\leavevmode\usekomafont{title}%
- \expandafter\fontsize\TUDa_title_fontsize:
+ \expandafter\fontsize\ptxcd_title_fontsize:
\selectfont
- \@title\strut\par
- \vskip0pt
+ \llap{\raisebox{\dimexpr-\height+.5\baselineskip}[0pt][0pt]{\box_use:N \g_ptxcd_PaperID_box}\hspace{.5\c_ptxcd_logoheight_dim}}
+ \@title\strut
+ \par
+ \box_if_empty:NTF \g_ptxcd_PaperID_box
+ {\vskip0pt}
+ {\rule{0pt}{.5\c_ptxcd_logoheight_dim}}
\end{addmargin}
\end{minipage}%
\par\nointerlineskip
- \rule{\linewidth}{\g_TUDa_titlerule_dim}\par
+ \rule{\linewidth}{\g_ptxcd_titlerule_dim}\par\vspace{\c_ptxcd_rulesep_dim}
\begin{addmargin}{3mm}
- \expandafter\fontsize\TUDa_titleinfo_fontsize:
+ \usekomafont{titleinfo}
+ \expandafter\fontsize\ptxcd_titleinfo_fontsize:
\selectfont
{\ifx\@subtitle\@empty\else\usekomafont{subtitle}{\@subtitle\par}\fi}%
{\ifx\@subject\@empty\else\usekomafont{subject}{\@subject\par}\fi}
@@ -936,29 +973,31 @@ contents={\color{identbarcolor}\rule{\layerwidth}{\layerheight}}
\@author
\par
}%
- {\usekomafont{date}{\@date\par}}%
- {\usekomafont{publishers}{\@publishers \par}}%
+ {\ifx\@date\@empty\else\usekomafont{date}{\@date\par}\fi}%
+ {\ifx\@publishers\@empty\else\usekomafont{publishers}{\@publishers \par}\fi}%
\end{addmargin}
- \tl_if_empty:NF \@thanks {
- \expandafter\fontsize\TUDa_titlethanks_fontsize:\selectfont\par
- \rule{\linewidth}{\g_TUDa_titlerule_dim}\par
- \begin{addmargin}{3mm}
- \let\footnotetext\TUDa@title@footnote
- \@thanks
- \end{addmargin}
- \par\vspace{-\dp\strutbox}
- \let\@thanks\@empty
- }
- \rule{\linewidth}{\g_TUDa_titlerule_dim}\par}
-
+ \tl_if_empty:NF \@thanks {
+ \expandafter\fontsize\ptxcd_titlethanks_fontsize:\selectfont\par
+ \rule{\linewidth}{\g_ptxcd_titlerule_dim}\par
+ \begin{addmargin}{3mm}
+ \let\footnotetext\ptxcd_title@footnote
+ \@thanks
+ \end{addmargin}
+ \par\vspace{-\dp\strutbox}
+ \let\@thanks\@empty
+ }
+ \rule{\linewidth}{\g_ptxcd_titlerule_dim}\par}
}
-
- \TUDa_adjust_titlepage_style:
-
-
- \nointerlineskip\box_use:N \g_TUDa_title_box
+ \ptxcd_adjust_titlepage_style:
+ \thispagestyle{title.TUDa}
+ \nointerlineskip\box_use:N \g_ptxcd_title_box
\par
- \vfill\null
+ \vfill
+ \box_if_empty:NTF \g_ptxcd_sponsor_box {
+ \raisebox{-\c_ptxcd_rulesep_dim}[0pt][0pt]{\rule{\linewidth}{\g_ptxcd_titlerule_dim}}
+ }{
+ \box_use:N \g_ptxcd_sponsor_box
+ }
\if@twoside
\@tempswatrue
\expandafter\ifnum \@nameuse{scr@v@3.12}>\scr@compatibility\relax
@@ -992,8 +1031,8 @@ contents={\color{identbarcolor}\rule{\layerwidth}{\layerheight}}
\setcounter{footnote}{0}%
\global\let\and\relax
\cleardoublepage
- \TUDa_restore_typearea:
- \aftergroup\TUDa_restore_typearea:
+ \ptxcd_restore_typearea:
+ \aftergroup\ptxcd_restore_typearea:
\else
\par
\@tempcnta=%
@@ -1022,26 +1061,40 @@ contents={\color{identbarcolor}\rule{\layerwidth}{\layerheight}}
\let\titlepage@restore\relax
\def\thefootnote{\fnsymbol{footnote}}
\next@tdpage
- \ifx\@extratitle\@empty
- \ifx\@frontispiece\@empty\else \mbox{}\fi
- \else
- \@makeextratitle
- \fi
- \ifx\@frontispiece\@empty
- \ifx\@extratitle\@empty\else\next@tdpage\fi
- \else
- \next@tpage
- \@makefrontispiece
- \next@tdpage
- \fi
+ \ifx\@extratitle\@empty
+ \ifx\@frontispiece\@empty\else \mbox{}\fi
+ \else
+ \@makeextratitle
+ \fi
+ \ifx\@frontispiece\@empty
+ \ifx\@extratitle\@empty\else\next@tdpage\fi
+ \else
+ \next@tpage
+ \@makefrontispiece
+ \next@tdpage
+ \fi
+ \if@twocolumn
+ \twocolumn[\@maketitle]
+ \else
\@maketitle
+ \fi
\ifx\titlepagestyle\@empty\else\thispagestyle{\titlepagestyle}\fi
\@thanks\global\let\@thanks\@empty
\endgroup
\fi
}
+}
-
+\newkomafont{paperid}{\sffamily}
+\box_new:N \g_ptxcd_PaperID_box
+\newcommand*{\SetPaperID}[2]{
+ \hbox_gset:Nn \g_ptxcd_PaperID_box {
+ \usekomafont{paperid}
+ \dim_set:Nn \l_tmpa_dim {\exp_last_unbraced:No \use_i:nn \ptxcd_title_fontsize: + \exp_last_unbraced:No \use_ii:nn \ptxcd_title_fontsize:}
+ \fontsize{1.1\l_tmpa_dim}{1.1\l_tmpa_dim}
+ \selectfont
+ #1{\Huge #2}
+ }
}
\renewcommand*{\@maketitle}{%
@@ -1051,28 +1104,22 @@ contents={\color{identbarcolor}\rule{\layerwidth}{\layerheight}}
\headheight
+\headsep
+\topskip
- -\box_ht:N\TUDa@headline_box
- -\box_dp:N \TUDa@headline_box
-% -\dp\strutbox
+ -\box_ht:N\ptxcd_headrule_box
+ -\box_dp:N \ptxcd_headrule_box
}}
\par
\nointerlineskip
\begingroup
\usekomafont{disposition}
- \hsize=\g_TUDa_headwidth_dim
- \raisebox{\dim_eval:n {
- -.5\c_TUDa_logoheight_dim
- }}[0pt][.5\c_TUDa_logoheight_dim]{
- \bool_if:NT \g_TUDa_colorback_bool {\color{accentcolor}\rule{\g_TUDa_headwidth_dim}{.5\c_TUDa_logoheight_dim}}
- }
- \par\nointerlineskip
+ \hsize=\g_ptxcd_headwidth_dim
\setlength{\fboxsep}{\z@}
- \bool_if:NT \g_TUDa_colorback_bool {\colorbox{accentcolor}}{\parbox[t]{\g_TUDa_headwidth_dim}{
+ \bool_if:NT \g_ptxcd_colorback_bool {\colorbox{accentcolor}}{\parbox[t]{\g_ptxcd_headwidth_dim}{
+ \rule{\z@}{.5\c_ptxcd_logoheight_dim}\par\nointerlineskip
\raisebox{-\height}{%
- \begin{minipage}[t]{\dimexpr\linewidth-2.2\c_TUDa_logoheight_dim-1ex}
- \bool_if:NT \g_TUDa_colorback_bool {\begin{addmargin}{.5\c_TUDa_largerule_dim}}
+ \begin{minipage}[t]{\dimexpr\linewidth-2.2\c_ptxcd_logoheight_dim-1ex}
+ \bool_if:NT \g_ptxcd_colorback_bool {\begin{addmargin}{.5\c_ptxcd_largerule_dim}}
\raggedright
- \bool_if:NT \g_TUDa_colorback_bool {\color{textonaccentcolor}}
+ \bool_if:NT \g_ptxcd_colorback_bool {\color{textonaccentcolor}}
\tl_if_empty:NF \@titlehead {\usekomafont{titlehead}{\@titlehead\par}}
\leavevmode
{\Huge\usekomafont{title}{
@@ -1080,49 +1127,49 @@ contents={\color{identbarcolor}\rule{\layerwidth}{\layerheight}}
\@title \par
}}%
\vskip 1em
- \bool_if:NTF \g_TUDa_colorback_bool {\end{addmargin}} {\par}
- \vspace{\dim_eval:n {\c_TUDa_largerule_dim+\c_TUDa_rulesep_dim}}
+ \bool_if:NTF \g_ptxcd_colorback_bool {\end{addmargin}} {\par}
+ \vspace{\dim_eval:n {\c_ptxcd_largerule_dim+\c_ptxcd_rulesep_dim}}
\end{minipage}
}
\hfill
\raisebox{-\height}{
- \TUDa_Setup_Title_box:
- \makebox[2.2\c_TUDa_logoheight_dim][l]{
- \box_use:N \g_TUDa_title_info_box
+ \ptxcd_setup_title_box:
+ \makebox[2.2\c_ptxcd_logoheight_dim][l]{
+ \box_use:N \g_ptxcd_title_info_box
}
}
- \dim_compare:nNnTF {\box_ht:N \g_TUDa_title_info_box + \box_ht:N \g_TUDa_title_info_box} > {1.1\c_TUDa_logoheight_dim}
- {\vspace{\c_TUDa_largerule_dim}}
- {\vspace{.5\c_TUDa_logoheight_dim}}
+ \dim_compare:nNnTF {\box_ht:N \g_ptxcd_title_info_box + \box_ht:N \g_ptxcd_title_info_box} > {1.1\c_ptxcd_logoheight_dim}
+ {\vspace{\c_ptxcd_largerule_dim}}
+ {\vspace{.5\c_ptxcd_logoheight_dim}}
\par
}}
\par
\nointerlineskip
- \rule{\g_TUDa_headwidth_dim}{\g_TUDa_titlerule_dim}
- \begin{addmargin}{.5\c_TUDa_largerule_dim}
+ \rule{\g_ptxcd_headwidth_dim}{\g_ptxcd_titlerule_dim}
+ \begin{addmargin}{.5\c_ptxcd_largerule_dim}
\Large
\clist_map_inline:nn {subtitle, subject, author, date, publishers}
{\tl_if_empty:cF {@##1} {{\usekomafont{##1}\use:c {@##1}\par}}}
- \vspace{\c_TUDa_rulesep_dim}
+ \vspace{\c_ptxcd_rulesep_dim}
\end{addmargin}
\tl_if_empty:NF \@thanks {
\par\nointerlineskip
- \rule{\g_TUDa_headwidth_dim}{\g_TUDa_titlerule_dim}
- \expandafter\fontsize\TUDa_titlethanks_fontsize:\selectfont
- \begin{addmargin}{.5\c_TUDa_largerule_dim}
- \let\footnotetext\TUDa@title@footnote
+ \rule{\g_ptxcd_headwidth_dim}{\g_ptxcd_titlerule_dim}
+ \expandafter\fontsize\ptxcd_titlethanks_fontsize:\selectfont
+ \begin{addmargin}{.5\c_ptxcd_largerule_dim}
+ \let\footnotetext\ptxcd_title@footnote
\@thanks
- \vspace{\c_TUDa_rulesep_dim}
+ \vspace{\c_ptxcd_rulesep_dim}
\end{addmargin}
\par
\let\@thanks\@empty
}
\par\nointerlineskip
- \rule{\g_TUDa_headwidth_dim}{\g_TUDa_titlerule_dim}
+ \rule{\g_ptxcd_headwidth_dim}{\g_ptxcd_titlerule_dim}
\par
\endgroup
- \vskip .5\c_TUDa_logoheight_dim
+ \vskip .5\c_ptxcd_logoheight_dim
}%
%%Abstract anpassungen mit Sprache
@@ -1154,17 +1201,17 @@ contents={\color{identbarcolor}\rule{\layerwidth}{\layerheight}}
%Anpassungen marginpar
-\cs_set_eq:NN\TUDa_orig@marginpar:\marginpar
+\cs_set_eq:NN\ptxcd_orig@marginpar:\marginpar
\newkomafont{marginpar}{\accentfont\color{textaccentcolor}}
\RenewDocumentCommand{\marginpar}{om}{
\IfNoValueTF{#1}{
- \TUDa_orig@marginpar:{\leavevmode\usekomafont{marginpar}#2}
+ \ptxcd_orig@marginpar:{\leavevmode\usekomafont{marginpar}#2}
}{
- \TUDa_orig@marginpar:[\leavevmode\usekomafont{marginpar}#1]{\leavevmode\usekomafont{marginpar}#2}
+ \ptxcd_orig@marginpar:[\leavevmode\usekomafont{marginpar}#1]{\leavevmode\usekomafont{marginpar}#2}
}
}
-\TUDa_define_captionFallback:Nn \authorandname {and}
+\ptxcd_define_captionFallback:Nn \authorandname {and}
\defcaptionname{ngerman, german}{\authorandname}{und}
\defcaptionname{english, USenglish, american, UKenglish, british}{\authorandname}{and}
@@ -1186,37 +1233,37 @@ contents={\color{identbarcolor}\rule{\layerwidth}{\layerheight}}
%IMRAD:Introduction
\seq_if_exist:NTF \seq_const_from_clist:Nn {
- \seq_const_from_clist:Nn \c_TUDa_IMRAD_seq {introduction, methods, results, discussion}
+ \seq_const_from_clist:Nn \c_ptxcd_IMRAD_seq {introduction, methods, results, discussion}
} {
- \seq_new:N \c_TUDa_IMRAD_seq
- \seq_gset_from_clist:Nn \c_TUDa_IMRAD_seq {introduction, methods, results, discussion}
+ \seq_new:N \c_ptxcd_IMRAD_seq
+ \seq_gset_from_clist:Nn \c_ptxcd_IMRAD_seq {introduction, methods, results, discussion}
}
\newcommand*{\IMRADlabel}[1]{
- \seq_if_in:NnTF \c_TUDa_IMRAD_seq {#1}
+ \seq_if_in:NnTF \c_ptxcd_IMRAD_seq {#1}
{\label{IMRAD:#1}}
- {\msg_error:nnnn {TUDaPub}{undefined-IMRADlabel}{#1}{\seq_use:Nn \c_TUDa_IMRAD_seq {,}}}
+ {\msg_error:nnnn {tudapub} {undefined-IMRADlabel}{#1}{\seq_use:Nn \c_ptxcd_IMRAD_seq {,}}}
}
-\bool_if:NT \g_TUDa_IMRAD_bool {
+\bool_if:NT \g_ptxcd_IMRAD_bool {
\AtEndDocument{
- \seq_map_inline:Nn \c_TUDa_IMRAD_seq {
+ \seq_map_inline:Nn \c_ptxcd_IMRAD_seq {
\cs_if_exist:cF {r@IMRAD:#1} {
- \msg_warning:nnn {TUDaPub}{missing-IMRADlabel} {#1}
+ \msg_warning:nnn {tudapub} {missing-IMRADlabel} {#1}
}
}
}
}
-\msg_new:nnn {TUDaPub}{undefined-IMRADlabel} {
+\msg_new:nnn {tudapub} {undefined-IMRADlabel} {
You~tried~to~set~an~IMRAD~label~with~key~#1.\\
This~label~type~is~not~declared.\\
Possible~labels~are:~#2
}
-\msg_new:nnn {TUDaPub} {missing-IMRADlabel} {
+\msg_new:nnn{tudapub} {missing-IMRADlabel} {
You~did~not~provide~a~Label~for~key~#1.\\
Either~you~need~to~recompile~your~document~or~add~a~label~using~\string\IMRADlabel.
}
@@ -1226,5 +1273,6 @@ contents={\color{identbarcolor}\rule{\layerwidth}{\layerheight}}
\let\Iftocfeature\iftocfeature
}
+\file_if_exist_input:n {tuda\g_ptxcd_department_str.cfg}
\endinput
%End of class tudapub.cls
diff --git a/macros/latex/contrib/tuda-ci/tex/tudarules.sty b/macros/latex/contrib/tuda-ci/tex/tudarules.sty
index 57b31b919d..464e43bd6a 100644
--- a/macros/latex/contrib/tuda-ci/tex/tudarules.sty
+++ b/macros/latex/contrib/tuda-ci/tex/tudarules.sty
@@ -1,4 +1,4 @@
-%% This is file `tudarules.sty' version 2.11 (2020/06/12),
+%% This is file `tudarules.sty' version 3.00 (2020/09/08),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -26,8 +26,8 @@
%%
%% ============================================================================
%%
-\def\fileversion{2.11}
-\def\filedate{2020/06/12}
+\def\fileversion{3.00}
+\def\filedate{2020/09/08}
\NeedsTeXFormat{LaTeX2e}
\RequirePackage{expl3}
\ProvidesExplPackage{tudarules}{\filedate}{\fileversion}{Creation of colored bars for tuda-ci bundle}
@@ -35,112 +35,131 @@
\RequirePackage{l3keys2e}
-\seq_if_exist:NF \l_TUDa_tmpa_seq {\seq_new:N \l_TUDa_tmpa_seq}
-\tl_if_exist:NF \l_TUDa_tmpa_tk {\tl_new:N \l_TUDa_tmpa_tl}
+\str_if_exist:NF \g_ptxcd_department_str {
+ \str_new:N \g_ptxcd_department_str
+ \str_gset:Nn \g_ptxcd_department_str {default}
+}
+
+\bool_new:N \g_ptxcd_simple_rules_bool
+\dim_new:N \g_ptxcd_titlerule_dim
+
+\seq_if_exist:NF \l_ptxcd_tmpa_seq {\seq_new:N \l_ptxcd_tmpa_seq}
+\tl_if_exist:NF \l_ptxcd_tmpa_tk {\tl_new:N \l_ptxcd_tmpa_tl}
-\cs_new:Nn \TUDa_rules_set_values:n {
- \seq_set_split:Nnn \l_TUDa_tmpa_seq {|} {#1}
+\cs_new:Nn \ptxcd_rules_set_values:n {
+ \seq_set_split:Nnn \l_ptxcd_tmpa_seq {|} {#1}
\int_step_inline:nnnn {1} {1} {4} {
- \tl_set:Nn \l_TUDa_tmpa_tl {c_TUDa_
+ \tl_set:Nn \l_ptxcd_tmpa_tl {c_ptxcd_
\clist_item:nn {largerule, rulesep, smallrule, logoheight} {##1}
_dim}
- \dim_if_exist:cF {\l_TUDa_tmpa_tl} {\dim_new:c {\l_TUDa_tmpa_tl}}
- \dim_gset:cn {\l_TUDa_tmpa_tl} {\seq_item:Nn \l_TUDa_tmpa_seq {##1}}
+ \dim_if_exist:cF {\l_ptxcd_tmpa_tl} {\dim_new:c {\l_ptxcd_tmpa_tl}}
+ \dim_gset:cn {\l_ptxcd_tmpa_tl} {\seq_item:Nn \l_ptxcd_tmpa_seq {##1}}
}
+ \dim_gset:Nn \g_ptxcd_titlerule_dim {.5\c_ptxcd_smallrule_dim}
}
-\keys_define:nn {TUDa/rules} {
- color .tl_gset:N = \g_TUDa_rules_color_tl,
+\keys_define:nn {ptxcd/rules} {
+ color .tl_gset:N = \g_ptxcd_rules_color_tl,
blackrule .meta:n = {color=black},
paper .choice:,
- paper/dl .code:n = { \TUDa_rules_set_values:n { 3.5mm | 1.4mm | 1.2pt | 17 mm | 0.6pt| 10mm | 14mm}},
- paper/a6 .code:n = { \TUDa_rules_set_values:n { 3 mm | 1.4mm | 1.2pt | 16.5mm | 0.6pt| 10mm | 15mm}},
- paper/a5 .code:n = { \TUDa_rules_set_values:n { 3.3mm | 1.4mm | 1.2pt | 19 mm | 0.6pt| 12mm | 16mm}},
- paper/a4 .code:n = { \TUDa_rules_set_values:n { 4 mm | 1.4mm | 1.2pt | 22 mm | 0.6pt| 15mm | 20mm}},
- paper/a3 .code:n = { \TUDa_rules_set_values:n { 4.5mm | 1.4mm | 1.2pt | 24.5mm | 0.6pt| 15mm | 20mm}},
- paper/a2 .code:n = { \TUDa_rules_set_values:n { 8 mm | 2.5mm | 2.2pt | 44.5mm | 1.1pt| 30mm | 35mm}},
- paper/a1 .code:n = { \TUDa_rules_set_values:n { 10 mm | 3.0mm | 2.8pt | 55.5mm | 1.4pt| 30mm | 35mm}},
- paper/a0 .code:n = { \TUDa_rules_set_values:n { 16 mm | 5.2mm | 4.8pt | 80 mm | 2.4pt| 30mm | 35mm}},
- paper/slide .code:n = { \TUDa_rules_set_values:n { 2mm | .7mm | .6pt | 11 mm | .3pt| 7.5mm | 10mm}},
+ paper/dl .code:n = { \ptxcd_rules_set_values:n { 3.5mm | 1.4mm | 1.2pt | 17 mm | 0.6pt| 10mm | 14mm}},
+ paper/a6 .code:n = { \ptxcd_rules_set_values:n { 3 mm | 1.4mm | 1.2pt | 16.5mm | 0.6pt| 10mm | 15mm}},
+ paper/a5 .code:n = { \ptxcd_rules_set_values:n { 3.3mm | 1.4mm | 1.2pt | 19 mm | 0.6pt| 12mm | 16mm}},
+ paper/a4 .code:n = { \ptxcd_rules_set_values:n { 4 mm | 1.4mm | 1.2pt | 22 mm | 0.6pt| 15mm | 20mm}},
+ paper/a3 .code:n = { \ptxcd_rules_set_values:n { 4.5mm | 1.4mm | 1.2pt | 24.5mm | 0.6pt| 15mm | 20mm}},
+ paper/a2 .code:n = { \ptxcd_rules_set_values:n { 8 mm | 2.5mm | 2.2pt | 44.5mm | 1.1pt| 30mm | 35mm}},
+ paper/a1 .code:n = { \ptxcd_rules_set_values:n { 10 mm | 3.0mm | 2.8pt | 55.5mm | 1.4pt| 30mm | 35mm}},
+ paper/a0 .code:n = { \ptxcd_rules_set_values:n { 16 mm | 5.2mm | 4.8pt | 80 mm | 2.4pt| 30mm | 35mm}},
+ paper/slide .code:n = { \ptxcd_rules_set_values:n { 2mm | .7mm | .6pt | 11 mm | .3pt| 7.5mm | 10mm}},
paper/beamer .meta:n = {paper= slide},
paper/leaflet .meta:n = {paper=a5},
- color .tl_gset:N = \g_TUDarules_default_color_tl,
+ color .tl_gset:N = \g_ptxcd_rules_default_color_tl,
color .initial:n = black,
- mode .tl_gset:N = \g_TUDarules_default_mode_tl,
- mode .initial:n = box
+ mode .tl_gset:N = \g_ptxcd_rules_default_mode_tl,
+ mode .initial:n = box,
+ department .choice:,
+ department / default .code:n = \str_gset:Nn \g_ptxcd_department_str {default},
+ department / mecheng .code:n = \str_gset:Nn \g_ptxcd_department_str {mecheng},
+ mecheng .meta:n = {department=mecheng},
}
-\ProcessKeysOptions{TUDa/rules}
+\ProcessKeysOptions{ptxcd/rules}
\RequirePackage{tudacolors}
\RequirePackage{xparse}
%Switch between TikZ and box mode
-\bool_new:N \g_TUDa_rule_TikZmode_bool
+\bool_new:N \g_ptxcd_rule_TikZmode_bool
-\keys_define:nn {TUDa/rules} {
- width .dim_gset:N = \l_TUDa_headrule_width_dim,
- color .tl_gset:N = \l_TUDa_headrule_color_tl,
+\keys_define:nn {ptxcd/rules} {
+ width .dim_gset:N = \l_ptxcd_headrule_width_dim,
+ color .tl_gset:N = \l_ptxcd_headrule_color_tl,
mode .choice:,
- mode / box .code:n = \bool_gset_false:N \g_TUDa_rule_TikZmode_bool,
- mode / tikz .code:n = \bool_gset_true:N \g_TUDa_rule_TikZmode_bool,
- mode / TikZ .code:n = \bool_gset_true:N \g_TUDa_rule_TikZmode_bool,
+ mode / box .code:n = \bool_gset_false:N \g_ptxcd_rule_TikZmode_bool,
+ mode / tikz .code:n = \bool_gset_true:N \g_ptxcd_rule_TikZmode_bool,
+ mode / TikZ .code:n = \bool_gset_true:N \g_ptxcd_rule_TikZmode_bool,
+}
+
+
+\str_case:Vn \g_ptxcd_department_str {
+ {mecheng} {\bool_gset_true:N \g_ptxcd_simple_rules_bool}
}
-\NewDocumentCommand{\TUDa@makeheadrule}{som}{
- \keys_set:nn {TUDa/rules} {
+\NewDocumentCommand{\ptxcd_makeheadrule}{som}{
+ \keys_set:nn {ptxcd/rules} {
%TODO maybe package options for default
width=\textwidth,
}
- \exp_args:Nnx \keys_set:nn {TUDa/rules} {
- mode= \g_TUDarules_default_mode_tl,
- color= \g_TUDarules_default_color_tl
+ \exp_args:Nnx \keys_set:nn {ptxcd/rules} {
+ mode= \g_ptxcd_rules_default_mode_tl,
+ color= \g_ptxcd_rules_default_color_tl
}
- \IfNoValueF {#2} {\keys_set:nn {TUDa/rules}{#2}}
- \box_if_exist:cF {#3_box} {\box_new:c {#3_box}}
- \bool_if:NTF \g_TUDa_rule_TikZmode_bool {
- \hbox_gset:cn {#3_box} {
- \begin{tikzpicture}
- \fill[\l_TUDa_headrule_color_tl](0,\c_TUDa_rulesep_dim)rectangle++(\l_TUDa_headrule_width_dim,\c_TUDa_largerule_dim);
- \fill(0,0)rectangle(\l_TUDa_headrule_width_dim,-\c_TUDa_smallrule_dim);
- \end{tikzpicture}
- }
+ \IfNoValueF {#2} {\keys_set:nn {ptxcd/rules}{#2}}
+ \IfBooleanF {#1} {\box_if_exist:cF {#3_box} {\box_new:c {#3_box}}}
+ \bool_if:NTF \g_ptxcd_simple_rules_bool {
+ \IfBooleanTF {#1} \use_none:n \hbox_gset:cn
+ {#3_box}
+ {
+ \color{\l_ptxcd_headrule_color_tl}
+ \raisebox{-\height}{\rule{\l_ptxcd_headrule_width_dim}{.5\c_ptxcd_largerule_dim}}
+ }
}{
- \hbox_gset:cn {#3_box} {
- \parbox[t]{\l_TUDa_headrule_width_dim}{
- \setlength{\baselineskip}{\z@}
- \null\par\nointerlineskip
- \textcolor{\l_TUDa_headrule_color_tl}{\rule{\linewidth}{\c_TUDa_largerule_dim}}
- \vspace{\c_TUDa_rulesep_dim}\par\nointerlineskip
- \rule{\linewidth}{\c_TUDa_smallrule_dim}
+ \bool_if:NTF \g_ptxcd_rule_TikZmode_bool {
+ \IfBooleanTF {#1} \use_none:n \hbox_gset:cn
+ {#3_box} {
+ \begin{tikzpicture}
+ \fill[\l_ptxcd_headrule_color_tl](0,\c_ptxcd_rulesep_dim)rectangle++(\l_ptxcd_headrule_width_dim,\c_ptxcd_largerule_dim);
+ \fill(0,0)rectangle(\l_ptxcd_headrule_width_dim,-\c_ptxcd_smallrule_dim);
+ \end{tikzpicture}
+ }
+ }{
+ \IfBooleanTF {#1} \use_none:n \hbox_gset:cn
+ {#3_box}
+ {
+ \parbox[t]{\l_ptxcd_headrule_width_dim}{
+ \setlength{\baselineskip}{\z@}
+ \null\par\nointerlineskip
+ \textcolor{\l_ptxcd_headrule_color_tl}{\rule{\linewidth}{\c_ptxcd_largerule_dim}}
+ \vspace{\c_ptxcd_rulesep_dim}\par\nointerlineskip
+ \rule{\linewidth}{\c_ptxcd_smallrule_dim}
+ }
}
}
}
- \IfBooleanTF {#1}
- \cs_set:cpn \cs_new:cpn {#3} {\box_use:c {#3_box}}
+ \IfBooleanF {#1} {\cs_set:cpn {#3} {\box_use:c {#3_box}}}
}
-\NewDocumentCommand{\TUDa@makefootrule}{om}{
- \keys_set:nn {TUDa/rules} {
+\NewDocumentCommand{\ptxcd_makefootrule}{som}{
+ \keys_set:nn {ptxcd/rules} {
width= \textwidth
}
- \IfNoValueF {#1} {\keys_set:nn {TUDa/rules}{#1}}
- \box_new:c {#2_box}
- \hbox_gset:cn {#2_box} {
- \raisebox{-\height}{\rule{\l_TUDa_headrule_width_dim}{.5\c_TUDa_smallrule_dim}}
+ \IfNoValueF {#2} {\keys_set:nn {ptxcd/rules}{#2}}
+ \IfBooleanF {#1} {\box_new:c {#3_box}}
+ \IfBooleanTF {#1} \use_none:n \hbox_gset:cn {#3_box} {
+ \raisebox{-\height}{\rule{\l_ptxcd_headrule_width_dim}{\g_ptxcd_titlerule_dim}}
}
- \cs_new:cpn {#2} {\box_use:c {#2_box}}
+ \IfBooleanF{#1} {\cs_new:cpn {#3} {\box_use:c {#3_box}}}
}
-
-%DL | 3.5mm | 1.4mm | 1.2pt | 17 mm | 0.6pt| 10mm | 14mm |
-%A6 | 3 mm | 1.4mm | 1.2pt | 16.5mm | 0.6pt| 10mm | 15mm |
-%A5 | 3.3mm | 1.4mm | 1.2pt | 19 mm | 0.6pt| 12mm | 16mm |
-%A4 | 4 mm | 1.4mm | 1.2pt | 22 mm | 0.6pt| 15mm | 20mm |
-%A3 | 4.5mm | 1.4mm | 1.2pt | 24.5mm | 0.6pt| 15mm | 20mm |
-%A2 | 8 mm | 2.5mm | 2.2pt | 44.5mm | 1.1pt| 30mm | 35mm |
-%A1 | 10 mm | 3.0mm | 2.8pt | 55.5mm | 1.4pt| 30mm | 35mm |
-%A0 | 16 mm | 5.2mm | 4.8pt | 80 mm | 2.4pt| 30mm | 35mm |
-%punched a4 = inner, bottom=20mm top outer =15mm
\endinput
diff --git a/macros/latex/contrib/tuda-ci/tex/tudasciposter.cls b/macros/latex/contrib/tuda-ci/tex/tudasciposter.cls
index e5c121fbec..4308a4603a 100644
--- a/macros/latex/contrib/tuda-ci/tex/tudasciposter.cls
+++ b/macros/latex/contrib/tuda-ci/tex/tudasciposter.cls
@@ -1,4 +1,4 @@
-%% This is file `tudasciposter.cls' version 2.11 (2020/06/12),
+%% This is file `tudasciposter.cls' version 3.00 (2020/09/08),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -26,83 +26,99 @@
%%
%% ============================================================================
%%
-\def\fileversion{2.11}
-\def\filedate{2020/06/12}
+\def\fileversion{3.00}
+\def\filedate{2020/09/08}
\NeedsTeXFormat{LaTeX2e}
\RequirePackage{expl3}
\ProvidesExplPackage{tudasciposter}{\filedate}{\fileversion}{Scientific Poster Layout for TU Darmstadt}
\RequirePackage{l3keys2e}
-\prop_new:N \g_TUDa_clsopts_prop
-\tl_new:N \g_TUDa_boxstyle_tl
-\int_new:N \g_TUDa_paper_int
+\prop_new:N \g_ptxcd_clsopts_prop
+\tl_new:N \g_ptxcd_boxstyle_tl
+\int_new:N \g_ptxcd_paper_int
+\str_new:N \g_ptxcd_department_str
+\str_const:Nn \c__ptxcd_base_str {sciposter}
-\keys_define:nn {TUDa/poster} {
+\keys_define:nn {ptxcd/poster} {
accentcolor .code:n = {\PassOptionsToPackage{accent =#1}{tudacolors}},
color .meta:n = {accentcolor = #1},
textaccentcolor .code:n = {\PassOptionsToPackage{textaccent =#1}{tudacolors}},
- identbarcolor .code:n = {\PassOptionsToPackage{indentbar =#1}{tudacolors}},
+ identbarcolor .code:n = {\PassOptionsToPackage{identbar =#1}{tudacolors}},
titletext .code:n = {\PassOptionsToPackage{text =#1}{tudacolors}},
- footer .bool_gset:N = \g_TUDa_poster_foot_bool,
+ footer .bool_gset:N = \g_ptxcd_poster_foot_bool,
footer .default:n = true,
footer .initial:n = true,
- thanks .tl_gset:N = \g_TUDa_footnote_label_tl,
+ thanks .tl_gset:N = \g_ptxcd_footnote_label_tl,
thanks .initial:n = arabic*,
- pdfa .bool_gset:N = \g_TUDa@pdfa_bool,
+ pdfa .bool_gset:N = \g_ptxcd_pdfa_bool,
pdfa .initial:n = false,
boxstyle .choice:,
- boxstyle / official .code:n = \tl_gset:Nn \g_TUDa_boxstyle_tl {TUDa},
- boxstyle / colored .code:n= \tl_gset:Nn \g_TUDa_boxstyle_tl {TUDa-colored},
- boxstyle / boxed .code:n= \tl_gset:Nn \g_TUDa_boxstyle_tl {TUDa-boxed},
+ boxstyle / official .code:n = \tl_gset:Nn \g_ptxcd_boxstyle_tl {TUDa},
+ boxstyle / colored .code:n= \tl_gset:Nn \g_ptxcd_boxstyle_tl {TUDa-colored},
+ boxstyle / boxed .code:n= \tl_gset:Nn \g_ptxcd_boxstyle_tl {TUDa-boxed},
boxstyle /default .meta:n = {boxstyle=official},
boxstyle .initial:n = default,
- unknown .code:n = {\prop_gput:NVn \g_TUDa_clsopts_prop \l_keys_key_tl {#1}},
+ unknown .code:n = {\prop_gput:NVn \g_ptxcd_clsopts_prop \l_keys_key_tl {#1}},
paper .choices:nn = {a0,a1,a2,a3}{
- \int_gset_eq:NN \g_TUDa_paper_int \l_keys_choice_int
+ \int_gset_eq:NN \g_ptxcd_paper_int \l_keys_choice_int
\PassOptionsToPackage{paper=\l_keys_choice_tl}{tudarules}
\PassOptionsToPackage{\l_keys_choice_tl paper}{geometry}
},
paper .initial:n = a0,
- fontsize .tl_gset:N = \g_TUDa_fontsize_tl,
- logofile .tl_gset:N = \g_TUDa_logofile_tl,
+ fontsize .tl_gset:N = \g_ptxcd_fontsize_tl,
+ logofile .tl_gset:N = \g_ptxcd_logofile_tl,
logofile .initial:n = tuda_logo,
title .choice:,
title / default .meta:n = {title=large},
- title / large .code:n = \bool_gset_false:N \g_TUDa_smalltitle_bool,
- title / small .code:n = \bool_gset_true:N \g_TUDa_smalltitle_bool,
+ title / large .code:n = \bool_gset_false:N \g_ptxcd_smalltitle_bool,
+ title / small .code:n = \bool_gset_true:N \g_ptxcd_smalltitle_bool,
title .initial:n = default,
+ colorback .bool_gset:N = \g_ptxcd_colorback_bool,
+ colorback .initial:n = true,
+ department .choice:,
+ department / default .code:n = \str_gset:Nn \g_ptxcd_department_str {default},
+ department / mecheng .code:n = {
+ \str_gset:Nn \g_ptxcd_department_str {mecheng}
+ \keys_set:nn {ptxcd/poster} {colorback=false, departmentlogofile=tuda_maschinenbau_logo,titlesepline=false}
+ },
+ department .initial:n = default,
+ mecheng .meta:n = {department=mecheng},
+ departmentlogofile .tl_gset:N = \g_ptxcd_departmentlogo_tl,
+ departmentlogofile .initial:n =,
+ titlesepline .bool_gset:N = \g_ptxcd_titlesepline_bool,
+ titlesepline .initial:n = true,
}
-\ProcessKeysOptions{TUDa/poster}
+\ProcessKeysOptions{ptxcd/poster}
-\dim_new:N \g_TUDa_margin_dim
-\bool_if:NTF \g_TUDa_smalltitle_bool {
- \file_input:n {tuda-a\int_use:N \g_TUDa_paper_int paper.clo}
- \TUDa_setup_title_sizes:
- \file_input:n {tuda-a\int_use:N \g_TUDa_paper_int paper.clo}
- \TUDa_setup_base_sizes:
+\dim_new:N \g_ptxcd_margin_dim
+\bool_if:NTF \g_ptxcd_smalltitle_bool {
+ \file_input:n {tuda-a\int_use:N \g_ptxcd_paper_int paper.clo}
+ \ptxcd_setup_title_sizes:
+ \file_input:n {tuda-a\int_use:N \g_ptxcd_paper_int paper.clo}
+ \ptxcd_setup_base_sizes:
}{
- \int_gdecr:N \g_TUDa_paper_int
- \file_input:n {tuda-a\int_use:N \g_TUDa_paper_int paper.clo}
- \TUDa_setup_title_sizes:
- \TUDa_setup_base_sizes:
+ \int_gdecr:N \g_ptxcd_paper_int
+ \file_input:n {tuda-a\int_use:N \g_ptxcd_paper_int paper.clo}
+ \ptxcd_setup_title_sizes:
+ \ptxcd_setup_base_sizes:
}
-\prop_gput:NnV \g_TUDa_clsopts_prop {fontsize} \g_TUDa_fontsize_tl
+\prop_gput:NnV \g_ptxcd_clsopts_prop {fontsize} \g_ptxcd_fontsize_tl
-\prop_map_inline:Nn \g_TUDa_clsopts_prop {
+\prop_map_inline:Nn \g_ptxcd_clsopts_prop {
\tl_if_empty:nTF {#2}
{\exp_args:NnV\PassOptionsToClass{#1}\l_tmpa_tl}
{\clist_map_inline:nn {#2} {\PassOptionsToClass{#1=##1}{scrartcl}}}
}
-\bool_if:NT \g_TUDa@pdfa_bool {\PassOptionsToPackage{RGB}{xcolor}}
+\bool_if:NT \g_ptxcd_pdfa_bool {\PassOptionsToPackage{RGB}{xcolor}}
\ExplSyntaxOff
\PassOptionsToPackage{DIV=10}{typearea}
@@ -124,7 +140,7 @@
\setkomafont{title}{
\color{titlefgcolor}
- \expandafter\fontsize\TUDa_title_fontsize:\selectfont
+ \expandafter\fontsize\ptxcd_title_fontsize:\selectfont
\bfseries
}
@@ -139,106 +155,106 @@
\RequirePackage{tudacolors}
\RequirePackage{qrcode}
-\dim_const:Nn \c_TUDa_headrule_ht_dim {\c_TUDa_rulesep_dim +\c_TUDa_largerule_dim + \c_TUDa_smallrule_dim}
+\dim_const:Nn \c_ptxcd_headrule_ht_dim {\c_ptxcd_rulesep_dim +\c_ptxcd_largerule_dim + \c_ptxcd_smallrule_dim}
%Setup title
-\box_new:N \l_TUDa_tmpa_box
-\box_new:N \g_TUDa_titlegraphic_box
-\box_new:N \g_TUDa_title_box
-\box_new:N \g_TUDa_author_box
-\box_new:N \g_TUDa_credit_box
-
-\TUDa@makeheadrule[
- width=\paperwidth-2\g_TUDa_margin_dim,
+\box_new:N \l_ptxcd_tmpa_box
+\box_new:N \g_ptxcd_titlegraphic_box
+\box_new:N \g_ptxcd_title_box
+\box_new:N \g_ptxcd_author_box
+\box_new:N \g_ptxcd_credit_box
+
+\ptxcd_makeheadrule[
+ width=\paperwidth-2\g_ptxcd_margin_dim,
color=identbarcolor
- ]{TUDa@posterrule}
+ ]{ptxcd_headrule}
-\tl_new:N \g_TUDa_thanks_tl
-\newcommand*{\TUDa@title@footnote}[2][1]{
+\tl_new:N \g_ptxcd_thanks_tl
+\newcommand*{\ptxcd_title@footnote}[2][1]{
\begingroup
- \TUDa_def_footnotelabel:
+ \ptxcd_def_footnotelabel:
\footnotemark[#1]\,#2\quad
\endgroup
}
-\tl_greplace_all:Nnn \g_TUDa_footnote_label_tl {*} {{footnote}}
+\tl_greplace_all:Nnn \g_ptxcd_footnote_label_tl {*} {{footnote}}
\clist_map_inline:nn {alph, arabic, fnsymbol, Alph, roman, Roman} {
- \tl_greplace_all:Nnn \g_TUDa_footnote_label_tl {#1} {\use:c {#1}}
+ \tl_greplace_all:Nnn \g_ptxcd_footnote_label_tl {#1} {\use:c {#1}}
}
-\cs_set:Nn \TUDa_def_footnotelabel: {
- \renewcommand*{\thefootnote}{\g_TUDa_footnote_label_tl}
+\cs_set:Nn \ptxcd_def_footnotelabel: {
+ \renewcommand*{\thefootnote}{\g_ptxcd_footnote_label_tl}
}
\pagestyle{empty}
\renewcommand*{\title}[1]{\gdef \@title {#1}}
-\dim_new:N \g_TUDa_footheight_dim
-\dim_gset:Nn \g_TUDa_footheight_dim {0.06\paperwidth}%
+\dim_new:N \g_ptxcd_footheight_dim
+\dim_gset:Nn \g_ptxcd_footheight_dim {0.06\paperwidth}%
-\box_new:N \g_TUDa_footergraphics_box
+\box_new:N \g_ptxcd_footergraphics_box
\newcommand*{\footergraphics}[1]{
\begingroup
- \let\height\g_TUDa_footheight_dim
- \hbox_gset:Nn \g_TUDa_footergraphics_box {#1}
+ \let\height\g_ptxcd_footheight_dim
+ \hbox_gset:Nn \g_ptxcd_footergraphics_box {#1}
\endgroup
}
-\tl_new:N \g_TUDa_poster_foot_tl
+\tl_new:N \g_ptxcd_poster_foot_tl
\newcommand{\footer}[1]{
- \tl_gset:Nn \g_TUDa_poster_foot_tl {#1}
+ \tl_gset:Nn \g_ptxcd_poster_foot_tl {#1}
}
-\tl_new:N \g_TUDa_poster_qrcode_tl
+\tl_new:N \g_ptxcd_poster_qrcode_tl
\newcommand*{\footerqrcode}[1]{
- \tl_gset:Nn \g_TUDa_poster_qrcode_tl {#1}
+ \tl_gset:Nn \g_ptxcd_poster_qrcode_tl {#1}
}
%%%%%%%%%%%%%%%%%%%
% Begin of PDF/A mode
%%%%%%%%%%%%%%%%%%%
%PDFA
-\if_bool:N \g_TUDa@pdfa_bool
+\if_bool:N \g_ptxcd_pdfa_bool
\PassOptionsToPackage{a-2b}{pdfx}
\RequirePackage{pdfx}
%%hyperref
\hypersetup{hidelinks, unicode, hyperfootnotes=false}
-\iow_new:N \TUDa@xmpdata_stream
-\iow_open:Nn \TUDa@xmpdata_stream {\jobname.xmpdata}
-\tl_new:N \g_TUDa@xmp_title
-\tl_new:N \g_TUDa@xmp_author
+\iow_new:N \ptxcd_xmpdata_stream
+\iow_open:Nn \ptxcd_xmpdata_stream {\jobname.xmpdata}
+\tl_new:N \g_ptxcd_xmp_title
+\tl_new:N \g_ptxcd_xmp_author
-\cs_new:Nn \TUDa_pass_TitleData: {
+\cs_new:Nn \ptxcd_pass_TitleData: {
\begingroup
\def\newline{}
\def\\{}
\let\thanks\use_none:n
\cs_set:Npn \and {\sep}
- \bool_if:NTF \g_TUDa_pass_TitleData_bool {
- \tl_gset:Nx \g_TUDa@xmp_title {\@title}
+ \bool_if:NTF \g_ptxcd_pass_TitleData_bool {
+ \tl_gset:Nx \g_ptxcd_xmp_title {\@title}
\seq_clear:N \l_tmpa_seq
- \seq_map_inline:Nn \g_TUDa_author_seq {
+ \seq_map_inline:Nn \g_ptxcd_author_seq {
\seq_put_right:Nx \l_tmpa_seq {##1}
}
- \tl_gset:Nx \g_TUDa@xmp_author {\seq_use:Nn \l_tmpa_seq {\sep}}
- \iow_now:Nx \TUDa@xmpdata_stream
+ \tl_gset:Nx \g_ptxcd_xmp_author {\seq_use:Nn \l_tmpa_seq {\sep}}
+ \iow_now:Nx \ptxcd_xmpdata_stream
{
- \exp_not:N \Title{\tl_to_str:V \g_TUDa@xmp_title}
+ \exp_not:N \Title{\tl_to_str:V \g_ptxcd_xmp_title}
^^J
- \exp_not:N \Author{\tl_to_str:V \g_TUDa@xmp_author}
+ \exp_not:N \Author{\tl_to_str:V \g_ptxcd_xmp_author}
^^J
\exp_not:N \Creator{LaTeX~ using~ the~ TUDa-CI~ Bundle}
}
}{
\begingroup
\use:c {pdfx@localcommands}
- \prop_map_function:NN \g_TUDa_MetaData_prop \TUDa_write_xmp_line:nn
+ \prop_map_function:NN \g_ptxcd_MetaData_prop \ptxcd_write_xmp_line:nn
\endgroup
}
\endgroup
}
-\cs_new:Nn \TUDa_write_xmp_line:nn {
+\cs_new:Nn \ptxcd_write_xmp_line:nn {
%Fallback test for older kernels
\cs_if_exist:NTF \str_uppercase:f {
\tl_set:Nx \l_tmpa_tl {
@@ -250,32 +266,32 @@
\tl_set:Nx \l_tmpa_tl {\tl_mixed_case:n {#1}}
}
\cs_if_exist:cTF {\l_tmpa_tl}{
- \iow_now:Nx \TUDa@xmpdata_stream {
+ \iow_now:Nx \ptxcd_xmpdata_stream {
\c_backslash_str \l_tmpa_tl {\exp_not:n {#2}}
}
}{
- \msg_error:nnn {TUDapub} {unknown-metadata} {#1}
+ \msg_error:nnn{tudapub} {unknown-metadata} {#1}
}
}
-\bool_new:N \g_TUDa_pass_TitleData_bool
-\bool_gset_true:N \g_TUDa_pass_TitleData_bool
-\prop_new:N \g_TUDa_MetaData_prop
+\bool_new:N \g_ptxcd_pass_TitleData_bool
+\bool_gset_true:N \g_ptxcd_pass_TitleData_bool
+\prop_new:N \g_ptxcd_MetaData_prop
\newcommand*{\Metadata}[1]{
- \bool_gset_false:N \g_TUDa_pass_TitleData_bool
- \prop_gset_from_keyval:Nn \g_TUDa_MetaData_prop {#1}
+ \bool_gset_false:N \g_ptxcd_pass_TitleData_bool
+ \prop_gset_from_keyval:Nn \g_ptxcd_MetaData_prop {#1}
}
-\msg_new:nnnn {TUDapub} {unknown-metadata} {
+\msg_new:nnnn{tudapub} {unknown-metadata} {
You~ used~ the~ #1~ metadata~ entry.\\
I~ don't~ know~ how~ to~ handle~ that.\\
It~ will~ be~ ignored.
} {See~ TUDa-CI~ or~ pdfx~ documentation~ for~ details.}
\else:
-\msg_new:nnn {tudapub} {no-pdfa}{The~ tudapub~ class~ won't~ create~ PDF/A-mode.}
-\msg_info:nn {tudapub} {no-pdfa}
+\msg_new:nnn{tudapub} {no-pdfa}{The~ tudapub~ class~ won't~ create~ PDF/A-mode.}
+\msg_info:nn{tudapub} {no-pdfa}
%%hyperref
\RequirePackage[hidelinks, unicode,hyperfootnotes=false]{hyperref}
\fi:
@@ -286,13 +302,13 @@
%redefine \author to manage \and and \thanks
-\seq_new:N \g_TUDa_author_seq
+\seq_new:N \g_ptxcd_author_seq
\renewcommand*\author[1]{
- \seq_gset_split:Nnn \g_TUDa_author_seq {\and} {#1}
+ \seq_gset_split:Nnn \g_ptxcd_author_seq {\and} {#1}
}
-\msg_new:nnn {TUDaSciPoster} {unknown-language} {
+\msg_new:nnn{tudasciposter} {unknown-language} {
You~selected~an~unknown~language~#1.\\
The~Variable~#2~does~not~have~a~predefined~value.\\
Ensure~to~redefine~#2~to~match~your~language.\\
@@ -300,7 +316,7 @@
}
\providecommand*\authorandname{
- \msg_warning:nnxxx {TUDaSciPoster} {unknown-language}
+ \msg_warning:nnxxx{tudasciposter} {unknown-language}
{\languagename} {\exp_not:N \authorandname} {und}
und
}
@@ -310,7 +326,7 @@
\renewcommand*{\@author}{
- \seq_use:Nnnn \g_TUDa_author_seq {~\authorandname{}~} {,~} {~\&~}
+ \seq_use:Nnnn \g_ptxcd_author_seq {~\authorandname{}~} {,~} {~\&~}
}
\newcommand\titlegraphic[1]{\def\@titlegraphic{#1}}
@@ -336,7 +352,7 @@
}
\newlength{\contentwidth}
-\setlength{\contentwidth}{\dimexpr\paperwidth-2\g_TUDa_margin_dim\relax}
+\setlength{\contentwidth}{\dimexpr\paperwidth-2\g_ptxcd_margin_dim\relax}
\newlength{\contentheight}
@@ -345,86 +361,92 @@
{
spread,
parbox=false,
- bottom=\dim_eval:n {\g_TUDa_margin_dim
- \bool_if:NT \g_TUDa_poster_foot_bool {+\g_TUDa_footheight_dim + 3\c_TUDa_rulesep_dim}
+ bottom=\dim_eval:n {\g_ptxcd_margin_dim
+ \bool_if:NT \g_ptxcd_poster_foot_bool {+\g_ptxcd_footheight_dim + 3\c_ptxcd_rulesep_dim}
},
- left=\g_TUDa_margin_dim,
- right=\g_TUDa_margin_dim,
- before= {\TUDa@poster_setup_title_box:},
+ left=\g_ptxcd_margin_dim,
+ right=\g_ptxcd_margin_dim,
+ before= {\ptxcd_poster_setup_title_box:},
top= \dim_eval:n {
- \g_TUDa_margin_dim
- +\box_ht:N \TUDa@posterrule_box
- +\box_dp:N \TUDa@posterrule_box
-+ \g_TUDa_titleblock_dim
- +4\c_TUDa_rulesep_dim
- +\box_ht:N \g_TUDa_author_box
- +\box_dp:N \g_TUDa_author_box
+ \bool_if:NF \g_ptxcd_colorback_bool {1.5}
+ \g_ptxcd_margin_dim
+ +\box_ht:N \ptxcd_headrule_box
+ +\box_dp:N \ptxcd_headrule_box
+ +\g_ptxcd_titleblock_dim
+ +4\c_ptxcd_rulesep_dim
+ +\box_ht:N \g_ptxcd_author_box
+ +\box_dp:N \g_ptxcd_author_box
},
overlay={%
- \coordinate(topleft) at ([xshift=\g_TUDa_margin_dim, yshift=-\g_TUDa_margin_dim]current~page.north~ west);
- \coordinate(topright) at ([xshift=-\g_TUDa_margin_dim, yshift=-\g_TUDa_margin_dim]current~page.north~ east);
- \coordinate(bottomleft) at ([xshift=\g_TUDa_margin_dim, yshift=\g_TUDa_margin_dim]current~page.south~ west);
- \coordinate(bottomright) at ([xshift=-\g_TUDa_margin_dim, yshift=\g_TUDa_margin_dim]current~page.south~ east);
+ \coordinate(topleft) at ([xshift=\g_ptxcd_margin_dim, yshift=-\g_ptxcd_margin_dim]current~page.north~ west);
+ \coordinate(topright) at ([xshift=-\g_ptxcd_margin_dim, yshift=-\g_ptxcd_margin_dim]current~page.north~ east);
+ \coordinate(bottomleft) at ([xshift=\g_ptxcd_margin_dim, yshift=\g_ptxcd_margin_dim]current~page.south~ west);
+ \coordinate(bottomright) at ([xshift=-\g_ptxcd_margin_dim, yshift=\g_ptxcd_margin_dim]current~page.south~ east);
+ \dim_gset:Nn \g_ptxcd_titleindent_dim {\bool_if:NTF \g_ptxcd_colorback_bool {3\c_ptxcd_rulesep_dim} {\c_zero_dim}}
- \node[inner~sep=0pt, anchor=north~west](identbar) at (topleft){\TUDa@posterrule};
+ \node[inner~sep=0pt, anchor=north~west](identbar) at (topleft){\ptxcd_headrule};
+ \bool_if:NTF \g_ptxcd_colorback_bool
+ \fill \path [identbarcolor]
+ (identbar.south~east)rectangle([yshift=-\g_ptxcd_titleblock_dim]identbar.south~west) coordinate(bottomlefttitleblock);
- \fill[identbarcolor]
- (identbar.south~east)rectangle([yshift=-\g_TUDa_titleblock_dim]identbar.south~west) coordinate(bottomlefttitleblock);
- \node[anchor=north~east,inner~sep=0pt,minimum~width=2.5\c_TUDa_logoheight_dim](TUDalogo) at ([xshift=.3\c_TUDa_logoheight_dim,yshift=-.5\c_TUDa_logoheight_dim]identbar.south~east){
- \includegraphics[height=\c_TUDa_logoheight_dim]{\g_TUDa_logofile_tl}};
+ \node[anchor=north~east,inner~sep=0pt,minimum~width=2.5\c_ptxcd_logoheight_dim](TUDalogo) at ([xshift=.3\c_ptxcd_logoheight_dim,yshift=-.5\c_ptxcd_logoheight_dim]identbar.south~east){
+ \includegraphics[height=\c_ptxcd_logoheight_dim]{\g_ptxcd_logofile_tl}};
- \node[inner~sep=0pt,text~width=2.2\c_TUDa_logoheight_dim,align=right,anchor=north~west,](titlegraphic) at ([yshift=-\c_TUDa_rulesep_dim]TUDalogo.south~west){\box_use:N \g_TUDa_titlegraphic_box};
+ \node[inner~sep=0pt,text~width=2.2\c_ptxcd_logoheight_dim,align=right,anchor=north~west,](titlegraphic) at ([yshift=-\c_ptxcd_rulesep_dim]TUDalogo.south~west){\box_use:N \g_ptxcd_titlegraphic_box};
- \node[anchor=north~west,inner~sep=0pt,] (title) at ([xshift=3\c_TUDa_rulesep_dim,yshift=-.5\c_TUDa_logoheight_dim]identbar.south~west) {\box_use:N \g_TUDa_title_box};
+ \node[anchor=north~west,inner~sep=0pt,] (title) at ([
+ xshift=\g_ptxcd_titleindent_dim,yshift=-.5\c_ptxcd_logoheight_dim]identbar.south~west) {\box_use:N \g_ptxcd_title_box};
- \draw[line~ width=.5\c_TUDa_smallrule_dim](bottomlefttitleblock)--++(\contentwidth,0);
+ \bool_if:NT \g_ptxcd_titlesepline_bool
+ {\draw[line~ width=.5\c_ptxcd_smallrule_dim](bottomlefttitleblock)--++(\contentwidth,0);}
- \node[anchor=north~west, inner~xsep=0pt, inner~ ysep=\c_TUDa_rulesep_dim] (author) at ([xshift=3\c_TUDa_rulesep_dim]bottomlefttitleblock) {\box_use:N \g_TUDa_author_box};
+ \node[anchor=north~west, inner~xsep=0pt, inner~ ysep=\c_ptxcd_rulesep_dim] (author) at ([xshift=\g_ptxcd_titleindent_dim]bottomlefttitleblock) {\box_use:N \g_ptxcd_author_box};
- \draw[line~ width=.5\c_TUDa_smallrule_dim](author.south-|identbar.west)--++(\contentwidth,0);
+ \draw[line~ width=.5\c_ptxcd_smallrule_dim](author.south-|identbar.west)--++(\contentwidth,0);
+ \bool_if:NT \g_ptxcd_poster_foot_bool {\__ptxcd_typeset_footer:}
+ }}
+}
- \bool_if:NT \g_TUDa_poster_foot_bool {
+\cs_new:Nn \__ptxcd_typeset_footer: {
\coordinate(lastpos) at (bottomright);
- \tl_if_empty:NF \g_TUDa_poster_qrcode_tl
- {
- \node[anchor=south~east, inner~sep=\z@] (qrcode)at (lastpos)
- {
- \exp_args:NnV \use:n {\qrcode[height=\dim_use:N \g_TUDa_footheight_dim]}\g_TUDa_poster_qrcode_tl
- };
- \coordinate (lastpos) at (qrcode.south~west);
- }
- \box_if_empty:NF \g_TUDa_footergraphics_box {
- \node[anchor=south~east, inner~sep=\z@] at (lastpos) {
- \accentfont
- \box_use:N \g_TUDa_footergraphics_box
- };
- }
- \node[anchor=north~ west, inner~ sep=\z@] (infofooter) at ([yshift=\g_TUDa_footheight_dim]bottomleft) {
- \parbox{\dim_eval:n {\contentwidth
- -\box_wd:N \g_TUDa_footergraphics_box
- \tl_if_empty:NF \g_TUDa_poster_qrcode_tl {-\g_TUDa_footheight_dim-\c_TUDa_rulesep_dim}
- }}{
- \rule{\linewidth}{.5\c_TUDa_smallrule_dim}\\
- \accentfont\small\g_TUDa_poster_foot_tl
- \par\medskip
- \let\footnotetext\TUDa@title@footnote
- \g_TUDa_thanks_tl}
- };
-
-
-}
- }}
+ \tl_if_empty:NF \g_ptxcd_poster_qrcode_tl
+ {
+ \node[anchor=south~east, inner~sep=\z@] (qrcode)at (lastpos)
+ {
+ \exp_args:NnV \use:n {\qrcode[height=\dim_use:N \g_ptxcd_footheight_dim]}\g_ptxcd_poster_qrcode_tl
+ };
+ \coordinate (lastpos) at (qrcode.south~west);
+ }
+ \box_if_empty:NF \g_ptxcd_footergraphics_box {
+ \node[anchor=south~east, inner~sep=\z@] at (lastpos) {
+ \accentfont
+ \box_use:N \g_ptxcd_footergraphics_box
+ };
+ }
+ \node[anchor=north~ west, inner~ sep=\z@] (infofooter) at ([yshift=\g_ptxcd_footheight_dim]bottomleft) {
+ \parbox{\dim_eval:n {\contentwidth
+ -\box_wd:N \g_ptxcd_footergraphics_box
+ \tl_if_empty:NF \g_ptxcd_poster_qrcode_tl {-\g_ptxcd_footheight_dim-\c_ptxcd_rulesep_dim}
+ }}{
+ \rule{\linewidth}{.5\c_ptxcd_smallrule_dim}\\
+ \accentfont\small\g_ptxcd_poster_foot_tl
+ \par\medskip
+ \let\footnotetext\ptxcd_title@footnote
+ \g_ptxcd_thanks_tl}
+ };
}
% Background Colors
\colorlet{backgroundcolor}{white}
\colorlet{framecolor}{white}
% Title Colors
-\colorlet{titlefgcolor}{textonaccentcolor}
+\bool_if:NTF \g_ptxcd_colorback_bool
+ {\colorlet{titlefgcolor}{textonaccentcolor}}
+ {\colorlet{titlefgcolor}{black}}
\colorlet{titlebgcolor}{accentcolor}
% Block Colors
\colorlet{blocktitlebgcolor}{accentcolor}
@@ -437,38 +459,39 @@
\colorlet{innerblockbodybgcolor}{textonaccentcolor}
\colorlet{innerblockbodyfgcolor}{black}
-\dim_new:N \g_TUDa_titleblock_dim
+\dim_new:N \g_ptxcd_titleblock_dim
+\dim_new:N \g_ptxcd_titleindent_dim
-\cs_new:Nn \TUDa@poster_setup_title_box: {
- \hbox_gset:Nn \g_TUDa_title_box {
+\cs_new:Nn \ptxcd_poster_setup_title_box: {
+ \hbox_gset:Nn \g_ptxcd_title_box {
\parbox{.65\paperwidth}{
\raggedright
\usekomafont{disposition}\usekomafont{title}\leavevmode\@title \par
}
}
- \hbox_gset:Nn \g_TUDa_author_box {
- \parbox{\dimexpr\contentwidth-6\c_TUDa_rulesep_dim\relax}{
- \TUDa_def_footnotelabel:
+ \hbox_gset:Nn \g_ptxcd_author_box {
+ \parbox{\dimexpr\contentwidth-6\c_ptxcd_rulesep_dim\relax}{
+ \ptxcd_def_footnotelabel:
{\usekomafont{author}\@author\\}%\\[.2\titleinnersep]
- \tl_gset:No \g_TUDa_thanks_tl {\@thanks}
+ \tl_gset:No \g_ptxcd_thanks_tl {\@thanks}
\@institute
}
}
\tl_if_empty:NF \@titlegraphic {
- \hbox_gset:Nn \g_TUDa_titlegraphic_box {
- \parbox{2.2\c_TUDa_logoheight_dim}{
+ \hbox_gset:Nn \g_ptxcd_titlegraphic_box {
+ \parbox{2.2\c_ptxcd_logoheight_dim}{
\raggedleft
\@titlegraphic
}
}
}
- \dim_gset:Nn \g_TUDa_titleblock_dim {
+ \dim_gset:Nn \g_ptxcd_titleblock_dim {
\dim_max:nn
{\dim_max:nn
- {2\c_TUDa_logoheight_dim}
- {\box_ht:N \g_TUDa_titlegraphic_box +\box_dp:N \g_TUDa_titlegraphic_box+1.8\c_TUDa_logoheight_dim}
+ {2\c_ptxcd_logoheight_dim}
+ {\box_ht:N \g_ptxcd_titlegraphic_box +\box_dp:N \g_ptxcd_titlegraphic_box+1.8\c_ptxcd_logoheight_dim}
}
- {\box_ht:N \g_TUDa_title_box+ \box_dp:N \g_TUDa_title_box+.8\c_TUDa_logoheight_dim}
+ {\box_ht:N \g_ptxcd_title_box+ \box_dp:N \g_ptxcd_title_box+.8\c_ptxcd_logoheight_dim}
}
}
@@ -483,15 +506,15 @@
coltext=black,
colback=white,
size=minimal,
- boxrule=.5\c_TUDa_smallrule_dim,
+ boxrule=.5\c_ptxcd_smallrule_dim,
leftrule=\z@,
rightrule=\z@,
fonttitle=\usekomafont{disposition}\usekomafont{section},
before~title={\strut},
- toptitle=.5\c_TUDa_rulesep_dim,
- bottomtitle=.5\c_TUDa_rulesep_dim,
- top=\c_TUDa_rulesep_dim,
- bottom=\c_TUDa_rulesep_dim,
+ toptitle=.5\c_ptxcd_rulesep_dim,
+ bottomtitle=.5\c_ptxcd_rulesep_dim,
+ top=\c_ptxcd_rulesep_dim,
+ bottom=\c_ptxcd_rulesep_dim,
frame~code={
\iftcb@hasTitle
\fill[tcbcolframe](frame.north~west)rectangle(title.north~east);
@@ -511,8 +534,8 @@
TUDa-colored/.style =
{
TUDa,
- left=.5\c_TUDa_rulesep_dim,
- right=.5\c_TUDa_rulesep_dim,
+ left=.5\c_ptxcd_rulesep_dim,
+ right=.5\c_ptxcd_rulesep_dim,
colbacktitle=blocktitlebgcolor,
coltitle=blocktitlefgcolor,
colback=blockbodybgcolor,
@@ -537,8 +560,8 @@
coltitle=blocktitlefgcolor,
colback=blockbodybgcolor,
coltext=blockbodyfgcolor,
- boxsep=\c_TUDa_rulesep_dim,
- boxrule=.5\c_TUDa_smallrule_dim,
+ boxsep=\c_ptxcd_rulesep_dim,
+ boxrule=.5\c_ptxcd_smallrule_dim,
titlerule=\z@,
arc=1ex,
auto~outer~arc,
@@ -559,15 +582,16 @@
}
%Select default box styles according to style option
-\tcbposterset{boxes ={\g_TUDa_boxstyle_tl}, poster={spacing=5cm}}
+\tcbposterset{boxes ={\g_ptxcd_boxstyle_tl}, poster={spacing=5cm}}
\tcbset{
- every~ box~ on~ layer~ 3/.style={reset,\g_TUDa_boxstyle_tl -inner},
- every~ box~ on~ layer~ 4/.style={reset,\g_TUDa_boxstyle_tl -inner},
+ every~ box~ on~ layer~ 3/.style={reset,\g_ptxcd_boxstyle_tl -inner},
+ every~ box~ on~ layer~ 4/.style={reset,\g_ptxcd_boxstyle_tl -inner},
}
%ADjust caption indent
\setcapindent{1em}
+\file_if_exist_input:n {tuda\g_ptxcd_department_str.cfg}
\endinput
%end of tudasciposter.cls
diff --git a/macros/latex/contrib/tuda-ci/tex/tudasize9pt.clo b/macros/latex/contrib/tuda-ci/tex/tudasize9pt.clo
index 32653895d5..320499f748 100644
--- a/macros/latex/contrib/tuda-ci/tex/tudasize9pt.clo
+++ b/macros/latex/contrib/tuda-ci/tex/tudasize9pt.clo
@@ -1,4 +1,4 @@
-%% This is file `tudasize9pt.clo' version 2.11 (2020/06/12),
+%% This is file `tudasize9pt.clo' version 3.00 (2020/09/08),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -26,8 +26,8 @@
%%
%% ============================================================================
%%
-\def\fileversion{2.11}
-\def\filedate{2020/06/12}
+\def\fileversion{3.00}
+\def\filedate{2020/09/08}
%% This is file `tudasize9pt.clo' version 1.0 (2018/12/12),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
diff --git a/macros/latex/contrib/tuda-ci/tex/tudathesis.cfg b/macros/latex/contrib/tuda-ci/tex/tudathesis.cfg
index 8cb5f2209c..cd4b4c647c 100644
--- a/macros/latex/contrib/tuda-ci/tex/tudathesis.cfg
+++ b/macros/latex/contrib/tuda-ci/tex/tudathesis.cfg
@@ -1,4 +1,4 @@
-%% This is file `tudathesis.cfg' version 2.11 (2020/06/12),
+%% This is file `tudathesis.cfg' version 3.00 (2020/09/08),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -26,270 +26,268 @@
%%
%% ============================================================================
%%
-\def\fileversion{2.11}
-\def\filedate{2020/06/12}
+\def\fileversion{3.00}
+\def\filedate{2020/09/08}
\RequirePackage{expl3}
\ProvidesExplFile{tudathesis.cfg}
-{\filedate}{\fileversion}{Special Features for publication type 'thesis' using TU Darmstadt's Coporate Design (tuda-ci)}
+{\filedate}{\fileversion}{Special Features for publication type 'thesis' using TU Darmstadt's Corporate Design (tuda-ci)}
\RequirePackage{l3keys2e}
-\tl_new:N \g_TUDa_thesis_drtext_tl
-\clist_if_exist:NF \g_TUDa_Required_title_data_clist {\clist_new:N \g_TUDa_Required_title_data_clist}
+\tl_new:N \g_ptxcd_thesis_drtext_tl
+\clist_if_exist:NF \g_ptxcd_Required_title_data_clist {\clist_new:N \g_ptxcd_Required_title_data_clist}
-\cs_new:Nn \TUDa_declare_caption:Nnnn {
- \TUDa_define_captionFallback:Nn #1 {#2}
+\cs_new:Nn \ptxcd_declare_caption:Nnnn {
+ \ptxcd_define_captionFallback:Nn #1 {#2}
\defcaptionname{ngerman, german}{#1}{#2}
\defcaptionname{english}{#1}{#3}
\defcaptionname{british}{#1}{#4}
}
-\cs_new:Nn \TUDa_declare_caption:Nnn {
- \TUDa_declare_caption:Nnnn #1 {#2} {#3} {#3}
+\cs_new:Nn \ptxcd_declare_caption:Nnn {
+ \ptxcd_declare_caption:Nnnn #1 {#2} {#3} {#3}
}
%Declare macros for department
-\cs_new:Nn \TUDa_select_department:n {
+\cs_new:Nn \ptxcd_select_department:n {
\str_case:nnTF {#1} {
- {arch} {\TUDa_declare_caption:Nnn \TUDa@department {Architektur} {Architecture}}
- {bauing} {\TUDa_declare_caption:Nnn \TUDa@department {Bau-~und~Umweltingenieurwissenschaften}{Civil~and~Environmental~Engineering}}
- {bio} {\TUDa_declare_caption:Nnn \TUDa@department {Biologie}{Biology}}
- {chem} {\TUDa_declare_caption:Nnn \TUDa@department {Chemie}{Chemistry}}
- {etit} {\TUDa_declare_caption:Nnn \TUDa@department {Elektrotechnik~und~Informationstechnik}{Electrical~Engineering~and~Information~Technology}}
- {gugw} {\TUDa_declare_caption:Nnn \TUDa@department {Gesellschafts-~und~Geschichtswissenschaften}{History~and~Social~Sciences}}
- {humanw} {\TUDa_declare_caption:Nnn \TUDa@department {Humanwissenschaften}{Human~Sciences}}
- {inf} {\TUDa_declare_caption:Nnn \TUDa@department {Informatik}{Computer~Science}}
- {mb} {\TUDa_declare_caption:Nnn \TUDa@department {Maschinenbau}{Mechanical~Engineering}}
- {matgeo} {\TUDa_declare_caption:Nnn \TUDa@department {Material-~und~Geowissenschaften}{Materials~and~Earth~Sciences}}
- {math} {\TUDa_declare_caption:Nnn \TUDa@department {Mathematik}{Mathematics}}
- {phys} {\TUDa_declare_caption:Nnn \TUDa@department {Physik}{Physics}}
- {wi} {\TUDa_declare_caption:Nnn \TUDa@department {Rechts-~und~Wirtschaftswissenschaften}{Law~and~Economics}}
+ {arch} {\ptxcd_declare_caption:Nnn \ptxcd_department {Architektur} {Architecture}}
+ {bauing} {\ptxcd_declare_caption:Nnn \ptxcd_department {Bau-~und~Umweltingenieurwissenschaften}{Civil~and~Environmental~Engineering}}
+ {bio} {\ptxcd_declare_caption:Nnn \ptxcd_department {Biologie}{Biology}}
+ {chem} {\ptxcd_declare_caption:Nnn \ptxcd_department {Chemie}{Chemistry}}
+ {etit} {\ptxcd_declare_caption:Nnn \ptxcd_department {Elektrotechnik~und~Informationstechnik}{Electrical~Engineering~and~Information~Technology}}
+ {gugw} {\ptxcd_declare_caption:Nnn \ptxcd_department {Gesellschafts-~und~Geschichtswissenschaften}{History~and~Social~Sciences}}
+ {humanw} {\ptxcd_declare_caption:Nnn \ptxcd_department {Humanwissenschaften}{Human~Sciences}}
+ {inf} {\ptxcd_declare_caption:Nnn \ptxcd_department {Informatik}{Computer~Science}}
+ {mb} {\ptxcd_declare_caption:Nnn \ptxcd_department {Maschinenbau}{Mechanical~Engineering}}
+ {matgeo} {\ptxcd_declare_caption:Nnn \ptxcd_department {Material-~und~Geowissenschaften}{Materials~and~Earth~Sciences}}
+ {math} {\ptxcd_declare_caption:Nnn \ptxcd_department {Mathematik}{Mathematics}}
+ {phys} {\ptxcd_declare_caption:Nnn \ptxcd_department {Physik}{Physics}}
+ {wi} {\ptxcd_declare_caption:Nnn \ptxcd_department {Rechts-~und~Wirtschaftswissenschaften}{Law~and~Economics}}
}
{
- \TUDa_declare_caption:Nnn \departmentname {Fachbereich} {department}
- \TUDa_declare_caption:Nnn \TUDa_in_department {im~ \departmentname}{in~the~\departmentname{}~ of}
- \TUDa_declare_caption:Nnn \departmentfullname {\departmentname{}~ \TUDa@department} { \TUDa@department{}~ \text_titlecase:n{\departmentname}}
+ \ptxcd_declare_caption:Nnn \departmentname {Fachbereich} {department}
+ \ptxcd_declare_caption:Nnn \ptxcd_departmentprefix {im~ \departmentname}{in~the~\departmentname{}~ of}
+ \ptxcd_declare_caption:Nnn \departmentfullname {\departmentname{}~ \ptxcd_department} { \ptxcd_department{}~ \text_titlecase:n{\departmentname}}
}
- {\bool_if:NTF \g_TUDa_dr_bool
+ {\bool_if:NTF \g_ptxcd_dr_bool
{
- \msg_warning:nnn {tudapub/tudathesis} {unrecognized-department} {#1}
- \gdef\TUDa@department{#1}
- \TUDa_declare_caption:Nnn \departmentname {Fachbereich} {department}
+ \msg_warning:nnn{tudapub/thesis} {unrecognized-department} {#1}
+ \gdef\ptxcd_department{#1}
+ \ptxcd_declare_caption:Nnn \departmentname {Fachbereich} {department}
}
- {\TUDa_select_studyfield:n {#1}}
+ {\ptxcd_select_studyfield:n {#1}}
}
}
-\cs_new:Nn \TUDa_select_studyfield:n {
+\cs_new:Nn \ptxcd_select_studyfield:n {
\str_case:nnTF {#1} {
- {ce}{\TUDa_declare_caption:Nnn \TUDa@department {Computational\nobreakspace Engineering}{Computational\nobreakspace Engineering}}
- {ese}{\TUDa_declare_caption:Nnn \TUDa@department {Energy~Science~and~Engineering}{Energy~Science~and~Engineering}}
- {ist}{\TUDa_declare_caption:Nnn \TUDa@department {Information~Systems~Technology}{Information~Systems~Technology}}
- {mech}{\TUDa_declare_caption:Nnn \TUDa@department {Mechanik}{Mechanics}}
- {metro}{\TUDa_declare_caption:Nnn \TUDa@department {Mechatronik}{Mechatronics}}
+ {ce}{\ptxcd_declare_caption:Nnn \ptxcd_department {Computational\nobreakspace Engineering}{Computational\nobreakspace Engineering}}
+ {ese}{\ptxcd_declare_caption:Nnn \ptxcd_department {Energy~Science~and~Engineering}{Energy~Science~and~Engineering}}
+ {ist}{\ptxcd_declare_caption:Nnn \ptxcd_department {Informationssystemtechnik} {Information~Systems~Technology}}
+ {mech}{\ptxcd_declare_caption:Nnn \ptxcd_department {Mechanik}{Mechanics}}
+ {metro}{\ptxcd_declare_caption:Nnn \ptxcd_department {Mechatronik}{Mechatronics}}
}
{
- \TUDa_declare_caption:Nnn \departmentname {Studienbereich} {field~of~study}
- \TUDa_declare_caption:Nnn \departmentfullname {\departmentname{}~ \TUDa@department} {\departmentname{}:~\TUDa@department}
- \TUDa_declare_caption:Nnn \TUDa_in_department {im~ \departmentname}{in~the~\departmentname}
- \TUDa_declare_caption:Nnn \TUDa@in_department {\TUDa_in_department{}~\TUDa@department} {\TUDa_in_department{}~``\TUDa@department''}
+ \ptxcd_declare_caption:Nnn \departmentname {Studienbereich} {field~of~study}
+ \ptxcd_declare_caption:Nnn \departmentfullname {\departmentname{}~ \ptxcd_department} {\departmentname{}:~\ptxcd_department}
+ \ptxcd_declare_caption:Nnn \ptxcd_departmentprefix {im~ \departmentname}{in~the~\departmentname}
+ \ptxcd_declare_caption:Nnn \ptxcd_in_department {\ptxcd_departmentprefix{}~\ptxcd_department} {\ptxcd_departmentprefix{}~``\ptxcd_department''}
}
{
- \msg_warning:nnn {tudapub/tudathesis} {unrecognized-department} {#1}
- \gdef\TUDa@department{#1}
- \TUDa_declare_caption:Nnn \departmentname {Fachbereich} {department}
+ \msg_warning:nnn{tudapub/thesis} {unrecognized-department} {#1}
+ \gdef\ptxcd_department{#1}
+ \ptxcd_declare_caption:Nnn \departmentname {Fachbereich} {department}
}
}
-\cs_new:Nn \TUDa_insert_studentID:n {
- (\TUDa@studentIDname :\nobreakspace#1)
+\cs_new:Nn \ptxcd_insert_studentID:n {
+ (\ptxcd_studentIDname :\nobreakspace#1)
}
-\TUDa_declare_caption:Nnn \TUDa@byname {von} {by}
-\TUDa_declare_caption:Nnn \TUDa@fromname {aus} {from}
-\TUDa_declare_caption:Nnn \TUDa_in_department {im~ \departmentname}{in~the~\departmentname{}~ of}
-\TUDa_declare_caption:Nnn \TUDa@reviewname {Gutachten}{review}
-\TUDa_declare_caption:Nnnn \TUDa@examdatename {Tag~ der~ Prüfung}{Date~ of~ thesis~ defense}{Date~ of~ thesis~ defence}
-\TUDa_declare_caption:Nnn \TUDa@submissiondatename {Tag~ der~ Einreichung}{Date~ of~ submission}
-\TUDa_declare_caption:Nnn \TUDa@studentIDname {Matrikelnummer} {Student\nobreakspace ID}
+\ptxcd_declare_caption:Nnn \ptxcd_byname {von} {by}
+\ptxcd_declare_caption:Nnn \ptxcd_fromname {aus} {from}
+\ptxcd_declare_caption:Nnn \ptxcd_departmentprefix {im~ \departmentname}{in~the~\departmentname{}~ of}
+\ptxcd_declare_caption:Nnn \ptxcd_reviewname {Gutachten}{review}
+\ptxcd_declare_caption:Nnnn \ptxcd_examdatename {Tag~ der~ Prüfung}{Date~ of~ thesis~ defense}{Date~ of~ thesis~ defence}
+\ptxcd_declare_caption:Nnn \ptxcd_submissiondatename {Tag~ der~ Einreichung}{Date~ of~ submission}
+\ptxcd_declare_caption:Nnn \ptxcd_studentIDname {Matrikelnummer} {Student\nobreakspace ID}
%Fallback content for box if not overwritten
-\newcommand*\TUDa@box_department {\cs_if_exist_use:NF \departmentfullname {\TUDa@department}}
-\newcommand*\TUDa@in_department {}
+\newcommand*\ptxcd_box_department {\cs_if_exist_use:NF \departmentfullname {\ptxcd_department}}
+\newcommand*\ptxcd_in_department {}
+\newcommand*{\ptxcd_thesisStatus}{}
-\providecommand*{\TUDa@thesisStatus}{}
-
-\keys_define:nn {TUDa/thesis} {
+\keys_define:nn {ptxcd/thesis} {
dr .choice:,
- dr/rernat .code:n = \tl_gset:Nn \g_TUDa_thesis_drtext_tl {Zur~Erlangung~des~Grades~eines~Doktors~der~Naturwissenschaften~(Dr.\,rer.\,nat.)},
- dr/ing .code:n = \tl_gset:Nn \g_TUDa_thesis_drtext_tl {Zur~Erlangung~des~akademischen~Grades~Doktor-Ingenieur~(Dr.-Ing.)},
- dr/phil .code:n = \tl_gset:Nn \g_TUDa_thesis_drtext_tl {Zur~Erlangung~des~Grades~eines~Doktor~der~Philosophie~(Dr.\,phil.)},
+ dr/rernat .code:n = \tl_gset:Nn \g_ptxcd_thesis_drtext_tl {Zur~Erlangung~des~Grades~eines~Doktors~der~Naturwissenschaften~(Dr.\,rer.\,nat.)},
+ dr/ing .code:n = \tl_gset:Nn \g_ptxcd_thesis_drtext_tl {Zur~Erlangung~des~akademischen~Grades~Doktor-Ingenieur~(Dr.-Ing.)},
+ dr/phil .code:n = \tl_gset:Nn \g_ptxcd_thesis_drtext_tl {Zur~Erlangung~des~Grades~eines~Doktor~der~Philosophie~(Dr.\,phil.)},
type .choice:,
- type/sta .code:n = {\def\TUDa@thesisType{Studienarbeit}
- \clist_gset:Nn \g_TUDa_Required_title_data_clist {title, author, date}
- \bool_gset_false:N \g_TUDa_dr_bool
+ type/sta .code:n = {\def\ptxcd_thesisType{Studienarbeit}
+ \clist_gset:Nn \g_ptxcd_Required_title_data_clist {title, author, date}
+ \bool_gset_false:N \g_ptxcd_dr_bool
},
-% type/diplom .code:n = {\def\TUDa@thesisType{Diplomarbeit}\clist_gset:Nn \g_TUDa_Required_title_data_clist {title, author, submissiondate, reviewer, department}},
+% type/diplom .code:n = {\def\ptxcd_thesisType{Diplomarbeit}\clist_gset:Nn \g_ptxcd_Required_title_data_clist {title, author, submissiondate, reviewer, department}},
type/bsc .meta:n = {type=bachelor},
- type/bachelor .code:n = {\TUDa_declare_caption:Nnn \TUDa@thesisType{Bachelorarbeit}{bachelor~ thesis} \clist_gset:Nn \g_TUDa_Required_title_data_clist {title, author, submissiondate, department, reviewer}\bool_gset_false:N \g_TUDa_dr_bool},
- type/pp .code:n = {\def\TUDa@thesisType{Project-Proposal}\clist_gset:Nn \g_TUDa_Required_title_data_clist {title, author, date, department}\bool_gset_false:N \g_TUDa_dr_bool},
+ type/bachelor .code:n = {\ptxcd_declare_caption:Nnn \ptxcd_thesisType{Bachelorarbeit}{bachelor~ thesis} \clist_gset:Nn \g_ptxcd_Required_title_data_clist {title, author, submissiondate, department, reviewer}\bool_gset_false:N \g_ptxcd_dr_bool},
+ type/pp .code:n = {\def\ptxcd_thesisType{Project-Proposal}\clist_gset:Nn \g_ptxcd_Required_title_data_clist {title, author, date, department}\bool_gset_false:N \g_ptxcd_dr_bool},
type/msc .meta:n = {type=master},
- type/master .code:n = \TUDa_declare_caption:Nnn \TUDa@thesisType{Masterarbeit}{master~ thesis} \clist_gset:Nn \g_TUDa_Required_title_data_clist {title, author, submissiondate, department, reviewer}\bool_gset_false:N \g_TUDa_dr_bool,
- type/dr .code:n = \TUDa_declare_caption:Nnn \TUDa@thesisType{Dissertation}{doctoral~ thesis}\TUDa_declare_caption:Nnn\TUDa@thesisStatus{vorgelegte}{submitted}\clist_gset:Nn \g_TUDa_Required_title_data_clist {title, author, submissiondate , birthplace, department, reviewer}\bool_gset_true:N \g_TUDa_dr_bool,
- type/drfinal .code:n = \TUDa_declare_caption:Nnn \TUDa@thesisType {Dissertation}{doctoral~ thesis}\TUDa_declare_caption:Nnn\TUDa@thesisStatus{genehmigte}{accepted}\clist_gset:Nn \g_TUDa_Required_title_data_clist {title, author, submissiondate,examdate, birthplace, department, reviewer}\bool_gset_true:N \g_TUDa_dr_bool,
- type/unknown .code:n = \def\TUDa@thesisType{#1}\clist_gset:Nn \g_TUDa_Required_title_data_clist {}\bool_gset_false:N \g_TUDa_dr_bool,
- ignore-missing-data .bool_gset:N = \g_TUDa_missing_data_warning_bool,
+ type/master .code:n = \ptxcd_declare_caption:Nnn \ptxcd_thesisType{Masterarbeit}{master~ thesis} \clist_gset:Nn \g_ptxcd_Required_title_data_clist {title, author, submissiondate, department, reviewer}\bool_gset_false:N \g_ptxcd_dr_bool,
+ type/dr .code:n = \ptxcd_declare_caption:Nnn \ptxcd_thesisType{Dissertation}{doctoral~ thesis}\ptxcd_declare_caption:Nnn\ptxcd_thesisStatus{vorgelegte}{submitted}\clist_gset:Nn \g_ptxcd_Required_title_data_clist {title, author, submissiondate , birthplace, department, reviewer}\bool_gset_true:N \g_ptxcd_dr_bool,
+ type/drfinal .code:n = \ptxcd_declare_caption:Nnn \ptxcd_thesisType {Dissertation}{doctoral~ thesis}\ptxcd_declare_caption:Nnn\ptxcd_thesisStatus{genehmigte}{accepted}\clist_gset:Nn \g_ptxcd_Required_title_data_clist {title, author, submissiondate,examdate, birthplace, department, reviewer}\bool_gset_true:N \g_ptxcd_dr_bool,
+ type/unknown .code:n = \def\ptxcd_thesisType{#1}\clist_gset:Nn \g_ptxcd_Required_title_data_clist {}\bool_gset_false:N \g_ptxcd_dr_bool,
+ ignore-missing-data .bool_gset:N = \g_ptxcd_missing_data_warning_bool,
ignore-missing-data .initial:n = false,
- department .tl_gset:N = \g_TUDa_department_choice_tl,
- status .code:n = \tl_if_head_is_group:nTF {#1} {\TUDa_declare_caption:Nnn\TUDa@thesisStatus #1 {}} {\TUDa_declare_caption:Nnn\TUDa@thesisStatus{#1}{#1}},
+ department .tl_gset:N = \g_ptxcd_department_choice_tl,
+ status .code:n = \tl_if_head_is_group:nTF {#1} {\ptxcd_declare_caption:Nnn\ptxcd_thesisStatus #1 {}} {\ptxcd_declare_caption:Nnn\ptxcd_thesisStatus{#1}{#1}},
fieldofstudy .meta:n ={department = #1},
- ignore-title-language .bool_gset:N = \g_TUDa_ignore_title_language_bool,
+ ignore-title-language .bool_gset:N = \g_ptxcd_ignore_title_language_bool,
ignore-title-language .initial:n ={false},
- noinstbox .bool_gset:N = \g_TUDa_manual_info_box_bool,
- instbox .bool_gset_inverse:N = \g_TUDa_manual_info_box_bool,
+ noinstbox .bool_gset:N = \g_ptxcd_manual_info_box_bool,
+ instbox .bool_gset_inverse:N = \g_ptxcd_manual_info_box_bool,
instbox .initial:n = true
}
-\prop_map_inline:Nn \g_TUDa_unknown_clsopts_prop {
- \keys_if_exist:nnT {TUDa/thesis} {#1} {
- \keys_set:nn {TUDa/thesis} {#1=#2}
+\prop_map_inline:Nn \g_ptxcd_unknown_clsopts_prop {
+ \keys_if_exist:nnT {ptxcd/thesis} {#1} {
+ \keys_set:nn {ptxcd/thesis} {#1=#2}
}
}
-\tl_if_empty:NF \g_TUDa_thesis_options_tl {\keys_set:nV {TUDa/thesis} \g_TUDa_thesis_options_tl}
+\tl_if_empty:NF \g_ptxcd_thesis_options_tl {\keys_set:nV {ptxcd/thesis} \g_ptxcd_thesis_options_tl}
-\cs_new:Npn \drtext #1 {\tl_gset:Nn \g_TUDa_thesis_drtext_tl {#1}}
-\tl_new:N \g_TUDa_titleintro_tl
-\cs_new:Npn \titleintro #1 {\tl_gset:Nn \g_TUDa_titleintro_tl {#1}}
-\tl_new:N \g_TUDa_titleaddendum_tl
-\cs_new:Npn \titleaddendum #1 {\tl_gset:Nn \g_TUDa_titleaddendum_tl {#1}}
+\cs_new:Npn \drtext #1 {\tl_gset:Nn \g_ptxcd_thesis_drtext_tl {#1}}
+\tl_new:N \g_ptxcd_titleintro_tl
+\cs_new:Npn \titleintro #1 {\tl_gset:Nn \g_ptxcd_titleintro_tl {#1}}
+\tl_new:N \g_ptxcd_titleaddendum_tl
+\cs_new:Npn \titleaddendum #1 {\tl_gset:Nn \g_ptxcd_titleaddendum_tl {#1}}
-\msg_new:nnnn {TUDapub/thesis} {required-data-missing} {You~did~not~provide~#1~data~for~the~title.~Either~provide~it~or~change~your~publication~type.} {See~ the~ TUDa-CI~ documentation~ for~ further~ information~ and~ workarounds.}
+\msg_new:nnnn{tudapub/thesis} {required-data-missing} {You~did~not~provide~#1~data~for~the~title.~Either~provide~it~or~change~your~publication~type.} {See~ the~ TUDa-CI~ documentation~ for~ further~ information~ and~ workarounds.}
-\cs_new:Nn \TUDa_missing_title_data:n {
- \bool_if:NTF \g_TUDa_missing_data_warning_bool
+\cs_new:Nn \ptxcd_missing_title_data:n {
+ \bool_if:NTF \g_ptxcd_missing_data_warning_bool
\msg_warning:nnn
- \msg_error:nnn {TUDapub/thesis} {required-data-missing} {#1}
+ \msg_error:nnn{tudapub/thesis} {required-data-missing} {#1}
}
-\cs_new:Nn \TUDa_check_title_data:Nn {
- \clist_if_in:NnT \g_TUDa_Required_title_data_clist {#2} {
+\cs_new:Nn \ptxcd_check_title_data:Nn {
+ \clist_if_in:NnT \g_ptxcd_Required_title_data_clist {#2} {
\tl_if_empty:NT #1 {
- \bool_if:NTF \g_TUDa_missing_data_warning_bool
+ \bool_if:NTF \g_ptxcd_missing_data_warning_bool
{\msg_warning:nnn}
- {\msg_error:nnn} {TUDapub/thesis} {required-data-missing} {#2}
+ {\msg_error:nnn} {tudapub/thesis} {required-data-missing} {#2}
}
}
}
-\cs_generate_variant:Nn \TUDa_check_title_data:Nn {cn}
+\cs_generate_variant:Nn \ptxcd_check_title_data:Nn {cn}
\renewcommand*\author[2][]{
- \seq_gset_split:Nnn \g_TUDa_author_seq {\and} {#2}
+ \seq_gset_split:Nnn \g_ptxcd_author_seq {\and} {#2}
\tl_if_empty:nTF {#1}
- {\def\TUDa@signature{#2}}
- {\def\TUDa@signature{#1}}
+ {\def\ptxcd_signature{#2}}
+ {\def\ptxcd_signature{#1}}
}
\newcommand*{\studentID}[1]{
- \gdef\TUDa@studentID{#1}
+ \gdef\ptxcd_studentID{#1}
}
-\gdef\TUDa@institution{}
-\gdef\TUDa@institute{}
-\gdef\TUDa@department{}
-\gdef\TUDa@studentID{}
+\gdef\ptxcd_institution{}
+\gdef\ptxcd_institute{}
+\gdef\ptxcd_department{}
+\gdef\ptxcd_studentID{}
\NewDocumentCommand{\department}{som}{%
-\IfBooleanTF{#1}{
- \tl_gset:Nn \TUDa@department {#3}
- \tl_gset:Nn \TUDa@in_department{#3}
- \IfNoValueTF {\tl_gset:Nn \TUDa@box_department {#3}} {\tl_gset:Nn \TUDa@box_department{#2}}
- \clist_remove_all:Nn \g_TUDa_Required_title_data_clist {department}
-}{
- \tl_gset:Nn \g_TUDa_department_choice_tl {#3}
- \IfNoValueF {#2} {\tl_gset:Nn \TUDa_in_department {#1}}
- }
+ \IfBooleanTF{#1}{
+ \tl_gset:Nn \ptxcd_department {#3}
+ \tl_gset:Nn \ptxcd_in_department{#3}
+ \IfNoValueTF {\tl_gset:Nn \ptxcd_box_department {#3}} {\tl_gset:Nn \ptxcd_box_department{#2}}
+ \clist_remove_all:Nn \g_ptxcd_Required_title_data_clist {department}
+ }{
+ \tl_gset:Nn \g_ptxcd_department_choice_tl {#3}
+ \IfNoValueF {#2} {\tl_gset:Nn \ptxcd_departmentprefix {#2}}
+ }
}
\newcommand*{\institute}[1]{
- \gdef\TUDa@institute{#1}
+ \gdef\ptxcd_institute{#1}
}
-\gdef\TUDa@group{}
+\gdef\ptxcd_group{}
\newcommand*{\group}[1]{%
- \gdef\TUDa@group{#1}
+ \gdef\ptxcd_group{#1}
}
-\gdef\TUDa@birthplace{}
+\gdef\ptxcd_birthplace{}
\newcommand*{\birthplace}[1]{%
- \bool_if:NTF \g_TUDa_dr_bool
- {\gdef\TUDa@birthplace{#1}}
- {\msg_info:nnn {tudapub/tudathesis} {dr-field-only} {birthplace}}
+ \bool_if:NTF \g_ptxcd_dr_bool
+ {\gdef\ptxcd_birthplace{#1}}
+ {\msg_info:nnn{tudapub/thesis} {dr-field-only} {birthplace}}
}
-\publishers{Darmstadt\bool_if:NT \g_TUDa_dr_bool {~ --~ D~17}}
+\publishers{Darmstadt\bool_if:NT \g_ptxcd_dr_bool {~ --~ D~17}}
-\seq_new:N \g_TUDa_reviewer_seq
+\seq_new:N \g_ptxcd_reviewer_seq
\newcommand*{\reviewer}[1]{
- \seq_gset_split:Nnn \g_TUDa_reviewer_seq {\and} {#1}
+ \seq_gset_split:Nnn \g_ptxcd_reviewer_seq {\and} {#1}
\tl_if_empty:nTF {#1} {\let\@reviewer\@empty}{}
}
-\gdef\TUDa@thesis@reviewer{
- \clist_if_in:NnT \g_TUDa_Required_title_data_clist {reviewer} {
- \seq_if_empty:NT \g_TUDa_reviewer_seq {\TUDa_missing_title_data:n {reviewer}}
+\cs_set:Nn \ptxcd_thesis_print_reviewer: {
+ \clist_if_in:NnT \g_ptxcd_Required_title_data_clist {reviewer} {
+ \seq_if_empty:NT \g_ptxcd_reviewer_seq {\ptxcd_missing_title_data:n {reviewer}}
}
\int_zero:N \l_tmpb_int
\par\vspace*{\baselineskip}
- \seq_map_inline:Nn \g_TUDa_reviewer_seq
+ \seq_map_inline:Nn \g_ptxcd_reviewer_seq
{
\int_incr:N \l_tmpb_int
- \int_to_arabic:n {\l_tmpb_int}.~\text_titlecase:n{\TUDa@reviewname}:~\exp_not:n {##1}\\
+ \int_to_arabic:n {\l_tmpb_int}.~\text_titlecase:n{\ptxcd_reviewname}:~\exp_not:n {##1}\\
}
}
-\gdef\TUDa@examdate{}
+\gdef\ptxcd_examdate{}
\newcommand*{\examdate}[1]{
- \bool_if:NTF \g_TUDa_dr_bool
- {\gdef\TUDa@examdate{#1}}
- {\msg_info:nnn {tudapub/tudathesis} {dr-field-only} {examdate}}
+ \bool_if:NTF \g_ptxcd_dr_bool
+ {\gdef\ptxcd_examdate{#1}}
+ {\msg_info:nnn{tudapub/thesis} {dr-field-only} {examdate}}
}
-\gdef\TUDa@submissiondate{}
-
+\gdef\ptxcd_submissiondate{}
\newcommand*{\submissiondate}[1]{
- \gdef\TUDa@submissiondate{#1}
+ \gdef\ptxcd_submissiondate{#1}
}
-\gdef\TUDa@submissiondate{}
\gdef\@date{}
-\newcommand*{\TUDa@thesis@dates}[1][,~]{
+\cs_new:Nn \ptxcd_thesis_print_dates:n {
\bool_set_false:N \l_tmpa_bool
\tl_if_empty:NF \@date {
- \TUDa@datename\tl_if_empty:NF \TUDa@datename {\TUDa@dateseparator}\@date
+ \ptxcd_datename\tl_if_empty:NF \ptxcd_datename {\ptxcd_dateseparator}\@date
\bool_set_true:N \l_tmpa_bool
}
- \tl_if_empty:NF \TUDa@submissiondate {
- \bool_if:NTF \l_tmpa_bool {#1} {\bool_set_true:N \l_tmpa_bool}\TUDa@submissiondatename\TUDa@dateseparator\TUDa@submissiondate
+ \tl_if_empty:NF \ptxcd_submissiondate {
+ \bool_if:NTF \l_tmpa_bool {#1} {\bool_set_true:N \l_tmpa_bool}\ptxcd_submissiondatename\ptxcd_dateseparator\ptxcd_submissiondate
}
- \tl_if_empty:NF \TUDa@examdate {
- \bool_if:NTF \l_tmpa_bool {#1} {\bool_set_true:N \l_tmpa_bool}\TUDa@examdatename\TUDa@dateseparator\TUDa@examdate
+ \tl_if_empty:NF \ptxcd_examdate {
+ \bool_if:NTF \l_tmpa_bool {#1} {\bool_set_true:N \l_tmpa_bool}\ptxcd_examdatename\ptxcd_dateseparator\ptxcd_examdate
}
}
-\keys_define:nn {TUDa/thesis} {
- urn .tl_gset:N =\g_TUDa_thesis_urn_tl,
+\keys_define:nn {ptxcd/thesis} {
+ urn .tl_gset:N =\g_ptxcd_thesis_urn_tl,
urn .initial:V = \c_empty_tl,
- printid .tl_gset:N = \g_TUDa_thesis_tuprints_tl,
+ printid .tl_gset:N = \g_ptxcd_thesis_tuprints_tl,
printid .initial:V = \c_empty_tl,
- license .tl_gset:N = \g_TUDa_license_info_tl,
+ doi .tl_gset:N = \g_ptxcd_thesis_doi_tl,
+ license .tl_gset:N = \g_ptxcd_license_info_tl,
license .initial:n = {Die~Veröffentlichung~steht~unter~folgender~Creative~Commons~Lizenz:\\
Namensnennung~--~Keine~kommerzielle~Nutzung~--~Keine~Bearbeitung~ 2.0~Deutschland\\
\url{http://creativecommons.org/licenses/by-nc-nd/2.0/de/}
@@ -298,27 +296,29 @@
\newcommand{\tuprints}[1]{%
\tl_if_in:nnTF {#1} {=}
- {\keys_set:nn {TUDa/thesis} {#1}}
- {\keys_set:nn {TUDa/thesis} {printid=#1}}
+ {\keys_set:nn {ptxcd/thesis} {#1}}
+ {\keys_set:nn {ptxcd/thesis} {printid=#1}}
\lowertitleback{
\urlstyle{same}
Bitte~zitieren~Sie~dieses~Dokument~als:
- \tl_if_empty:NF \g_TUDa_thesis_urn_tl {\\URN:~urn:nbn:de:tuda-tuprints-\g_TUDa_thesis_urn_tl}
- \\URL:~\url{http://tuprints.ulb.tu-darmstadt.de/\g_TUDa_thesis_tuprints_tl}\par\vspace{\baselineskip}
+ \tl_if_empty:NF \g_ptxcd_thesis_urn_tl {\\URN:~urn:nbn:de:tuda-tuprints-\g_ptxcd_thesis_urn_tl}\\
+ URL:~\url{http://tuprints.ulb.tu-darmstadt.de/\g_ptxcd_thesis_tuprints_tl}\\
+ \tl_if_empty:NF \g_ptxcd_thesis_doi_tl {DOI:~\url{https://doi.org/\g_ptxcd_thesis_doi_tl}}
+ \par\vspace{\baselineskip}
Dieses~Dokument~wird~bereitgestellt~von~tuprints,\\
E-Publishing-Service~der~TU~Darmstadt\\
\url{http://tuprints.ulb.tu-darmstadt.de}\\
\url{tuprints@ulb.tu-darmstadt.de}\\[2\baselineskip]
- \tl_if_empty:NF \g_TUDa_license_info_tl {\\[2\baselineskip]\g_TUDa_license_info_tl}
+ \tl_if_empty:NF \g_ptxcd_license_info_tl {\\[2\baselineskip]\g_ptxcd_license_info_tl}
}%
}
\gdef\@subject{
- \text_titlecase_first:n{\tl_if_empty:NF \TUDa@thesisStatus {\TUDa@thesisStatus{}~}\TUDa@thesisType}~
- \tl_if_empty:NF \TUDa@in_department {\TUDa@in_department{}~}
- \seq_if_empty:NF \g_TUDa_author_seq {\TUDa@byname\nobreakspace\@author}
- \tl_if_empty:NF \TUDa@birthplace {\space\TUDa@fromname\space\TUDa@birthplace}
- \tl_if_empty:NF \TUDa@studentID {\space\TUDa_insert_studentID:n {\TUDa@studentID}}
+ \text_titlecase_first:n{\tl_if_empty:NF \ptxcd_thesisStatus {\ptxcd_thesisStatus{}~}\ptxcd_thesisType}~
+ \tl_if_empty:NF \ptxcd_in_department {\ptxcd_in_department{}~}
+ \seq_if_empty:NF \g_ptxcd_author_seq {\ptxcd_byname\nobreakspace\@author}
+ \tl_if_empty:NF \ptxcd_birthplace {\space\ptxcd_fromname\space\ptxcd_birthplace}
+ \tl_if_empty:NF \ptxcd_studentID {\space\ptxcd_insert_studentID:n {\ptxcd_studentID}}
}
\uppertitleback{
@@ -326,12 +326,12 @@
\@title\par\@subtitle
\par\vspace*{\baselineskip}
%ignore birthplace on english subject
- \let\TUDa@birthplace\@empty
+ \let\ptxcd_birthplace\@empty
\@subject
- \TUDa@thesis@reviewer
- \exp_args:Nx \tl_if_empty:nF {\@date\TUDa@submissiondate}{
+ \ptxcd_thesis_print_reviewer:
+ \exp_args:Nx \tl_if_empty:nF {\@date\ptxcd_submissiondate}{
\par\vspace*{\baselineskip}
- \TUDa@thesis@dates[\\]
+ \ptxcd_thesis_print_dates:n {\\}
}
\tl_if_empty:NF \@publishers {
\par\vspace*{\baselineskip}
@@ -359,34 +359,37 @@
\renewcommand{\titlepagestyle}{title.TUDa}
-\box_new:N \g_TUDa_thesis_institution_box
+\box_new:N \g_ptxcd_thesis_institution_box
+% The following macro is an adapted version of the corresponding KOMA-Script macro
+% Copyright (c) 1994-2019 Markus Kohm [komascript at gmx info]
\renewcommand*{\maketitle}[1][1]{
- \bool_if:NF \g_TUDa_ignore_title_language_bool {
- \bool_set_false:N \l_tmpa_bool
- \clist_map_inline:nn {english, british, ngerman, german} {
- \iflanguage{##1}
- {\bool_set_true:N \l_tmpa_bool
- \clist_map_break:}{}
- }
- \bool_if:NF \l_tmpa_bool {
- \msg_error:nnx {tudapub/tudathesis} {unsupported-title-language} {\languagename}
- }
+ \bool_if:NF \g_ptxcd_ignore_title_language_bool {
+ \bool_set_false:N \l_tmpa_bool
+ \clist_map_inline:nn {english, british, ngerman, german} {
+ \iflanguage{##1}
+ {\bool_set_true:N \l_tmpa_bool
+ \clist_map_break:}{}
+ }
+ \bool_if:NF \l_tmpa_bool {
+ \msg_error:nnx{tudapub/thesis} {unsupported-title-language} {\languagename}
+ }
}
- \exp_args:NV \TUDa_select_department:n \g_TUDa_department_choice_tl
+ \exp_args:NV \ptxcd_select_department:n \g_ptxcd_department_choice_tl
\clist_map_inline:nn {author, date} {
- \TUDa_check_title_data:cn {@##1} {##1}
+ \ptxcd_check_title_data:cn {@##1} {##1}
}
\clist_map_inline:nn {examdate, birthplace, group, department, institution} {
- \TUDa_check_title_data:cn {TUDa@##1} {##1}
+ \ptxcd_check_title_data:cn {TUDa@##1} {##1}
}
- \cs_if_exist_use:N \TUDa_pass_TitleData:
- \TUDa_disable_marginpar:
+ \cs_if_exist_use:N \ptxcd_pass_TitleData:
+ \ptxcd_disable_marginpar:
\cleardoublepage
\begin{titlepage}
\setcounter{page}{%
#1%
}%
+ \def\thefootnote{\fnsymbol{footnote}}
\if@titlepageiscoverpage
\edef\titlepage@restore{%
\noexpand\endgroup
@@ -417,71 +420,87 @@
\let\titlepage@restore\relax
\fi
\setparsizes{\z@}{\z@}{\z@\@plus 1fil}\par@updaterelative
- \hbox_gset:Nn \g_TUDa_title_box {
+ \ptxcd_setup_sponsor_box:
+ \hbox_gset:Nn \g_ptxcd_title_box {
\parbox[t]{\linewidth}{
- \begin{minipage}[b]{\bool_if:NT \g_TUDa_logo@inhead_bool {.75}\linewidth}
- \begin{addmargin}{3mm}
- \raggedright
- \tl_if_empty:NF \@titlehead {\usekomafont{titlehead}{\@titlehead\par}}
- \usekomafont{title}
- \expandafter\fontsize\TUDa_title_fontsize:
- \selectfont
- \@title\strut\par
- \vskip0pt
- \end{addmargin}
- \end{minipage}\par\nointerlineskip
- \rule{\linewidth}{\g_TUDa_titlerule_dim}\par
+ \begin{minipage}[b]{\bool_if:NT \g_ptxcd_logo@inhead_bool {.75}\linewidth}
+ \bool_if:NT \g_ptxcd_logo@inhead_bool {\color{textonaccentcolor}}
+ \tl_if_empty:NF \@titlehead {
+ \begin{addmargin}{3mm}
+ {\usekomafont{titlehead}{\@titlehead\par}}
+ \end{addmargin}
+ }
+ \begin{addmargin}[\dim_eval:n {\box_if_empty:NF \g_ptxcd_PaperID_box {\box_wd:N\g_ptxcd_PaperID_box+.5\c_ptxcd_logoheight_dim} +3mm}]{3mm}
+ \raggedright
+ \leavevmode\usekomafont{title}
+ \expandafter\fontsize\ptxcd_title_fontsize:
+ \selectfont
+ \llap{\raisebox{\dimexpr-\height+.5\baselineskip}[0pt][0pt]{\box_use:N \g_ptxcd_PaperID_box}\hspace{.5\c_ptxcd_logoheight_dim}}
+ \@title\strut
+ \par
+ \box_if_empty:NTF \g_ptxcd_PaperID_box
+ {\vskip0pt}
+ {\rule{0pt}{.5\c_ptxcd_logoheight_dim}}
+ \end{addmargin}
+ \end{minipage}%
+ \par\nointerlineskip
+ \rule{\linewidth}{\g_ptxcd_titlerule_dim}\par\vspace{\c_ptxcd_rulesep_dim}
\begin{addmargin}{3mm}
+ \usekomafont{titleinfo}
\raggedright
- \expandafter\fontsize\TUDa_titleinfo_fontsize:
+ \expandafter\fontsize\ptxcd_titleinfo_fontsize:
\selectfont
{\ifx\@subtitle\@empty\else\usekomafont{subtitle}{\@subtitle\par}\fi}%
\usekomafont{subject}
- \bool_if:NT \g_TUDa_dr_bool {\selectlanguage{ngerman}}
- \tl_if_empty:NF \g_TUDa_titleintro_tl {\g_TUDa_titleintro_tl\par}
- \tl_if_empty:NF \g_TUDa_thesis_drtext_tl {\g_TUDa_thesis_drtext_tl\par}
+ \bool_if:NT \g_ptxcd_dr_bool {\selectlanguage{ngerman}}
+ \tl_if_empty:NF \g_ptxcd_titleintro_tl {\g_ptxcd_titleintro_tl\par}
+ \tl_if_empty:NF \g_ptxcd_thesis_drtext_tl {\g_ptxcd_thesis_drtext_tl\par}
{%
\usekomafont{author}
\lineskip 0.75em
\@subject
\par
}%
- {\usekomafont{date}{\TUDa@thesis@dates\par}}%
- \TUDa@thesis@reviewer\par
+ {\usekomafont{date}{\ptxcd_thesis_print_dates:n {,~}\par}}%
+ \ptxcd_thesis_print_reviewer:\par
{\usekomafont{publishers}{\@publishers \par}}%
- \tl_if_empty:NF \g_TUDa_titleaddendum_tl {\g_TUDa_titleaddendum_tl\par}
- \end{addmargin}%\vspace{\dim_eval:n {-2\ht\strutbox -\dp\strutbox}}%\baselineskip}
- \rule{\linewidth}{\g_TUDa_titlerule_dim}\par}}
- \bool_if:NF \g_TUDa_manual_info_box_bool {
- \exp_args:Nf \tl_if_empty:nF {\TUDa@institution\TUDa@department\TUDa@institute\TUDa@group} {
- \addTitleBox{
- \tl_if_empty:NF \TUDa@institution {\TUDa@institution\par}
- \tl_if_empty:NF \TUDa@box_department {\TUDa@box_department\par}
- \tl_if_empty:NF \TUDa@institute {\TUDa@institute\par}
- \tl_if_empty:NF \TUDa@group {\TUDa@group}
- }}
+ \tl_if_empty:NF \g_ptxcd_titleaddendum_tl {\g_ptxcd_titleaddendum_tl\par}
+ \end{addmargin}
+ \rule{\linewidth}{\g_ptxcd_titlerule_dim}\par}}
+ \bool_if:NF \g_ptxcd_manual_info_box_bool {
+ \exp_args:Nf \tl_if_empty:nF {\ptxcd_institution\ptxcd_department\ptxcd_institute\ptxcd_group} {
+ \addTitleBox{
+ \tl_if_empty:NF \ptxcd_institution {\ptxcd_institution\par}
+ \tl_if_empty:NF \ptxcd_box_department {\ptxcd_box_department\par}
+ \tl_if_empty:NF \ptxcd_institute {\ptxcd_institute\par}
+ \tl_if_empty:NF \ptxcd_group {\ptxcd_group}
+ }}
}
-
- \TUDa_adjust_titlepage_style:
-
- \nointerlineskip\box_use:N \g_TUDa_title_box
- \par
+ \ptxcd_adjust_titlepage_style:
+ \thispagestyle{title.TUDa}
+ \nointerlineskip\box_use:N \g_ptxcd_title_box
+ \par
+ \vfill
\@thanks\let\@thanks\@empty
- \vfill\null
+ \box_if_empty:NTF \g_ptxcd_sponsor_box {
+ \raisebox{-\c_ptxcd_rulesep_dim}[0pt][0pt]{\rule{\linewidth}{\g_ptxcd_titlerule_dim}}
+ }{
+ \box_use:N \g_ptxcd_sponsor_box
+ }
\if@twoside
- \@tempswatrue
+ \@tempswatrue
\expandafter\ifnum \@nameuse{scr@v@3.12}>\scr@compatibility\relax
- \else
- \ifx\@uppertitleback\@empty
+ \else
+ \ifx\@uppertitleback\@empty
\ifx\@lowertitleback\@empty
- \@tempswafalse
- \fi
+ \@tempswafalse
\fi
\fi
+ \fi
\else
- \exp_args:Nf \tl_if_empty:nTF {\g_TUDa_thesis_urn_tl\g_TUDa_thesis_tuprints_tl}
- {\@tempswafalse}
- {\@tempswatrue}
+ \exp_args:Nf \tl_if_empty:nTF {\g_ptxcd_thesis_urn_tl\g_ptxcd_thesis_tuprints_tl}
+ {\@tempswafalse}
+ {\@tempswatrue}
\fi
\if@tempswa
\next@tpage
@@ -507,15 +526,16 @@
\setcounter{footnote}{0}%
\global\let\and\relax
\cleardoublepage
- \TUDa_restore_typearea:
- \aftergroup\TUDa_restore_typearea:
+ \ptxcd_restore_typearea:
+ \aftergroup\ptxcd_restore_typearea:
}
+\newcommand*{\@ThesisType}{\ptxcd_thesisType}
\ExplSyntaxOff
\NewDocumentCommand{\affidavit}{s}{
\clearpage
\begin{otherlanguage}{ngerman}
-\csname bool_if:cTF\endcsname {g_TUDa_dr_bool} {
+\csname bool_if:cTF\endcsname {g_ptxcd_dr_bool} {
\section*{Erklärungen laut Promotionsordnung}
\subsection*{\S{}8 Abs. 1 lit. c PromO}
Ich versichere hiermit, dass die elektronische Version meiner Dissertation mit der schriftlichen Version übereinstimmt.
@@ -530,7 +550,7 @@ Die Arbeit hat bisher noch nicht zu Prüfungszwecken gedient.
\bigskip
}{
\section*{Erklärung zur Abschlussarbeit\\gemäß \S{}22~Abs.~7 und \S{}23~Abs.~7~APB der TU~Darmstadt}
-Hiermit versichere ich, \@author, die vorliegende \TUDa@thesisType{} ohne Hilfe Dritter und nur mit den angegebenen Quellen und Hilfsmitteln angefertigt zu haben. Alle Stellen, die Quellen entnommen wurden, sind als solche kenntlich gemacht worden. Diese Arbeit hat in gleicher oder ähnlicher Form noch keiner Prüfungsbehörde vorgelegen.
+Hiermit versichere ich, \@author, die vorliegende \@ThesisType{} ohne Hilfe Dritter und nur mit den angegebenen Quellen und Hilfsmitteln angefertigt zu haben. Alle Stellen, die Quellen entnommen wurden, sind als solche kenntlich gemacht worden. Diese Arbeit hat in gleicher oder ähnlicher Form noch keiner Prüfungsbehörde vorgelegen.
\par
Mir ist bekannt, dass im Fall eines Plagiats (\S{}38~Abs.~2~APB) ein Täuschungsversuch vorliegt, der dazu führt, dass die Arbeit mit 5,0 bewertet und damit ein Prüfungsversuch verbraucht wird. Abschlussarbeiten dürfen nur einmal wiederholt werden.
\par
@@ -546,53 +566,52 @@ Bei einer Thesis des Fachbereichs Architektur entspricht die eingereichte elektr
\IfBooleanF{#1}{\clearpage}
}
+\ExplSyntaxOn
+
\NewDocumentEnvironment{affidavit*}{om}{
-\IfNoValueF {#1} {\begin{otherlanguage}{#1}}
-\section*{#2}
+ \IfNoValueF {#1} {\begin{otherlanguage}{#1}}
+ \section*{#2}
}{
-\IfNoValueF {#1} {\end{otherlanguage}}
+ \IfNoValueF {#1} {\end{otherlanguage}}
}
\newcommand*{\AffidavitSignature}[1][Darmstadt]{
-\par
-\bigskip
-#1, \TUDa@submissiondate\hfill\SignatureBox{\TUDa@signature}\\\strut
+ \par
+ \bigskip
+ #1, \ptxcd_submissiondate\hfill\SignatureBox{\ptxcd_signature}\\\strut
}
\newcommand*{\SignatureBox}[2][5cm]{\parbox[t]{#1}{\centering\rule{\linewidth}{.3pt}\\\makebox[0pt][c]{#2}}}
-
-\ExplSyntaxOn
-
%messages:
-\msg_new:nnn {tudapub/tudathesis} {dr-field-only} {
+\msg_new:nnn{tudapub/thesis} {dr-field-only} {
You~submitted~#1~data~for~title~information.\\
This~field~is~only~used~for~type=dr/drfinal.\\
It~will~be~ignored.
}
-\msg_new:nnn {tudapub/tudathesis} {unrecognized-department} {
+\msg_new:nnn{tudapub/thesis} {unrecognized-department} {
I~can't~recognize~your~department~#1.\\
I~will~use~the~string~'#1'~directly.\\
Ensure~your~department~has~to~shortcut.\\
See~tudathesis~documentation~for~further~details.
}
-\msg_new:nnnn {tudapub/tudathesis} {unsupported-title-language} {
+\msg_new:nnnn{tudapub/thesis} {unsupported-title-language} {
You~chose~an~unsupported~language~"#1".\\
\string\maketitle\ ~ist~not~configured~for~this~language.
}{
You~can~manually~configure~it,~as~described~in~tudathesis~documentation.\\
- Use~ "ignore-title-language"~Option~to~ignore~this~message~at~your~own~risk.
+ Use~"ignore-title-language"~Option~to~ignore~this~message~at~your~own~risk.
}
-\bool_if:NT \g_TUDa_dr_bool {
+\bool_if:NT \g_ptxcd_dr_bool {
\PassOptionsToPackage{ngerman}{babel}
}
% Fallback mechanism for older l3 kernels
\cs_if_exist:NF \text_titlecase:n {
- \cs_set_eq:NN\text_titlecase:n\tl_mixed_case:n
+ \cs_set_eq:NN \text_titlecase:n \tl_mixed_case:n
}
\endinput