summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/tuda-ci/tex/beamerinnerthemeTUDa2023.sty
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/tuda-ci/tex/beamerinnerthemeTUDa2023.sty')
-rw-r--r--macros/latex/contrib/tuda-ci/tex/beamerinnerthemeTUDa2023.sty397
1 files changed, 397 insertions, 0 deletions
diff --git a/macros/latex/contrib/tuda-ci/tex/beamerinnerthemeTUDa2023.sty b/macros/latex/contrib/tuda-ci/tex/beamerinnerthemeTUDa2023.sty
new file mode 100644
index 0000000000..364ece88b6
--- /dev/null
+++ b/macros/latex/contrib/tuda-ci/tex/beamerinnerthemeTUDa2023.sty
@@ -0,0 +1,397 @@
+%% This is file `beamerinnerthemeTUDa2023.sty' version 3.35 (2023-12-11),
+%% it is part of
+%% TUDa-CI -- Corporate Design for TU Darmstadt
+%% ----------------------------------------------------------------------------
+%%
+%% Copyright (C) 2018--2023 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.35}
+\def\filedate{2023-12-11}
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesExplPackage{beamerinnerthemeTUDa2023}{\filedate}{\fileversion}{Inner~beamer~theme~of~tuda-ci,~Design~of~2023}
+
+\mode<presentation>
+
+\RequirePackage{beamerinnerthemeTUDa}
+
+\ExplSyntaxOff
+\RequirePackage{multicol}
+\ExplSyntaxOn
+
+
+\AddToHook{begindocument}[ptxcd-titlegraphic]{
+ \dim_set:Nn \l__ptxcd_titlegraphic_ht_dim {\paperheight}
+ \dim_set:Nn \l__ptxcd_titlegraphic_wd_dim {\paperwidth}
+}
+
+\defbeamertemplate*{titlegraphic}{TUDa2023}{{
+ \def\width{\l__ptxcd_titlegraphic_wd_dim}
+ \def\height{\l__ptxcd_titlegraphic_ht_dim}
+ \usebeamercolor[fg]{titlegraphic}\inserttitlegraphic\par
+}}
+
+\def\ps@titlegraphic@titlepage{%
+ \setbeamertemplate{background}{\usebeamertemplate{titlegraphic}}
+ \@nameuse{ps@navigation}%
+}
+
+\defbeamertemplate*{title~page}{TUDa2023}[1][]
+{
+ \ifbeamer@plainframe
+ \skip_vertical:n {\dimexpr\paperheight/38- \beamer@frametopskip}%
+ \color{red}
+ \hspace*{\fill}
+ \raisebox{\dimexpr-\height+.33\c_ptxcd_logoheight_dim}{\includegraphics[height=\dim_use:N \c_ptxcd_logoheight_dim]{tuda_logo}}\hspace*{\dimexpr.7pt-\beamer@rightmargin}
+ \par
+ \vskip1.39\baselineskip
+ \fi
+ \vbox{}
+ \thispagestyle{titlegraphic@titlepage}
+ \vskip.185\paperheight
+ \begingroup
+ \centering
+ \usebeamertemplate{title}
+% \vskip1em\par
+\bool_if:NT \g_ptxcd_authorontitle_bool {
+ \usebeamertemplate{author}
+ \usebeamertemplate{institute}
+ }
+ \usebeamertemplate{date}
+ \endgroup
+ \vfill
+}
+
+\defbeamertemplate*{title}{TUDa2023}[1][]{%
+ \begin{beamercolorbox}[sep=8pt,center,#1]{title}
+ \usebeamerfont{title}\text_uppercase:n {\inserttitle}\par%
+ \ifx\insertsubtitle\@empty%
+ \else%
+ \vskip.45em%
+ {\usebeamerfont{subtitle}\usebeamercolor[fg]{subtitle}\insertsubtitle\par}%
+ \fi%
+ \end{beamercolorbox}%
+}
+
+\defbeamertemplate{author}{TUDa2023}[1][]{%
+ \begin{beamercolorbox}[sep=8pt,center,#1]{author}
+ \usebeamerfont{author}\insertauthor
+ \end{beamercolorbox}
+}
+
+\defbeamertemplate{institute}{TUDa2023}[1][]{%
+ \begin{beamercolorbox}[sep=8pt,center,#1]{institute}
+ \usebeamerfont{institute}\insertinstitute
+ \end{beamercolorbox}
+}
+
+\defbeamertemplate{date}{TUDa2023}[1][]{%
+ \begin{beamercolorbox}[sep=8pt,center,#1]{date}
+ \usebeamerfont{date}\insertdate
+ \end{beamercolorbox}
+}
+
+% partner/sub logo
+\box_new:N \g__ptxcd_partnerlogo_box
+\dim_new:N \l__ptxcd_partnerlogo_ht_dim
+\dim_gset:Nn \l__ptxcd_partnerlogo_ht_dim {.6\c_ptxcd_logoheight_dim}
+\dim_new:N \l__ptxcd_partnerlogo_wd_dim
+\dim_gset:Nn \l__ptxcd_partnerlogo_wd_dim {1.6\c_ptxcd_logoheight_dim}
+
+\box_new:N \g__ptxcd_sublogo_box
+\dim_new:N \l__ptxcd_sublogo_wd_dim
+\dim_gset:Nn \l__ptxcd_sublogo_wd_dim {2.2\c_ptxcd_logoheight_dim}
+\dim_new:N \l__ptxcd_sublogo_ht_dim
+\dim_gset:Nn \l__ptxcd_sublogo_ht_dim {.6\c_ptxcd_logoheight_dim}
+
+\cs_new:Nn \__ptxcd_setup_logo_box:nnn {
+ \begingroup
+ \def\width{\use:c {l__ptxcd_#2_wd_dim}}
+ \def\height{\use:c {l__ptxcd_#2_ht_dim}}
+ \IfBooleanTF{#1}{
+ \hbox_gset:cn {g__ptxcd_#2_box} {#3}
+ \box_gautosize_to_wd_and_ht_plus_dp:cnn {g__ptxcd_#2_box} {\width} {\height}
+ } {
+ \hbox_gset:cn {g__ptxcd_#2_box} {
+ #3
+ }
+ }
+ \endgroup
+}
+
+\NewDocumentCommand{\partnerlogo}{sm}{
+ \__ptxcd_setup_logo_box:nnn {#1} {partnerlogo} {#2}
+}
+
+\NewDocumentCommand{\sublogo}{sm}{
+ \__ptxcd_setup_logo_box:nnn {#1} {sublogo} {#2}
+}
+
+
+% Blocks
+
+%
+%\defbeamertemplate*{block~begin}{TUDa}
+%{
+% \par\vskip\medskipamount%
+% \begin{beamercolorbox}[wd=\dimexpr\linewidth+2\l__ptxcd_beamer_extraindent_dim,sep=.5pt,
+% leftskip=\dim_eval:n {\dim_compare:nTF {\l__ptxcd_beamer_extraindent_dim>\c_zero_dim} {\l__ptxcd_beamer_extraindent_dim-\beamer@colbox@sep} {\__ptxcd_block_colorsep:}},
+% ]{block~title}
+% \ifx\insertblocktitle\@empty
+% \else
+% \begin{beamercolorbox}[colsep*=\__ptxcd_block_colorsep:,
+% wd=\dimexpr\linewidth-1pt-1.5ex\relax]{block~title}
+% \usebeamerfont*{block title}\insertblocktitle%
+% \end{beamercolorbox}%
+% \ifbeamercolorempty[bg]{block~title}
+% {}
+% {\ifbeamercolorempty[bg]{block~body}{}{\par\nointerlineskip\vskip-0.5pt}}%
+% \leavevmode
+% \fi
+% \begin{beamercolorbox}[colsep*=\__ptxcd_block_colorsep:,vmode, wd=\dimexpr\linewidth-1.5ex-1pt\relax]{block~body}%
+% \usebeamerfont{block~body}%
+% \ifbeamercolorempty[bg]{block~body}{\vskip-.25ex}{\vskip-\__ptxcd_block_colorsep:}\vbox{}%
+% }
+%
+%\defbeamertemplate*{block~end}{TUDa}
+% {\end{beamercolorbox}\end{beamercolorbox}\vskip\smallskipamount}
+%
+%\defbeamertemplate*{block~alerted~begin}{TUDa}
+%{
+% \par\vskip\medskipamount%
+% \begin{beamercolorbox}[
+% wd=\dimexpr\linewidth+2\l__ptxcd_beamer_extraindent_dim,
+% sep=1.5pt,
+% leftskip=\dim_eval:n {\dim_compare:nTF {\l__ptxcd_beamer_extraindent_dim>\c_zero_dim} {\l__ptxcd_beamer_extraindent_dim-\beamer@colbox@sep} {\__ptxcd_block_colorsep:}},
+% ]{block~frame~alerted}
+% \ifx\insertblocktitle\@empty
+% \else
+% \begin{beamercolorbox}[wd=\dim_eval:n {\linewidth-1.5ex-3pt},colsep*=\__ptxcd_block_colorsep:]{block~title~alerted}
+% \usebeamerfont*{block~title~alerted}\insertblocktitle%
+% \end{beamercolorbox}%
+% \vskip1.5pt\par\nointerlineskip
+% \fi
+% \leavevmode
+% \usebeamerfont{block~body~alerted}%
+% \begin{beamercolorbox}[wd=\dim_eval:n {\linewidth-1.5ex-3pt},colsep*=\__ptxcd_block_colorsep:]{block~body~alerted}%
+% }
+%
+%\defbeamertemplate*{block~alerted~end}{TUDa}
+% {\end{beamercolorbox}\end{beamercolorbox}\vskip\smallskipamount}
+%
+%
+%\defbeamertemplate*{block~example~begin}{TUDa}
+%{
+% \par\vskip\medskipamount%
+% \begin{beamercolorbox}[
+% wd=\dimexpr\linewidth+2\l__ptxcd_beamer_extraindent_dim,
+% sep=1.5pt,
+% leftskip=\dim_eval:n {\dim_compare:nTF {\l__ptxcd_beamer_extraindent_dim>\c_zero_dim} {\l__ptxcd_beamer_extraindent_dim-\beamer@colbox@sep} {\__ptxcd_block_colorsep:}},
+% ]{block~frame~example}
+% \ifx\insertblocktitle\@empty
+% \else
+% \begin{beamercolorbox}[wd=\dim_eval:n {\linewidth-1.5ex-3pt},colsep*=\__ptxcd_block_colorsep:]{block~title~example}
+% \usebeamerfont*{block~title~example}\insertblocktitle%
+% \end{beamercolorbox}%
+%\vskip1.5pt\par\nointerlineskip
+% \fi
+% \leavevmode
+% \usebeamerfont{block~body~example}%
+% \begin{beamercolorbox}[wd=\dim_eval:n {\linewidth-1.5ex-3pt},colsep*=\__ptxcd_block_colorsep:]{block~body~example}%
+% }
+%\defbeamertemplate*{block~example~end}{TUDa}
+% {\end{beamercolorbox}\end{beamercolorbox}\vskip\smallskipamount}
+%
+
+% section page
+\defbeamertemplate*{section~page}{TUDa2023}[1][]
+{%
+\ifbeamer@inframe
+ \begingroup
+ \vbox{}
+ \vspace{0pt plus 1 filll}
+ \begin{beamercolorbox}[#1]{section title}
+ \usebeamerfont{section~title}\text_uppercase:n {\insertsection}\par
+ \end{beamercolorbox}
+ {\usebeamerfont{section~name}\usebeamercolor[fg]{section~name}\sectionname{}~\insertsectionnumber}
+ \par
+ \skip_vertical:n {\c_ptxcd_logoheight_dim+\baselineskip}
+ \endgroup
+ \else
+ \begin{frame}[b]
+ \begin{beamercolorbox}[#1]{section title}
+ \usebeamerfont{section~title}\text_uppercase:n {\insertsection}\par
+ \end{beamercolorbox}
+ {\usebeamerfont{section~name}\usebeamercolor[fg]{section~name}\sectionname{}~\insertsectionnumber}
+ \skip_vertical:n {\c_ptxcd_logoheight_dim+\baselineskip}
+\end{frame}
+\fi
+}
+
+% toc
+% original definition can be found in beamerbasetoc.sty which is part of the beamer package
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2012,2013,2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+% Copyright 2021 by Joseph Wright, samcarter
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file LICENSE.md for more details.
+\ExplSyntaxOn
+\cs_new:Nn \__ptxcd_toc_check: {
+ \int_compare:nNnT {\g__ptxcd_beamer_toc_col_int} = {3} {
+ % if all subsections/subsubsections are hidden we can have two columns
+ \str_if_eq:eeTF {
+ \beamer@toc@css
+ \beamer@toc@oss
+ \beamer@toc@ooss
+ \beamer@toc@csss
+ \beamer@toc@osss
+ \beamer@toc@oosss
+ \beamer@toc@ooosss
+ }{
+ \prg_replicate:nn {7} {hide}
+ }{
+ % if all subsections/subsubsections are hidden standard twocolumn layout will be choosen
+ \int_set:Nn \g__ptxcd_beamer_toc_col_int {2}
+ } {
+ % check if there are subsections/subsubsections
+ \int_gzero:N \g_tmpa_int
+ {\makeatletter%%
+ \let\babel@toc\use_none:nn
+ \let\beamer@sectionintoc \use_none:nnnnn
+ \def\beamer@subsectionintoc##1##2##3##4##5##6{\int_gset:Nn \g_tmpa_int {1}\endinput}
+ \def\beamer@subsubsectionintoc##1##2##3##4##5##6##7{\int_gset:Nn \g_tmpa_int {1}\endinput}
+ \@input{\jobname.toc}%
+ }
+ \int_compare:nNnT {\g_tmpa_int} = {1} {\int_set:Nn \g__ptxcd_beamer_toc_col_int {1}}
+ }
+ }
+}
+
+\def\beamer@twocoltableofcontents[#1]{%
+ \begin{beamercolorbox}[wd=\paperwidth]{}%
+ \def\beamer@toc@cs{show}%
+ \def\beamer@toc@os{show}%
+ \def\beamer@toc@css{show}%
+ \def\beamer@toc@oss{show}%
+ \def\beamer@toc@ooss{show}%
+ \def\beamer@toc@csss{show}%
+ \def\beamer@toc@osss{show}%
+ \def\beamer@toc@oosss{show}%
+ \def\beamer@toc@ooosss{show}%
+ \beamer@showpartnumber=\c@part%
+ \beamer@pausesectionsfalse%
+ \beamer@pausesubsectionsfalse%
+ \def\beamer@tocsections{<*>}%
+ \setkeys{beamertoc}{firstsection=1}%
+ \setkeys{beamertoc}{#1}%
+ \UseName{__ptxcd_toc_check:}
+ \int_compare:nNnT {\g__ptxcd_beamer_toc_col_int} > {1} {
+ \setlength{\columnsep}{5ex}%
+ \raggedcolumns
+ \begin{multicols}{2}
+ }
+ {\makeatletter%
+ \pause[0]%
+ \@input{\jobname.toc}%
+ }%
+ \int_compare:nNnT {\g__ptxcd_beamer_toc_col_int} > {1} {
+ \end{multicols}%
+ }
+ \end{beamercolorbox}%
+ \vspace*{.68\baselineskip}%}
+}
+
+\define@key{beamertoc}{columns}{\keys_set:nn {ptxcd/beamer/inner} {toc-columns=#1}}
+
+\def\beamer@tableofcontents[#1]{%
+ \ifbeamer@inframe
+ \beamer@twocoltableofcontents[#1]
+ \else
+ \begin{frame}[b]{\contentsname}
+ \beamer@twocoltableofcontents[#1]
+ \end{frame}
+ \fi
+}
+
+
+
+\defbeamertemplate*{section~in~toc}{TUDa}{%
+ \ifvmode\nointerlineskip\fi
+ \leavevmode
+ \ifnum\beamer@tempcount>\beamer@toclastsection
+ \else
+ \ifnum\beamer@tempcount>0\relax
+ \usebeamertemplate***{toc~section~number}%
+ \fi\fi%
+ \usebeamertemplate***{section~entry}%
+\par
+}
+
+
+% (sub-)section in toc: default
+\cs_new:Nn \__ptxcd_toc_sub_level_entry_numbered:n {
+ \exp_args:Nc \tl_if_blank:nF {inserttoc#1subsectionnumber}
+ {\hphantom{0}\llap{\use:c {inserttoc#1subsectionnumber}}\hspace{.5em}}
+}
+
+\cs_new:Nn \__ptxcd_toc_sub_level_entry_itemize:n {
+ \strut
+ \usebeamertemplate{itemize~#1item}\hspace{.5em}
+}
+
+\defbeamertemplate*{subsection~in~toc}{TUDa}[1][false]{\leavevmode
+ \leftskip=12.4mm
+ \use:c {__ptxcd_toc_sub_level_entry_#1:n} {}
+ \inserttocsubsection\par}
+
+\defbeamertemplate*{subsubsection~in~toc}{TUDa}[1][false]{\leavevmode
+ \leftskip=\dimexpr12.4mm+.5em\relax
+ \use:c {__ptxcd_toc_sub_level_entry_#1:n} {sub}
+ \inserttocsubsubsection\par}
+
+
+\defbeamertemplate*{toc~section~number}{TUDa}{
+ \hphantom{00}\llap{\inserttocsectionnumber}\hspace{.5em}
+}
+
+\defbeamertemplate*{section~entry}{TUDa}{
+ \strut\inserttocsection\strut
+}
+
+
+%Itemize Items
+\defbeamertemplate*{itemize~item}{TUDa}{\raise.2\baselineskip\hbox{\vrule width .5ex height .5ex}}
+\defbeamertemplate*{itemize~subitem}{TUDa}{\small\hbox{\vrule width .5ex height .5ex}}
+\defbeamertemplate*{itemize~subsubitem}{TUDa}{\small\hbox{\vrule width .5ex height 1ex}}
+
+\mode<all>
+
+\endinput
+