diff options
author | Karl Berry <karl@freefriends.org> | 2024-11-09 16:32:37 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2024-11-09 16:32:37 +0000 |
commit | 5a2d9639d79f233a5e5b7753ebea1c9fecdf468e (patch) | |
tree | ac5913b56480feda143f7122b6b70210915f7c33 /Master/texmf-dist/source/latex/beamertheme-gotham | |
parent | d3502c009a0100a94b0cab81066682dd0231aeb3 (diff) |
beamertheme-gotham (9nov24)
git-svn-id: svn://tug.org/texlive/trunk@72808 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/beamertheme-gotham')
-rw-r--r-- | Master/texmf-dist/source/latex/beamertheme-gotham/gotham.dtx | 371 |
1 files changed, 207 insertions, 164 deletions
diff --git a/Master/texmf-dist/source/latex/beamertheme-gotham/gotham.dtx b/Master/texmf-dist/source/latex/beamertheme-gotham/gotham.dtx index 969a4792576..1f19e92f205 100644 --- a/Master/texmf-dist/source/latex/beamertheme-gotham/gotham.dtx +++ b/Master/texmf-dist/source/latex/beamertheme-gotham/gotham.dtx @@ -23,7 +23,7 @@ \input expl3-generic \relax %</internal> %<class>\NeedsTeXFormat{LaTeX3e} -%<package>\ProvidesExplPackage{beamerthemegotham}{2024/09/20}{1.1.0.b}{A modern, minimal-ish, versatile and extendable yet robust theme for Beamer} +%<package>\ProvidesExplPackage{beamerthemegotham}{2024-11-11}{1.2.0.a}{A modern, minimal-ish, versatile and extendable yet robust theme for Beamer} %<author>Romain NOEL</author> %<maintainer>Romain NOEL</maintainer> %<url>https://gitlab.com/RomainNOEL/beamertheme-gotham</url> @@ -39,8 +39,8 @@ % \usepackage{gotham} % \usepackage{readprov} % \ReadPackageInfos{beamerthemegotham} - \edef\GothamVersion{v1.1.0.b} %{\fileversion} - \edef\GothamDate{2024-09-20} %{\filedate} + \edef\GothamVersion{v1.2.0.a} %{\fileversion} + \edef\GothamDate{2024-11-11} %{\filedate} \usepackage{parskip} \usepackage{setspace} @@ -188,7 +188,7 @@ %\begin{implementation} % \begin{macrocode} %<*font> -\ProvidesExplPackage{beamerfontthemegotham}{2024/09/20}{1.1.0.b}{gotham font theme} +\ProvidesExplPackage{beamerfontthemegotham}{2024-11-11}{1.2.0.a}{gotham font theme} \RequirePackage{expl3} \RequirePackage{xparse} \RequirePackage{etoolbox} @@ -274,7 +274,7 @@ % \TestFiles{gotham-test-035} % \TestMissing{a isolated unit test would be nice.} % \begin{macrocode} -\newcommand{\iffontsavailable}[3] +\providecommand{\iffontsavailable}[3] { \int_zero:N \g_gotham_fontsnotfound_int \clist_map_function:nN { #1 } \checkfont:n @@ -378,12 +378,14 @@ \setbeamerfont{frametitleToc}{size=\LARGE, series=\bfseries} \setbeamerfont{frametitleSection}{size*={60}{1}, series=\bfseries} +\setbeamerfont{page~number~in~head/foot}{size=\footnotesize} +\setbeamerfont{footline}{size=\scriptsize} + \setbeamerfont{block~title}{size=\normalsize, series=\bfseries} \setbeamerfont{block~title~alerted}{size=\normalsize, series=\bfseries} \setbeamerfont{caption}{size=\small} \setbeamerfont{caption~name}{series=\bfseries} \setbeamerfont{description~item}{series=\bfseries} -\setbeamerfont{page~number~in~head/foot}{size=\scriptsize} \setbeamerfont{bibliography~entry~author}{size=\normalsize, series=\normalfont} \setbeamerfont{bibliography~entry~title}{size=\normalsize, series=\bfseries} @@ -971,7 +973,7 @@ %\begin{implementation} % \begin{macrocode} %<*color> -\ProvidesExplPackage{beamercolorthemegotham}{2024/09/20}{1.1.0.b}{Gotham color theme} +\ProvidesExplPackage{beamercolorthemegotham}{2024-11-11}{1.2.0.a}{Gotham color theme} \RequirePackage{expl3} \RequirePackage{xparse} \RequirePackage{xcolor} @@ -1046,6 +1048,7 @@ }{ % else nothing to do, colors are already defined. } +\providecommand{\gothamHookPostColorBGSet}{} % \end{macrocode} % \end{variable} % \end{implementation} @@ -1113,11 +1116,11 @@ % A set of variable easily adapted. % \begin{macrocode} % Define the color palette -\colorlet{colorBG}{colorPale} \colorlet{colorFG}{colorDark} -\colorlet{colorFrametitle}{colorA} -\colorlet{colorStandout}{colorA} +\colorlet{colorBG}{colorPale} \colorlet{colorStandin}{colorPale} +\colorlet{colorStandout}{colorA} +\colorlet{colorFrametitle}{colorA} \colorlet{colorTitlepage}{colorA} \colorlet{colorFiligrane}{colorB} \colorlet{colorBackElement}{colorB} @@ -1159,12 +1162,21 @@ \colorlet{colorStandout}{colorAreversed} \colorlet{colorStandin}{colorFG} \colorlet{colorTitlepage}{colorAreversed} - % dark - \setbeamercolor{palette~primary}{% reversed color compared to normal text + % %%% adapt and reload + % \colorlet{colorBG}{colorPale} + % \colorlet{colorFG}{colorDark} + % \colorlet{colorFiligrane}{colorB} + % \colorlet{colorBackElement}{colorB} + % \colorlet{colorProgBar}{colorC} + % \colorlet{colorAlert}{colorD} + % \colorlet{colorExample}{colorE} + %%% dark + \setbeamercolor{primary~palette}{% reversed color compared to normal text use=normal~text, fg=normal~text.bg, bg=normal~text.fg } + \gothamHookPostColorBGSet{} } % \end{macrocode} % \end{function} @@ -1187,13 +1199,22 @@ \colorlet{colorStandout}{colorA} \colorlet{colorStandin}{colorBG} \colorlet{colorTitlepage}{colorA} - % light - \setbeamercolor{palette~primary}{ + % %%% adapt and reload + % \colorlet{colorBG}{colorPale} + % \colorlet{colorFG}{colorDark} + % \colorlet{colorFiligrane}{colorB} + % \colorlet{colorBackElement}{colorB} + % \colorlet{colorProgBar}{colorC} + % \colorlet{colorAlert}{colorD} + % \colorlet{colorExample}{colorE} + %%% light + \setbeamercolor{primary~palette}{ % reversed color compared to normal text use=normal~text, fg=normal~text.bg, bg=normal~text.fg } + \gothamHookPostColorBGSet{} } % \end{macrocode} % \end{function} @@ -1204,7 +1225,7 @@ % Command to activate transparent background. % \TestFiles{gotham-test-037} % \begin{macrocode} -% \newcommand{\gotham@colors@transparent}{ +% \providecommand{\gotham@colors@transparent}{ \cs_new_protected:Nn \__gotham_color_set_transparentBG:{ \setbeamercolor{normal~text}{ fg=colorFG, @@ -1219,13 +1240,22 @@ % \usebeamercolor{normal~text} % reset % NOT working neither \colorlet{colorStandin}{colorBG} % since the two previous lines are not working, let define it like light-bg \colorlet{colorTitlepage}{colorA} - % like light background. - \setbeamercolor{palette~primary}{ + % %%% adapt and reload + % \colorlet{colorBG}{colorPale} + % \colorlet{colorFG}{colorDark} + % \colorlet{colorFiligrane}{colorB} + % \colorlet{colorBackElement}{colorB} + % \colorlet{colorProgBar}{colorC} + % \colorlet{colorAlert}{colorD} + % \colorlet{colorExample}{colorE} + %%% like light background. + \setbeamercolor{primary~palette}{ % reversed color compared to normal text use=normal~text, fg=colorBG, bg=normal~text.fg } + \gothamHookPostColorBGSet{} } % \end{macrocode} % \end{function} @@ -1369,8 +1399,8 @@ \setbeamercolor{date}{use=normal~text, parent=normal~text} \setbeamercolor{institute}{use=normal~text, parent=normal~text} \setbeamercolor{frametitle}{ - use=palette~primary, - parent=palette~primary, + use=primary~palette, + parent=primary~palette, bg=colorFrametitle } % The Gotham inner or outer themes optionally display progress bars in various locations. @@ -1431,13 +1461,16 @@ % \UnitTested % \TestFiles{gotham-test-037} % \begin{macrocode} -\setbeamercolor{frametitleSection}{use=primary~palette, bg=, fg=primary~palette.bg} +% \setbeamercolor{frametitleSection}{use=primary~palette, bg=, fg=primary~palette.bg} +\setbeamercolor{frametitleSection}{use=structure,fg=structure.bg} + \setbeamercolor{standout}{use=primary~palette, bg=colorStandout, fg=primary~palette.bg} \setbeamercolor{standin}{use=normal~text, bg=colorStandin, fg=normal~text.fg} \setbeamercolor{section~in~toc}{use=normal~text, parent=normal~text,} \setbeamercolor{subsection~in~toc}{use=normal~text, parent=normal~text,} \setbeamercolor{subsubsection~in~toc}{use=normal~text, parent=normal~text,} +\setbeamercolor{footlineRule}{use=normal~text, parent=normal~text,} % \end{macrocode} % \end{macro} % \end{implementation} @@ -1545,7 +1578,7 @@ %\begin{implementation} % \begin{macrocode} %<*inner> -\ProvidesExplPackage{beamerinnerthemegotham}{2024/09/20}{1.1.0.b}{gotham inner theme} +\ProvidesExplPackage{beamerinnerthemegotham}{2024-11-11}{1.2.0.a}{gotham inner theme} \RequirePackage{expl3} \RequirePackage{xparse} \RequirePackage{calc} @@ -1597,8 +1630,6 @@ \colorlet{colorProgBar}{orange} \colorlet{colorAlert}{red} \colorlet{colorExample}{green} - \colorlet{colorFrametitle}{purple} - \colorlet{colorTitlepage}{purple} \setbeamercolor{progress~bar}{ use=alerted~text, fg=colorProgBar, @@ -1645,10 +1676,14 @@ \ifbeamer@inframe \titlepage \else - \frame[plain, noframenumbering]{\titlepage} + \frame[plain, c, noframenumbering]{\titlepage} \fi } \def\titlepage{ + % \setkeys{beamerframe}{c} % no effect + % \setkeys{beamerframe}{plain} % no effect + % \setbeamertemplate{footline}[empty] % no effect + % \setkeys{beamerframe}{nofootline} % create error of unclosed env \usebeamertemplate{title~page} } % \end{macrocode} @@ -1792,8 +1827,17 @@ \parbox[c][0pt][c]{0pt}{\gothamtitlepagebg} \centering \vfill - \ifx\inserttitle\@empty\else\usebeamertemplate*{title}\fi - \ifx\insertsubtitle\@empty\else\usebeamertemplate*{subtitle}\fi + \ifx\inserttitle\@empty\else + \parbox{0.9\textwidth}{\centering + \usebeamertemplate*{title} + }\\[1.ex] + \fi + \ifx\insertsubtitle\@empty\else + \parbox{0.9\textwidth}{\centering + \usebeamertemplate*{subtitle} + }\\[2.ex] + \fi + % \hspace*{-0pt} \usebeamertemplate*{title~separator} % from above patch \expandafter\ifblank\expandafter{\beamer@andstripped}{ @@ -1991,20 +2035,27 @@ \end{tikzpicture} } - % \vspace*{-1.65\baselineskip} - \begin{minipage}[b][0.35\paperheight]{\textwidth} + % \vspace{1.65\baselineskip} + \begin{minipage}[b][0.5\paperheight]{\textwidth} % \vspace{\baselineskip} - \usebeamerfont{title} - \usebeamercolor[fg]{frametitle} - \inserttitle + \vbox{} + \vfill + { + \usebeamerfont{title} + \usebeamercolor[fg]{frametitle} + \inserttitle + } + \ifx\insertsubtitle\@empty\else + \\[1ex] + { + \usebeamerfont{subtitle} + \usebeamercolor[fg]{frametitle} + \insertsubtitle + } + \fi + \vspace{1.\baselineskip} \end{minipage} - \newline - \begin{minipage}[t][0.1\paperheight]{\textwidth} - \usebeamerfont{subtitle} - \usebeamercolor[fg]{frametitle} - \insertsubtitle - \end{minipage} % Set the title graphic in a zero-height box, so that % the position of other elements is not affected. @@ -2029,7 +2080,7 @@ % \usebeamercolor{normal~text} % \usebeamerfont{author} % \insertauthor - \vspace*{-1.5\baselineskip} + \vspace*{-0.65\baselineskip} \usebeamertemplate*{author} \end{minipage} } @@ -2522,8 +2573,7 @@ % \UnitTested % \TestFiles{gotham-test-040} % \begin{macrocode} -\defbeamertemplate*{standout}{gotham}{% - % +\defbeamertemplate*{standout}{gotham}{ % \setkeys{beamerframe}{c} % \setkeys{beamerframe}{noframenumbering} % \centering @@ -2532,23 +2582,21 @@ % \usebeamertemplate{background~canvas}%[standout/gotham] \usebeamerfont{standout} % if the background color is switched, then change foreground (font) color. - \ifbeamercolorempty[bg]{palette~primary}{ + \ifbeamercolorempty[bg]{primary~palette}{ %true : empty background (transparent) \setbeamercolor{background~canvas}{ - use=palette~primary, - bg=palette~primary.fg + use=primary~palette, + bg=primary~palette.fg } }{ %false : background not empty (dark or light) \setbeamercolor{background~canvas}{ - use=palette~primary, - bg=palette~primary.bg + use=primary~palette, + bg=primary~palette.bg } } - \setbeamercolor{local~structure}{ - fg=palette~primary.bg - } - \usebeamercolor[fg]{palette~primary} + \setbeamercolor{local~structure}{fg=primary~palette.bg} + \usebeamercolor[fg]{primary~palette} } % \end{macrocode} % \end{macro} @@ -2670,6 +2718,8 @@ % \textrm{where the options are (default marked as} \defopt{default}\textrm{):} % \meta{standin template} = \oarg{\defopt{gotham} \textbar ...} % \meta{standout template} = \oarg{\defopt{gotham} \textbar ...} +% \meta{standin BG template} = \oarg{\defopt{gotham} \textbar ...} +% \meta{standout BG template} = \oarg{\defopt{gotham} \textbar ...} % \end{syntax} % The 'package' (useinnertheme) options can control |standout| (and |standin|) templates. % These templates are activated when giving the frame option |\begin{frame}[standin]| and |standout|. @@ -2684,17 +2734,39 @@ % \begin{macrocode} \keys_define:nn { gotham / inner } { + % standout BG template + standout~BG~template .usage:n = { general }, + standout~BG~template .default:n = { gotham }, + standout~BG~template .code:n = { + \__gotham_set_prop_template:nn{background~canvas/standout}{#1} + }, +} +\keys_define:nn { gotham / inner } +{ + % standin BG template + standin~BG~template .usage:n = { general }, + standin~BG~template .default:n = { gotham }, + standin~BG~template .code:n = { + \__gotham_set_prop_template:nn{background~canvas/standin}{#1} + }, +} +\keys_define:nn { gotham / inner } +{ % standout template standout~template .usage:n = { general }, standout~template .default:n = { gotham }, - standout~template .code:n = { \__gotham_set_prop_template:nn{background~canvas/standout}{#1} }, + standout~template .code:n = { + \__gotham_set_template:nn{standout}{#1} + }, } \keys_define:nn { gotham / inner } { % standin template standin~template .usage:n = { general }, standin~template .default:n = { gotham }, - standin~template .code:n = { \__gotham_set_prop_template:nn{background~canvas/standin}{#1} }, + standin~template .code:n = { + \__gotham_set_template:nn{standin}{#1} + }, } % \end{macrocode} % \end{macro} @@ -3081,21 +3153,21 @@ % \end{implementation} % \begin{documentation} -% \begin{variable}{\gotham@progressonsectionpage@linewidth} +% \begin{variable}{\gothamProgressSectionHeight} % Variables used to defined the progress bar in section pages. -% If the vertical size of the bar want to be changed, the command |\setlength{\gotham@progressonsectionpage@linewidth}{<0.4pt>}| can be used. +% If the vertical size of the bar want to be changed, the command |\setlength{\gothamProgressSectionHeight}{<0.4pt>}| can be used. % \end{variable} % \end{documentation} %%%%%% % \begin{implementation} -% \begin{variable}{\gotham@progressonsectionpage@linewidth} +% \begin{variable}{\gothamProgressSectionHeight} % Variables used to defined the progress bar in section pages. % \begin{macrocode} % horizontal size of the bar (used internally and set to |\textwidth|. \newlength{\gotham@progressonsectionpage} % vertical size of the bar -\newlength{\gotham@progressonsectionpage@linewidth} -\setlength{\gotham@progressonsectionpage@linewidth}{3pt} +\newlength{\gothamProgressSectionHeight} +\setlength{\gothamProgressSectionHeight}{3pt} % \end{macrocode} % \end{variable} % \end{implementation} @@ -3107,7 +3179,7 @@ % \TestFiles{gotham-test-041} % \begin{macrocode} \defbeamertemplate{progress~bar~in~section~page}{empty}{ - \vspace{\gotham@progressonsectionpage@linewidth+1ex} + \vspace{\gothamProgressSectionHeight+1ex} } \def\inserttotalframenumber{100} @@ -3116,8 +3188,8 @@ \textwidth * \ratio{\insertframenumber~pt}{\inserttotalframenumber~pt} } \begin{tikzpicture} - \fill[bg] (0,0) rectangle (\textwidth, \gotham@progressonsectionpage@linewidth); - \fill[fg] (0,0) rectangle (\gotham@progressonsectionpage, \gotham@progressonsectionpage@linewidth); + \fill[bg] (0,0) rectangle (\textwidth, \gothamProgressSectionHeight); + \fill[fg] (0,0) rectangle (\gotham@progressonsectionpage, \gothamProgressSectionHeight); \end{tikzpicture} } % \end{macrocode} @@ -3365,8 +3437,8 @@ \paperwidth * \ratio{\insertframenumber pt}{\inserttotalframenumber pt} } \begin{tikzpicture} - \fill[bg] (0,0) rectangle (\paperwidth, \gotham@progressonsectionpage@linewidth); - \fill[fg] (0,0) rectangle (\gotham@progressonsectionpage, \gotham@progressonsectionpage@linewidth); + \fill[bg] (0,0) rectangle (\paperwidth, \gothamProgressSectionHeight); + \fill[fg] (0,0) rectangle (\gotham@progressonsectionpage, \gothamProgressSectionHeight); \end{tikzpicture} } % \end{macrocode} @@ -4121,7 +4193,7 @@ \\ } \defbeamertemplate{subsection~in~toc}{gotham~simple}{ - \quad{{\inserttocsectionnumber}.\inserttocsubsectionnumber.}~\inserttocsubsection% + \quad{{\inserttocsectionnumber}.\inserttocsubsectionnumber.}~\inserttocsubsection \\ } \defbeamertemplate{subsubsection~in~toc}{gotham~simple}{ @@ -4570,7 +4642,7 @@ % \UnitTested % \TestFiles{gotham-test-043} % \begin{macrocode} -\newcommand{\gotham@block}[1]{ +\providecommand{\gotham@block}[1]{ \par\vskip\medskipamount \setlength{\parskip}{0pt} @@ -4768,7 +4840,7 @@ %\begin{implementation} % \begin{macrocode} %<*outer> -\ProvidesExplPackage{beamerouterthemegotham}{2024/09/20}{1.1.0.b}{gotham outer theme} +\ProvidesExplPackage{beamerouterthemegotham}{2024-11-11}{1.2.0.a}{gotham outer theme} \RequirePackage{expl3} \RequirePackage{xfp} \RequirePackage{calc} @@ -4799,8 +4871,6 @@ \colorlet{colorProgBar}{orange} \colorlet{colorAlert}{red} \colorlet{colorExample}{green} - \colorlet{colorFrametitle}{purple} - \colorlet{colorTitlepage}{purple} \setbeamercolor{progress~bar}{ use=alerted~text, fg=colorProgBar, @@ -5046,12 +5116,11 @@ % \TestFiles{gotham-test-044} % \begin{macrocode} % Command to add filigrane/edging in sidebar -\newcommand{\gothamRightFiligrane}{ +\providecommand{\gothamRightFiligrane}{ % left empty intentionally % \rotatebox{90}{gotham right filigrane pattern} - } -\newcommand{\gothamLeftFiligrane}{ +\providecommand{\gothamLeftFiligrane}{ % left empty intentionally % \rotatebox{-90}{\hspace*{5em} gotham left filigrane pattern} } @@ -5350,24 +5419,24 @@ %%% Frametitle %%% % \begin{documentation} -% \begin{variable}{\gotham@frametitle@toppadding, \gotham@frametitle@bottompadding, \gotham@frametitle@leftpadding, \gotham@frametitle@rightpadding} +% \begin{variable}{\gothamFrametitleToppading, \gothamFrametitleBottompading, \gothamFrametitleLeftpading, \gothamFrametitleRightpading} % Dimensions controlling the top, bottom, left and right padding in the frametitle. % \end{variable} % \end{documentation} %%%%%% % \begin{implementation} -% \begin{variable}{\gotham@frametitle@toppadding, \gotham@frametitle@bottompadding, \gotham@frametitle@leftpadding, \gotham@frametitle@rightpadding} +% \begin{variable}{\gothamFrametitleToppading, \gothamFrametitleBottompading, \gothamFrametitleLeftpading, \gothamFrametitleRightpading} % Dimensions of lengths used in the frametitle: top, bottom, left and right padding. % All of them are equal to 2.2ex by default. % \begin{macrocode} -\newlength{\gotham@frametitle@toppadding} -\setlength{\gotham@frametitle@toppadding}{2.2ex} -\newlength{\gotham@frametitle@bottompadding} -\setlength{\gotham@frametitle@bottompadding}{2.2ex} -\newlength{\gotham@frametitle@leftpadding} -\setlength{\gotham@frametitle@leftpadding}{2.2ex} -\newlength{\gotham@frametitle@rightpadding} -\setlength{\gotham@frametitle@rightpadding}{2.2ex} +\newlength{\gothamFrametitleToppading} +\newlength{\gothamFrametitleBottompading} +\newlength{\gothamFrametitleLeftpading} +\newlength{\gothamFrametitleRightpading} +\setlength{\gothamFrametitleToppading}{2.2ex} +\setlength{\gothamFrametitleBottompading}{2.2ex} +\setlength{\gothamFrametitleLeftpading}{2.2ex} +\setlength{\gothamFrametitleRightpading}{2.2ex} % \gotham@strut from inner \providecommand{\gotham@strut}{ \vphantom{ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz (/)} @@ -5382,15 +5451,15 @@ % \UnitTested % \TestFiles{gotham-test-046, gotham-test-046b, gotham-test-047} % \begin{macrocode} -\newcommand{\gotham@frametitlestrut@start}{ - \rule{0pt}{\gotham@frametitle@toppadding + +\providecommand{\gotham@frametitlestrut@start}{ + \rule{0pt}{\gothamFrametitleToppading + \totalheightof{ \ifcsdef{gotham@frametitleformat}{\gotham@frametitleformat{X}}{X} } } } -\newcommand{\gotham@frametitlestrut@end}{ - \rule[-\gotham@frametitle@bottompadding]{0pt}{\gotham@frametitle@bottompadding} +\providecommand{\gotham@frametitlestrut@end}{ + \rule[-\gothamFrametitleBottompading]{0pt}{\gothamFrametitleBottompading} } % \end{macrocode} % \end{macro} @@ -5414,7 +5483,7 @@ % For example your can do |\renewcommand{\gothamInstituteLogoSquare}[1][4ex]{\includegraphics[height=#1]{gotham-logo.pdf}}|. % \TestFiles{gotham-test-046, gotham-test-047} % \begin{macrocode} -\newcommand{\gothamInstituteLogoSquare}[1][4ex]{ +\providecommand{\gothamInstituteLogoSquare}[1][4ex]{ %\includegraphics[height=#1]{gotham-logo.pdf} } \defbeamertemplate{includeLogo}{default/gotham~square}{ @@ -5473,7 +5542,7 @@ % Hyphen used as separator between title of the frame and its subtitle (within frametitle template). % \TestFiles{ gotham-test-047} % \begin{macrocode} -\newcommand{\gothamFrameSubtitleSep}{ +\providecommand{\gothamFrameSubtitleSep}{ % \\[-.42em] % if newline (as default Beamer) % or if same line with a -- separator. \ ---~ @@ -5510,8 +5579,8 @@ \begin{beamercolorbox}[ wd=\paperwidth, sep=0pt, - leftskip=\gotham@frametitle@leftpadding, - rightskip=\gotham@frametitle@rightpadding, + leftskip=\gothamFrametitleLeftpading, + rightskip=\gothamFrametitleRightpading, ]{frametitle} \gotham@frametitlestrut@start \insertframetitle @@ -5548,8 +5617,8 @@ \begin{beamercolorbox}[ wd=\paperwidth, sep=0pt, - leftskip=\gotham@frametitle@leftpadding, - rightskip=\gotham@frametitle@rightpadding, + leftskip=\gothamFrametitleLeftpading, + rightskip=\gothamFrametitleRightpading, ]{frametitle} % put the subtitle in a raisebox to have no influence on the result. \raisebox{0pt}[0pt][0pt]{ @@ -5578,8 +5647,8 @@ \begin{beamercolorbox}[ wd=\paperwidth, sep=0pt, - leftskip=\gotham@frametitle@leftpadding, - rightskip=\gotham@frametitle@rightpadding, + leftskip=\gothamFrametitleLeftpading, + rightskip=\gothamFrametitleRightpading, ]{frametitle} \gotham@frametitlestrut@start \insertframetitle @@ -5777,28 +5846,31 @@ % \end{implementation} % \begin{documentation} -% \begin{variable}{\gothamFootlineOffset, \gothamFootlineHeight, \gothamFootlineDepth} +% \begin{variable}{\gothamFootlineVOffset, \gothamFootlineHRightOffset,\gothamFootlineHeight, \gothamFootlineDepth} % Lengths controlling the position of |footline|. -% |\gothamFootlineOffset| is controlling space between to bottom of the text (or the footnote) and the footline. -% |\gothamFootlineOffset| is by default -0.5ex, to have more space in the frame but if the footer is not really used, the space can be even more optimized using |\setlength{\gothamFootlineOffset}{-2.0ex}|. +% |\gothamFootlineVOffset| is controlling vertical space between to bottom of the text (or the footnote) and the footline. +% |\gothamFootlineVOffset| is by default -0.5ex, to have more space in the frame but if the footer is not really used, the space can be even more optimized using |\setlength{\gothamFootlineVOffset}{-2.0ex}|. +% |\gothamFootlineHRightOffset| is horizontal space between the right corner and the footline. % Obviously, it can be back to "normal" setting it to 0pt. % |\gothamFootlineHeight| and |\gothamFootlineDepth| are controlling the heigth of the footline and the position of the text within. % \end{variable} % \end{documentation} %%%%%% % \begin{implementation} -% \begin{variable}{\gothamFootlineOffset, \gothamFootlineHeight, \gothamFootlineDepth} +% \begin{variable}{\gothamFootlineVOffset, \gothamFootlineHeight, \gothamFootlineDepth} % Lengths used in |footline| template. % \begin{macrocode} % Footline lengths % space between to bottom of the text (or the footnote) and the footline -\newlength{\gothamFootlineOffset} -\setlength{\gothamFootlineOffset}{-0.5ex} - +\newlength{\gothamFootlineVOffset} \newlength{\gothamFootlineHeight} -\setlength{\gothamFootlineHeight}{1.5ex} \newlength{\gothamFootlineDepth} -\setlength{\gothamFootlineDepth}{0.1ex} +\newlength{\gothamFootlineHRightOffset} + +\setlength{\gothamFootlineVOffset}{-0.5ex} +\setlength{\gothamFootlineDepth}{0.1ex} +\setlength{\gothamFootlineHeight}{1.5ex} +\setlength{\gothamFootlineHRightOffset}{\spaceskip} % \end{macrocode} % \end{variable} % \end{implementation} @@ -5811,7 +5883,7 @@ % \begin{macrocode} \defbeamertemplate*{footline}{default/gotham}{ % new line to adjust the footline position. - \vspace*{\gothamFootlineOffset} + \vspace*{\gothamFootlineVOffset} \begin{beamercolorbox}[ wd=\textwidth, sep=0pt, @@ -5829,7 +5901,8 @@ \usebeamertemplate*{frame~footer} } \hspace{\gothamRightFooterPadding} - {\usebeamertemplate{page~number~in~head/foot}}~ + {\usebeamertemplate{page~number~in~head/foot}} + \hspace*{\gothamFootlineHRightOffset} \end{beamercolorbox} } \prop_put:Nnn \l__gotham_template_name_prop {footline/default} {gotham} @@ -5853,10 +5926,10 @@ % Lengths used in |footer| template for positioning left right and bottom. % \begin{macrocode} \newlength{\gothamLeftFooterPadding} -\setlength{\gothamLeftFooterPadding}{2.0ex} \newlength{\gothamRightFooterPadding} -\setlength{\gothamRightFooterPadding}{3.5ex} \newlength{\gothamFooterHOffset} +\setlength{\gothamLeftFooterPadding}{2.0ex} +\setlength{\gothamRightFooterPadding}{3.5ex} \setlength{\gothamFooterHOffset}{0pt} % \end{macrocode} % \end{variable} @@ -6042,15 +6115,16 @@ \newlength{\gothamFootlineRuleLeftPadding} \newlength{\gothamFootlineRuleHeight} \newlength{\gothamFootlineRuleLength} + \setlength{\gothamFootlineRuleLeftPadding}{7mm} \setlength{\gothamFootlineRuleHeight}{0.0pt} % \setlength{\gothamFootlineRuleHeight}{0.5pt} % This is nice also but have a cleaner default, I turned it to 0. \setlength{\gothamFootlineRuleLength}{15mm} +% horizontal position (in picture env) for the rotated footer. \newlength{\gothamHposLeftRotFooter} \newlength{\gothamHposRightRotFooter} \newlength{\gothamVposLeftRotFooter} -% horizontal position (in picture env) for the rotated footer. \newlength{\gothamVposRightRotFooter} \setlength{\gothamHposLeftRotFooter}{-7pt} @@ -6081,15 +6155,18 @@ % \UnitTested % \TestFiles{gotham-test-048} % \begin{macrocode} +\providecommand{\gothamHookFooter}{} \defbeamertemplate{frame~footer}{default/gotham}{ - % add a ruler but wihtout affecting the dimensions of the footline + %%% Add a ruler but wihtout affecting the dimensions of the footline \vbox to 0pt{ % Vertical stretch to ensure proper spacing \vss \hbox to 0pt{ \hspace*{\gothamFootlineRuleLeftPadding} - \usebeamercolor{frametitle} - \color{frametitle.bg} + % \usebeamercolor{frametitle} + % \color{frametitle.bg} + \usebeamercolor{footlineRule} + \color{footlineRule.fg} \rule{\gothamFootlineRuleLength}{\gothamFootlineRuleHeight} \vspace*{ \dimexpr \gothamFootlineHeight -0.25em\relax @@ -6098,6 +6175,9 @@ \hss } } + %%% Add Hook + \gothamHookFooter{} + %%% Add short date \hspace{\gothamLeftFooterPadding} \settowidth{\hlenLeftRotFooter}{\hspace{-\gothamLeftFooterPadding}} \addtolength{\hlenLeftRotFooter}{\gothamHposLeftRotFooter} @@ -6112,15 +6192,16 @@ \insertshortdate } \hfill \ + %%% Add short title \hfill \ \insertshorttitle - % make sure that the vertical space is constant: strut. - \gotham@strut + % make sure that the vertical space is constant: strut. + \gotham@strut \hfill \ \hfill \ - % \ifbool{rotateFooter}{ + %%% Add short author \bool_if:NTF \l_gotham_RotateFooter { % rotateFooter true - \settowidth{\hlenRightRotFooter}{\hspace{\gothamRightFooterPadding}\usebeamertemplate{page~number~in~head/foot}} + \settowidth{\hlenRightRotFooter}{\hspace{\gothamRightFooterPadding}\usebeamertemplate{page~number~in~head/foot}\hspace*{\gothamFootlineHRightOffset}} \addtolength{\hlenRightRotFooter}{\gothamHposRightRotFooter} \begin{picture}(0,0)(0,0) \put(\hlenRightRotFooter,\gothamVposRightRotFooter){\rotatebox{90}{\insertshortauthor}} @@ -6128,9 +6209,8 @@ }{ % rotateFooter false \insertshortauthor - %\hspace{-7em} } - % decrease space between progress bar and footer + %%% Decrease space between progress bar and footer \vspace*{\gothamFooterHOffset} } \prop_put:Nnn \l__gotham_template_name_prop {frame~footer/default} {gotham} @@ -6199,7 +6279,7 @@ % \begin{documentation} % \begin{variable}{\gothamCircleNumberingVshift, \gothamCircleNumberingHshift} -% Variable lengths controling the vertical and horizontal positioning of the |circle| numbering template. +% Variable lengths controling the vertical and horizontal positioning of the |circle| frame numbering template. % \end{variable} % \end{documentation} %%%% @@ -6208,8 +6288,8 @@ % Length used in |raisebox| and |hspace| in |circle| frame numbering. % \begin{macrocode} \newlength{\gothamCircleNumberingVshift} -\setlength{\gothamCircleNumberingVshift}{1.4mm} \newlength{\gothamCircleNumberingHshift} +\setlength{\gothamCircleNumberingVshift}{1.4mm} \setlength{\gothamCircleNumberingHshift}{2.6mm} % \end{macrocode} % \end{variable} @@ -6377,7 +6457,7 @@ \defbeamertemplate*{mini~nav~progress~left}{gotham~miniframes~theme} { \settoheight{\gotham@temp@heightFrametitle}{\gotham@strut} - \addtolength{\gotham@temp@heightFrametitle}{\gotham@frametitle@toppadding+\gotham@frametitle@bottompadding+\gothamProgressHeadFootLineheight} + \addtolength{\gotham@temp@heightFrametitle}{\gothamFrametitleToppading+\gothamFrametitleBottompading+\gothamProgressHeadFootLineheight} \setlength{\gotham@temp@PaperheightFrametitle}{\paperheight-\gotham@temp@heightFrametitle-\gothamFootlineHeight-\gothamFootlineDepth-\gothamProgressHeadFootLineheight} @@ -6395,7 +6475,7 @@ \defbeamertemplate*{mini~nav~progress~right}{gotham~miniframes~theme} { \settoheight{\gotham@temp@heightFrametitle}{\gotham@strut} - \addtolength{\gotham@temp@heightFrametitle}{\gotham@frametitle@toppadding+\gotham@frametitle@bottompadding+\gothamProgressHeadFootLineheight} + \addtolength{\gotham@temp@heightFrametitle}{\gothamFrametitleToppading+\gothamFrametitleBottompading+\gothamProgressHeadFootLineheight} \setlength{\gotham@temp@PaperheightFrametitle}{\paperheight-\gotham@temp@heightFrametitle-\gothamFootlineHeight-\gothamFootlineDepth-\gothamProgressHeadFootLineheight} @@ -7309,6 +7389,7 @@ % \TestFiles{gotham-test-051} % \begin{macrocode} \tl_new:N \l__gotham_out_tmp_mfnposi_tl +\tl_new:N \l__gotham_out_tmp_pbar_tl \keys_define:nn { gotham / outer }{ % mini~frames~nav~position default mini~frames~nav~position .choice:, @@ -7657,7 +7738,7 @@ \nointerlineskip \settoheight{\gotham@temp@heightFrametitle}{\gotham@strut} - \addtolength{\gotham@temp@heightFrametitle}{\gotham@frametitle@toppadding+\gotham@frametitle@bottompadding+\gothamProgressHeadFootLineheight} + \addtolength{\gotham@temp@heightFrametitle}{\gothamFrametitleToppading+\gothamFrametitleBottompading+\gothamProgressHeadFootLineheight} \setlength{\gotham@temp@PaperheightFrametitle}{\paperheight-\gotham@temp@heightFrametitle-\gothamFootlineHeight-\gothamFootlineDepth-0.25\baselineskip} @@ -7670,7 +7751,7 @@ \nointerlineskip \settoheight{\gotham@temp@heightFrametitle}{\gotham@strut} - \addtolength{\gotham@temp@heightFrametitle}{\gotham@frametitle@toppadding+\gotham@frametitle@bottompadding+\gothamProgressHeadFootLineheight} + \addtolength{\gotham@temp@heightFrametitle}{\gothamFrametitleToppading+\gothamFrametitleBottompading+\gothamProgressHeadFootLineheight} \setlength{\gotham@temp@PaperheightFrametitle}{\paperheight-\gotham@temp@heightFrametitle-\gothamFootlineHeight-\gothamFootlineDepth-0.25\baselineskip} @@ -7792,7 +7873,7 @@ \nointerlineskip \settoheight{\gotham@temp@heightFrametitle}{\gotham@strut} - \addtolength{\gotham@temp@heightFrametitle}{\gotham@frametitle@toppadding+\gotham@frametitle@bottompadding+\gothamProgressHeadFootLineheight} + \addtolength{\gotham@temp@heightFrametitle}{\gothamFrametitleToppading+\gothamFrametitleBottompading+\gothamProgressHeadFootLineheight} \setlength{\gotham@temp@PaperheightFrametitle}{\paperheight-\gotham@temp@heightFrametitle-\gothamFootlineHeight-\gothamFootlineDepth-0.25\baselineskip} @@ -7812,7 +7893,7 @@ \nointerlineskip \settoheight{\gotham@temp@heightFrametitle}{\gotham@strut} - \addtolength{\gotham@temp@heightFrametitle}{\gotham@frametitle@toppadding+\gotham@frametitle@bottompadding+\gothamProgressHeadFootLineheight} + \addtolength{\gotham@temp@heightFrametitle}{\gothamFrametitleToppading+\gothamFrametitleBottompading+\gothamProgressHeadFootLineheight} \setlength{\gotham@temp@PaperheightFrametitle}{\paperheight-\gotham@temp@heightFrametitle-\gothamFootlineHeight-\gothamFootlineDepth-0.25\baselineskip} @@ -7906,7 +7987,7 @@ % Command to be redefined by users. % \TestFiles{ gotham-test-046b} % \begin{macrocode} -\newcommand{\gothamInstituteLogoCircle}[1][4ex]{ +\providecommand{\gothamInstituteLogoCircle}[1][4ex]{ \includegraphics[height=#1]{gotham-logo.pdf} } % \end{macrocode} @@ -7918,7 +7999,7 @@ % Internal command plotting the circle progress and that is used internal in the instituteLogo template within the frametitle template. % \TestFiles{ gotham-test-046b} % \begin{macrocode} -\newcommand{\gothamProgressCircle}{ +\providecommand{\gothamProgressCircle}{ % \tikzexternaldisable \begin{tikzpicture}[remember~picture,overlay] % Load colors @@ -8096,7 +8177,7 @@ % \TestFiles{gotham-test-048} % \begin{macrocode} % token list to remember what is the current state -\tl_new:N \l__gotham_out_tmp_pbar_tl +% \tl_new:N \l__gotham_out_tmp_pbar_tl \keys_define:nn { gotham / outer }{ % progressbar~position default progressbar~position .choice:, @@ -8653,44 +8734,6 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % -% -\providecommand\ifratio[3]{% - \ifnum#1=169% - \ifdim\beamer@paperwidth=16.00cm\relax% - \ifdim\beamer@paperheight=9.00cm\relax% - #2% - \else% - #3% - \fi% - \else% - #3% - \fi% - \else% - \ifnum#1=43% - \ifdim\beamer@paperwidth=12.80cm\relax% - \ifdim\beamer@paperheight=9.60cm\relax% - #2% - \else% - #3% - \fi% - \else% - #3% - \fi% - \fi% - \fi% -} -\providecommand\ifscreenratio[2]{% - \ifdim\beamer@paperwidth=16.00cm\relax% - \ifdim\beamer@paperheight=9.00cm\relax% - #1% - \fi% - \fi% - \ifdim\beamer@paperwidth=12.80cm\relax% - \ifdim\beamer@paperheight=9.60cm\relax% - #2% - \fi% - \fi% -} % \end{macrocode} % \end{implementation} % @@ -8796,7 +8839,7 @@ } \def\gotham@plaintitleformat#1{#1} -\newcommand{\mreducelistspacing}{\vspace{-\topsep}} +\providecommand{\mreducelistspacing}{\vspace{-\topsep}} \ProcessOptionsBeamer \keys_define:nn { gotham / font } |