From 2fd07558ccd8d3c8e354f8ea0b342ef7ac1e87a3 Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Sat, 20 Jan 2024 03:01:12 +0000 Subject: CTAN sync 202401200301 --- .../themes/beamerthemeconcrete/README.md | 90 ++ .../bernoulli/beamerthemebernoulli.sty | 605 +++++++++++++ .../bernoulli/demo-bernoulli.pdf | Bin 0 -> 128620 bytes .../bernoulli/demo-bernoulli.tex | 176 ++++ .../dirichlet/beamerthemedirichlet.sty | 402 +++++++++ .../dirichlet/demo-dirichlet.pdf | Bin 0 -> 200517 bytes .../dirichlet/demo-dirichlet.tex | 171 ++++ .../fermat/beamerthemefermat.sty | 433 ++++++++++ .../beamerthemeconcrete/fermat/demo-fermat.pdf | Bin 0 -> 152297 bytes .../beamerthemeconcrete/fermat/demo-fermat.tex | 171 ++++ .../beamerthemeconcrete/gauss/beamerthemegauss.sty | 678 +++++++++++++++ .../beamerthemeconcrete/gauss/demo-gauss.pdf | Bin 0 -> 131046 bytes .../beamerthemeconcrete/gauss/demo-gauss.tex | 175 ++++ .../lagrange/beamerthemelagrange.sty | 379 +++++++++ .../beamerthemeconcrete/lagrange/demo-lagrange.pdf | Bin 0 -> 22042 bytes .../beamerthemeconcrete/lagrange/demo-lagrange.tex | 71 ++ .../mobius/beamerthememobius.sty | 291 +++++++ .../beamerthemeconcrete/mobius/demo-mobius.pdf | Bin 0 -> 153655 bytes .../beamerthemeconcrete/mobius/demo-mobius.tex | 171 ++++ .../riemann/beamerthemeriemann.sty | 945 +++++++++++++++++++++ .../beamerthemeconcrete/riemann/demo-riemann.pdf | Bin 0 -> 98512 bytes .../beamerthemeconcrete/riemann/demo-riemann.tex | 178 ++++ 22 files changed, 4936 insertions(+) create mode 100644 macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/README.md create mode 100644 macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/bernoulli/beamerthemebernoulli.sty create mode 100644 macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/bernoulli/demo-bernoulli.pdf create mode 100644 macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/bernoulli/demo-bernoulli.tex create mode 100644 macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/dirichlet/beamerthemedirichlet.sty create mode 100644 macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/dirichlet/demo-dirichlet.pdf create mode 100644 macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/dirichlet/demo-dirichlet.tex create mode 100644 macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/fermat/beamerthemefermat.sty create mode 100644 macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/fermat/demo-fermat.pdf create mode 100644 macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/fermat/demo-fermat.tex create mode 100644 macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/gauss/beamerthemegauss.sty create mode 100644 macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/gauss/demo-gauss.pdf create mode 100644 macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/gauss/demo-gauss.tex create mode 100644 macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/lagrange/beamerthemelagrange.sty create mode 100644 macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/lagrange/demo-lagrange.pdf create mode 100644 macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/lagrange/demo-lagrange.tex create mode 100644 macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/mobius/beamerthememobius.sty create mode 100644 macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/mobius/demo-mobius.pdf create mode 100644 macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/mobius/demo-mobius.tex create mode 100644 macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/riemann/beamerthemeriemann.sty create mode 100644 macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/riemann/demo-riemann.pdf create mode 100644 macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/riemann/demo-riemann.tex (limited to 'macros/latex/contrib/beamer-contrib') diff --git a/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/README.md b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/README.md new file mode 100644 index 0000000000..816f6206b3 --- /dev/null +++ b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/README.md @@ -0,0 +1,90 @@ +# The `concrete` bundle: A collection of flat beamer themes for LaTeX presentations + +``` +Author: Jianrui Lyu +Website: https://github.com/lvjr/concrete +License: The LaTeX Project Public License 1.3c +``` + +## 1\. Introduction + +The `concrete` bundle provides a collection of flat beamer themes for making LaTeX presentations, especially for academic and scientific presentations. + +It consists of the following seven beamer themes: + +- light background themes + - beamer theme bernoulli + - beamer theme fermat + - beamer theme lagrange + - beamer theme riemann +- dark background themes + - beamer theme dirichlet + - beamer theme gauss + - beamer theme mobius + +## 2\. Usage + +After installing this bundle, you can write a document like this: + +``` +\documentclass[xcolor={rgb}]{beamer} +\usetheme{bernoulli} +\begin{document} + +\title{Beamer Theme Bernoulli} +\subtitle{A nice theme for LaTeX presentations} +\author{Author Name} +\institute{Institute Name} + +\begin{frame}[plain] +\titlepage +\end{frame} + +\section{Section One} + +\subsection{Subsection One} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Two} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\section{Section Two} + +\subsection{Subsection One} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Two} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\end{document} +``` + +Note that you **NEED** to add `xcolor={rgb}` option in loading `beamer` class. You can also have a look at the demo files included in this bundle. diff --git a/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/bernoulli/beamerthemebernoulli.sty b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/bernoulli/beamerthemebernoulli.sty new file mode 100644 index 0000000000..2bb3d431d8 --- /dev/null +++ b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/bernoulli/beamerthemebernoulli.sty @@ -0,0 +1,605 @@ +% -*- coding: utf-8 -*- +% ---------------------------------------------------------------------------- +% Author: Jianrui Lyu +% Website: https://github.com/lvjr/concrete +% License: The LaTeX Project Public License 1.3c +% ---------------------------------------------------------------------------- + +\ProvidesPackage{beamerthemebernoulli}[2024-01-19 v2024A Beamer Theme Bernoulli] + +\makeatletter + +% compatible with old versions of beamer +\providecommand{\beamer@endinputifotherversion}[1]{} + +\RequirePackage{tikz,etoolbox,adjustbox} +\usetikzlibrary{positioning} + +\mode + +\setbeamersize{text margin left=8mm,text margin right=8mm} + +%% ----------------- background canvas and background ---------------- + +\defbeamertemplate{background}{line}{% + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \draw[xstep=\paperwidth,ystep=1mm,color=tcolor] (0,0) grid (\paperwidth,\paperheight); + \end{tikzpicture}% +} + +\defbeamertemplate{background}{linear}{% + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \draw[pattern=horizontal lines, pattern color=tcolor] + (0,0) rectangle (\paperwidth,\paperheight); + \end{tikzpicture}% +} + +\defbeamertemplate{background}{lattice}{% + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \draw[step=1mm,color=tcolor] (0,0) grid (\paperwidth,\paperheight); + \end{tikzpicture}% +} + +% need "text badly ragged" option for correct space skips +% see http://tex.stackexchange.com/a/132748/8956 +\gdef\my@background@title{% + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \fill[fill=fcolor] + (0,0) rectangle (\paperwidth,\paperheight); + \node[above right,text width=0.76\paperwidth,text badly ragged,fill=white, + inner sep=0.02\paperwidth,minimum height=0.2\paperheight] + (one) at (0.1\paperwidth,0.5\paperheight) {% + \usebeamerfont{title}\usebeamercolor[fg]{title}\inserttitle + \ifx\insertsubtitle\@empty\else + \\[5pt]\usebeamerfont{subtitle}\usebeamercolor[fg]{subtitle} + \insertsubtitle\\ + \fi + }; + \node[below right,text width=0.76\paperwidth,text badly ragged, + inner sep=0.02\paperwidth,minimum height=0.2\paperheight] + (two) at (0.1\paperwidth,0.5\paperheight) {% + \usebeamerfont{author}\usebeamercolor[fg]{author}\insertauthor\\% + \ifx\insertinstitute\@empty\else + \usebeamerfont{institute}\usebeamercolor[fg]{institute}\insertinstitute\\% + \fi + \usebeamerfont{date}\usebeamercolor[fg]{date}\insertdate\\% + }; + \fill[fcolor!70!white] + (one.north west) -- ++(-0.1\paperwidth,0.1\paperwidth) node[coordinate](nw){} + -- +(\paperwidth,0) node[coordinate](ne){} -- (one.north east) -- cycle; + \fill[fcolor!50!scolor] + (two.south west) -- ++(-0.1\paperwidth,-0.1\paperwidth) node[coordinate](sw){} + -- +(\paperwidth,0) node[coordinate](se){} -- (two.south east) -- cycle; + \fill[fcolor!70!scolor] + (one.north west) -- (two.south west) -- (sw) -- (nw) -- cycle + (one.north east) -- (two.south east) -- (se) -- (ne) -- cycle; + \draw[thick,densely dashed,dcolor] + (one.north west) -- (one.south west) -- (one.south east) -- (one.north east) -- cycle + (two.north west) -- (two.south west) -- (two.south east) -- (two.north east); + \draw[thick,dcolor] + (one.north west) -- (nw) -- (ne) -- (one.north east) + (two.south west) -- (sw) -- (se) -- (two.south east); + \draw[very thick,dcolor] (sw) -- (nw) (se) -- (ne); + \end{tikzpicture} +} + +\newcommand{\maincontents}{Main Contents} + +\gdef\my@background@section{% + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \node[right,text width=0.76\paperwidth,text badly ragged,inner xsep=0.02\paperwidth, + inner ysep=0.04\paperwidth,minimum height=0.2\paperheight] + (main) at (0.1\paperwidth,0.5\paperheight) {% + \begin{minipage}{0.76\paperwidth} + \usebeamertemplate{section page content}% + \end{minipage}% + }; + \path (main.north west) +(-0.1\paperwidth,0) + node[above right,minimum width=\paperwidth,minimum height=0.1\paperheight, + text width=0.76\paperwidth,inner xsep=0.12\paperwidth, + text badly ragged,fill=fcolor,text=dcolor] (top) + {\usebeamerfont{section in toc}\maincontents}; + \path (main.south west) +(-0.1\paperwidth,0) + node[below right,minimum width=\paperwidth,minimum height=0.1\paperheight, + fill=fcolor!50!scolor] (bot) {}; + \draw (top.north west) -- (top.north east) + (top.south west) -- (top.south east); + \draw (bot.north west) -- (bot.north east) + (bot.south west) -- (bot.south east); + \end{tikzpicture} +} + +\gdef\my@background@subsection{% + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \node[right,text width=0.76\paperwidth,text badly ragged,inner xsep=0.02\paperwidth, + inner ysep=0.04\paperwidth,minimum height=0.2\paperheight] + (main) at (0.1\paperwidth,0.5\paperheight) {% + \begin{minipage}{0.76\paperwidth} + \usebeamertemplate{subsection page content}% + \end{minipage} + }; + \path (main.north west) +(-0.1\paperwidth,0) + node[above right,minimum width=\paperwidth,minimum height=0.08\paperheight, + text width=0.76\paperwidth,inner xsep=0.12\paperwidth, + text badly ragged,fill=fcolor,text=dcolor] (top) + {\usebeamerfont{subsection in toc}\maincontents}; + \path (main.south west) +(-0.1\paperwidth,0) + node[below right,minimum width=\paperwidth,minimum height=0.08\paperheight, + fill=fcolor!50!scolor] (bot) {}; + \draw (top.north west) -- (top.north east) + (top.south west) -- (top.south east); + \draw (bot.north west) -- (bot.north east) + (bot.south west) -- (bot.south east); + \end{tikzpicture} +} + +%% -------------------------- title page ----------------------------- + +\defbeamertemplate{title page}{snake} +{% + \nointerlineskip + \begin{adjustbox}{width=\paperwidth,center}% + \my@background@title + \end{adjustbox}% +} + +%% ----------------------- section and subsection -------------------- + +\def\sectionintocskip{0.5em} +\patchcmd{\beamer@sectionintoc}{\vskip1.5em}{\vskip\sectionintocskip}{}{} + +% create new template for section +\defbeamertemplate{section}{simple}{% + \insertsectionnumber.\hspace*{1ex}\insertsection% +} + +\defbeamertemplate{at begin section}{normal}{% + \frame{\sectionpage} +} +\defbeamertemplate{at begin section}{plain}{% + \frame[plain]{\sectionpage} +} +\AtBeginSection[]{\usebeamertemplate{at begin section}} + +\defbeamertemplate{section page}{snake}{% + \nointerlineskip + \begin{adjustbox}{width=\paperwidth,center}% + \my@background@section + \end{adjustbox}% +} + +\defbeamertemplate{section page content}{simple}{ + \begin{beamercolorbox}[wd=\textwidth,center]{section title}% + \usebeamerfont{section title} + \usebeamertemplate{section}% + \end{beamercolorbox} +} +\defbeamertemplate{section page content}{level}{ + \tableofcontents[sectionstyle=show/shaded,subsectionstyle=hide]% +} + +% create new template for subsection +\defbeamertemplate{subsection}{simple}{% + \insertsectionnumber.\insertsubsectionnumber\hspace*{2ex}\insertsubsection% +} + +\defbeamertemplate{at begin subsection}{normal}{% + \frame{\subsectionpage} +} +\defbeamertemplate{at begin subsection}{plain}{% + \frame[plain]{\subsectionpage} +} +\AtBeginSubsection[]{\usebeamertemplate{at begin subsection}} + +\defbeamertemplate{subsection page}{snake}{% + \nointerlineskip + \begin{adjustbox}{width=\paperwidth,center}% + \my@background@subsection + \end{adjustbox}% +} + +\defbeamertemplate{subsection page content}{simple}{ + \begin{beamercolorbox}[wd=\textwidth,center]{subsection title}% + \usebeamerfont{subsection title}% + \usebeamertemplate{subsection}% + \end{beamercolorbox}% +} +\defbeamertemplate{subsection page content}{level}{% + \tableofcontents[sectionstyle=hide,subsectionstyle=show/shaded/hide]% +} +\defbeamertemplate{subsection in toc}{triangle}{% + \leavevmode\leftskip=2.5em\scriptsize\raise1.25pt% + \rlap{\hskip-1.5em\donotcoloroutermaths$\blacktriangleright$}% + \normalsize\inserttocsubsection\par +} + +%% ---------------------- headline and footline ---------------------- + +\defbeamertemplate{footline left}{author}{% + \insertshortauthor +} + +\defbeamertemplate{footline center}{title}{% + \insertshorttitle +} + +\defbeamertemplate{footline right}{number}{% + \Acrobatmenu{GoToPage}{\insertframenumber{}/\inserttotalframenumber}% +} +\defbeamertemplate{footline right}{normal}{% + \hyperlinkframeendprev{$\vartriangle$} + \Acrobatmenu{GoToPage}{\insertframenumber{}/\inserttotalframenumber} + \hyperlinkframestartnext{$\triangledown$}% +} + +\defbeamertemplate{footline}{simple}{% + \hbox{% + \begin{beamercolorbox}[wd=.2\paperwidth,ht=2.25ex,dp=1ex,left]{footline}% + \usebeamerfont{footline}\kern\beamer@leftmargin + \usebeamertemplate{footline left}% + \end{beamercolorbox}% + \begin{beamercolorbox}[wd=.6\paperwidth,ht=2.25ex,dp=1ex,center]{footline}% + \usebeamerfont{footline}\usebeamertemplate{footline center}% + \end{beamercolorbox}% + \begin{beamercolorbox}[wd=.2\paperwidth,ht=2.25ex,dp=1ex,right]{footline}% + \usebeamerfont{footline}\usebeamertemplate{footline right}% + \kern\beamer@rightmargin + \end{beamercolorbox}% + }% +} + +\defbeamertemplate{footline}{sectioning}{% + % default height is 0.4pt, which is ignored by adobe reader, so we increase it by 0.2pt + {\usebeamercolor[fg]{separator line}\hrule height 0.6pt}% + \hbox{% + \begin{beamercolorbox}[wd=.8\paperwidth,ht=2.25ex,dp=1ex,left]{footline}% + \usebeamerfont{footline}\kern\beamer@leftmargin\insertshorttitle + \ifx\insertsection\@empty\else\qquad$\vartriangleright$\qquad\insertsection\fi + \ifx\insertsubsection\@empty\else\qquad$\vartriangleright$\qquad\insertsubsection\fi + \end{beamercolorbox}% + \begin{beamercolorbox}[wd=.2\paperwidth,ht=2.25ex,dp=1ex,right]{footline}% + \usebeamerfont{footline}\usebeamertemplate{footline right}% + \kern\beamer@rightmargin + \end{beamercolorbox}% + }% +} + +% customize mini frames template to get both a progress and navigation bar + +\newcommand{\my@bigsize}{9} +\newcommand{\my@medsize}{7} +\newcommand{\my@smallsize}{5} +\let\my@box@size=\my@bigsize + +\newlength{\my@tempsize} + +\newcounter{my@sectnum} + +\newcommand{\my@lastdigit}[1]{% + \loop\ifnum\value{#1}>9\addtocounter{#1}{-10}\repeat + \arabic{#1}% +} + +\newcommand\my@fixedbox[2]{% + \makebox[#1]{\rule[-1ex]{0pt}{3.25ex}#2}% +} + +\newcommand\my@colorbox[3]{% + {\setlength{\fboxsep}{0pt}\colorbox{#1}{\my@fixedbox{#2}{#3}}}% +} + +\newcommand{\my@navbox}[1][]{% + % see http://tex.stackexchange.com/a/53091/8956 + \if\relax\detokenize{#1}\relax + \def\my@tempbox{\my@fixedbox}% + \else + \def\my@tempbox{\my@colorbox{#1}}% + \fi + \ifx\my@box\my@bigbox + \def\my@temptext{\my@lastdigit{my@sectnum}}% + \fi + \ifx\my@box\my@medbox + \def\my@temptext{$\diamond$}% + \fi + \ifx\my@box\my@smallbox + \def\my@temptext{$-$}% + \fi + \my@tempbox{\my@tempsize}{\my@temptext}% +} + +\defbeamertemplate{navigation box}{home}{% + \setlength{\my@tempsize}{\my@box@size pt}% + \my@colorbox{filler2}{\my@tempsize}{$\equiv$}% +} + +\defbeamertemplate{navigation box}{done}{% + \setlength{\my@tempsize}{\my@box@size pt}% + \my@navbox[filler2]% +} + +\defbeamertemplate{navigation box}{todo}{% + \setlength{\my@tempsize}{\my@box@size pt}% + \my@navbox +} + +\newcommand{\my@bigbox}{\global\let\my@box@size=\my@bigsize\usebeamertemplate{navigation box}} +\newcommand{\my@medbox}{\global\let\my@box@size=\my@medsize\usebeamertemplate{navigation box}} +\newcommand{\my@smallbox}{\global\let\my@box@size=\my@smallsize\usebeamertemplate{navigation box}} +\let\my@medbox@orig=\my@medbox +\let\my@smallbox@orig=\my@smallbox +\let\my@box=\my@bigbox + +\newcounter{my@subsectionnumber} +\newcounter{my@normalframenumber} + +\AtBeginDocument{% + \pretocmd{\subsection}{\refstepcounter{my@subsectionnumber}}{}{}% + \patchcmd{\beamer@writeslidentry}{\addtocontents}{\stepcounter{my@normalframenumber}\addtocontents}{}{}% +} + +\AtEndDocument{% + \immediate\write\@auxout{% + \noexpand\gdef\noexpand\my@totalsectionnumber{\the\c@section}% + \noexpand\gdef\noexpand\my@totalsubsectionnumber{\the\c@my@subsectionnumber}% + \noexpand\gdef\noexpand\my@normalframenumber{\the\c@my@normalframenumber}% + }% +} + +\def\my@totalsectionnumber{0} +\def\my@totalsubsectionnumber{0} +\def\my@normalframenumber{50} % use it instead of \inserttotalframenumber + +\newlength{\my@progress@width} +\setlength{\my@progress@width}{\dimexpr0.8\paperwidth-\beamer@leftmargin\relax} + +\newlength{\my@slidebox@width} + +\def\my@scale@subsection{1} +\def\my@scale@slide{1} + +\newcommand{\my@adjustbox}{% + \ifnum\my@normalframenumber>80\relax + \gdef\my@scale@subsection{0.7}% + \else + \ifnum\my@normalframenumber>45\relax + \gdef\my@scale@subsection{0.9}% + \fi\fi + \pgfmathsetlength{\global\my@slidebox@width}{% + (\my@progress@width - 2pt - 1pt*\my@bigsize*(\my@totalsectionnumber+1)% + - 1pt*\my@medsize*\my@scale@subsection*\my@totalsubsectionnumber) / % + max(1,\my@normalframenumber-\my@totalsectionnumber-\my@totalsubsectionnumber-1)% + }% + \pgfmathsetlength{\global\my@slidebox@width}{% + min(\my@slidebox@width,1pt*\my@smallsize)% + }% + \gdef\my@scale@slide{\strip@pt\dimexpr + \my@slidebox@width/\my@smallsize + \relax}% + \gdef\my@medbox{\scalebox{\my@scale@subsection}[1]{\my@medbox@orig}}% + \gdef\my@smallbox{\scalebox{\my@scale@slide}[1]{\my@smallbox@orig}}% + % only adjust boxes once + \global\let\my@adjustbox=\relax +} + +\renewcommand{\sectionentry}[5]{\global\let\my@box=\my@bigbox\setcounter{my@sectnum}{#1}} + +\pretocmd{\beamer@setuplinks}{\renewcommand{\beamer@subsectionentry}[5]{}}{}{} +\apptocmd{\beamer@setuplinks}{\global\let\beamer@subsectionentry\mybeamer@subsectionentry}{}{} + +\newcommand{\mybeamer@subsectionentry}[5]{\global\let\my@box=\my@medbox} + +\renewcommand{\slideentry}[6]{% + \def\my@temp@i{1/1}% + \def\my@temp@ii{#4}% + \ifx\my@temp@i\my@temp@ii % title page + \setbeamertemplate{navigation box}[home]% + \else + \setbeamertemplate{navigation box}[done]% + \fi + \ifnum\c@section<#1% + \setbeamertemplate{navigation box}[todo]% + \else + \ifnum\c@section=#1\ifnum\c@subsection<#2% + \setbeamertemplate{navigation box}[todo]% + \else + \ifnum\c@subsection=#2\ifnum\c@subsectionslide<#3% + \setbeamertemplate{navigation box}[todo]% + \fi\fi + \fi\fi + \fi + \ifx\my@temp@i\my@temp@ii % title page + \beamer@link(#4){\my@bigbox}% + \else + \beamer@link(#4){\my@box}% + \fi + \global\let\my@box=\my@smallbox +} + +\defbeamertemplate{footline}{progress}{% + % default height is 0.4pt, which is ignored by adobe reader, so we increase it by 0.2pt + {\usebeamercolor[fg]{separator line}\hrule height 0.6pt}% + \begin{beamercolorbox}[wd=\paperwidth,ht=2.25ex,dp=1ex]{footline}% + \usebeamerfont{footline}% + \kern\beamer@leftmargin + \my@adjustbox\dohead% + \hfill\usebeamertemplate{footline right}% + \kern\beamer@rightmargin + \end{beamercolorbox}% +} + +%% ------------------------- frame title ----------------------------- + +\newcommand{\insertframetitlemark}{} + +\defbeamertemplate{frametitle}{simple}[1][] +{% + \nointerlineskip + \begin{beamercolorbox}[wd=\paperwidth,sep=0pt,leftskip=\beamer@leftmargin,% + rightskip=\beamer@rightmargin,#1]{frametitle} + \usebeamerfont{frametitle}% + \rule[-3.6mm]{0pt}{12mm}\insertframetitle + \ifx\insertframetitlemark\@empty\else\hfill + {\usebeamercolor{normal text}\color{fg!30!bg}\insertframetitlemark}% + \fi + \rule[-3.6mm]{0pt}{12mm}\par + \end{beamercolorbox} +} + +%% ------------------- block and theorem ----------------------------- + +\defbeamertemplate{theorem begin}{simple} +{% + \upshape%\bfseries\inserttheoremheadfont + {\usebeamercolor[fg]{theoremname}% + \inserttheoremname\inserttheoremnumber + \ifx\inserttheoremaddition\@empty\else\ (\inserttheoremaddition)\fi% + %\inserttheorempunctuation + }% + \quad\normalfont +} +\defbeamertemplate{theorem end}{simple}{\par} + +\defbeamertemplate{proof begin}{simple} +{% + %\bfseries + {\usebeamercolor[fg]{proofname}\insertproofname}% + \quad\normalfont +} +\defbeamertemplate{proof end}{simple}{\par} + +%% --------------------------- font theme ---------------------------- + +\setbeamerfont{title}{size=\LARGE} +\setbeamerfont{subtitle}{size=\large} +\setbeamerfont{author}{size=\normalsize} +\setbeamerfont{institute}{size=\normalsize} +\setbeamerfont{date}{size=\normalsize} +\setbeamerfont{section in toc}{size=\large} +\setbeamerfont{subsection in toc}{size=\large} +\setbeamerfont{frametitle}{size=\large} +\setbeamerfont{block title}{size=\normalsize} + +\usefonttheme{professionalfonts} +%\usepackage{arev} + +%\setlength{\parskip}{5pt plus 1pt minus 1pt} + +%% ---------------------------- color theme -------------------------- + +% always use rgb colors in pdf files +\substitutecolormodel{hsb}{rgb} + +\definecolor{red99}{Hsb}{0,0.9,0.9} +\definecolor{yellow86}{Hsb}{60,0.8,0.6} +\definecolor{cyan19}{Hsb}{180,0.1,0.9} +\definecolor{cyan95}{Hsb}{189,0.88,0.49} +\definecolor{blue77}{Hsb}{240,0.7,0.7} +\definecolor{blue99}{Hsb}{240,0.9,0.9} +\definecolor{magenta88}{Hsb}{300,0.8,0.8} + +\colorlet{text1}{black} +\colorlet{back1}{white} +\colorlet{accent1}{cyan95} +\colorlet{accent2}{blue99} +\colorlet{accent3}{red99} +\colorlet{accent4}{yellow86} +\colorlet{accent5}{magenta88} +\colorlet{filler1}{accent1!40!back1} +\colorlet{filler2}{accent2!40!back1} +\colorlet{filler3}{accent3!40!back1} +\colorlet{filler4}{accent4!40!back1} +\colorlet{filler5}{accent5!40!back1} +\colorlet{tcolor}{text1!10!back1} % texture color +\colorlet{dcolor}{white} % draw color +\colorlet{fcolor}{cyan95} % fill color +\colorlet{scolor}{black} % shade color + +\setbeamercolor{normal text}{bg=back1,fg=text1} +\setbeamercolor{structure}{fg=cyan95} +\setbeamercolor{local structure}{fg=blue99} +\setbeamercolor{footline}{bg=,fg=black} +\setbeamercolor{title}{use=structure,fg=structure.fg} +\setbeamercolor{subtitle}{fg=text1} +\setbeamercolor{author}{fg=white} +\setbeamercolor{institute}{fg=white} +\setbeamercolor{date}{fg=white} +\setbeamercolor{section in toc}{parent=title} +\setbeamercolor{subsection in toc}{parent=title} +\setbeamercolor{section in toc shaded}{parent=normal text} +\setbeamercolor{subsection in toc shaded}{parent=normal text} +\setbeamercolor{frametitle}{parent=title} +\setbeamercolor{separator line}{fg=accent2} +\setbeamercolor{theoremname}{parent=subtitle} +\setbeamercolor{proofname}{parent=subtitle} +\setbeamercolor{block title}{fg=accent1,bg=gray} +\setbeamercolor{block body}{bg=lightgray} +\setbeamercolor{block title example}{fg=accent2,bg=gray} +\setbeamercolor{block body example}{bg=lightgray} +\setbeamercolor{block title alerted}{fg=accent3,bg=gray} +\setbeamercolor{block body alerted}{bg=lightgray} + +%% ------------------------ select templates ------------------------- + +\setbeamertemplate{background canvas}[default] +\setbeamertemplate{background}[line] +\setbeamertemplate{footline}[progress] +\setbeamertemplate{footline left}[author] +\setbeamertemplate{footline center}[title] +\setbeamertemplate{footline right}[number] +\setbeamertemplate{title page}[snake] +\setbeamertemplate{at begin section}[plain] +\setbeamertemplate{at begin subsection}[plain] +\setbeamertemplate{section page}[snake] +\setbeamertemplate{section page content}[level] +\setbeamertemplate{subsection page}[snake] +\setbeamertemplate{subsection page content}[level] +\setbeamertemplate{theorem begin}[default] +\setbeamertemplate{theorem end}[default] +\setbeamertemplate{proof begin}[default] +\setbeamertemplate{proof end}[default] +\setbeamertemplate{frametitle}[simple] +\setbeamertemplate{navigation symbols}{} +\setbeamertemplate{section}[simple] +\setbeamertemplate{subsection}[simple] +\setbeamertemplate{section in toc}[sections numbered] +\setbeamertemplate{subsection in toc}[subsections numbered] +\setbeamertemplate{section in toc shaded}[default][100] +\setbeamertemplate{subsection in toc shaded}[default][100] +\setbeamertemplate{itemize items}[default] +\setbeamertemplate{enumerate items}[default] + +%% ----------------------- handout mode ------------------------------ + +\mode{ + \setbeamertemplate{background canvas}{} + \setbeamertemplate{background}{} + \setbeamertemplate{footline}[sectioning] + \colorlet{dcolor}{darkgray} + \colorlet{fcolor}{white} + \colorlet{scolor}{white} + \setbeamercolor{normal text}{fg=black, bg=white} + \setbeamercolor{title}{fg=accent1} + \setbeamercolor{subtitle}{fg=accent1!70!gray} + \setbeamercolor{author}{fg=black} + \setbeamercolor{institute}{fg=black} + \setbeamercolor{date}{fg=black} + \setbeamercolor{section in toc}{fg=accent1!90!gray} + \setbeamercolor{subsection in toc}{fg=accent1!80!gray} + \setbeamercolor{section in toc shaded}{fg=lightgray} + \setbeamercolor{subsection in toc shaded}{fg=lightgray} + \setbeamercolor{frametitle}{fg=accent1!70!gray,bg=} + \setbeamercolor{theoremname}{fg=accent1!60!gray} + \setbeamercolor{proofname}{fg=accent1!60!gray} + \setbeamercolor{footline}{bg=white,fg=black} +} + +\mode + + +\makeatother diff --git a/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/bernoulli/demo-bernoulli.pdf b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/bernoulli/demo-bernoulli.pdf new file mode 100644 index 0000000000..6fb2d5bba5 Binary files /dev/null and b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/bernoulli/demo-bernoulli.pdf differ diff --git a/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/bernoulli/demo-bernoulli.tex b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/bernoulli/demo-bernoulli.tex new file mode 100644 index 0000000000..08da497114 --- /dev/null +++ b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/bernoulli/demo-bernoulli.tex @@ -0,0 +1,176 @@ +% -*- coding: utf-8 -*- + +\documentclass[11pt,xcolor={rgb}]{beamer} + +\usetheme{bernoulli} + +% remove these two lines to hide footlines in (sub)section pages +\setbeamertemplate{at begin section}[normal] +\setbeamertemplate{at begin subsection}[normal] + +\usepackage{arev} + +\begin{document} + +\title{Beamer Theme Bernoulli} +\subtitle{A nice theme for LaTeX presentations} +\author{Author Name} +\institute{Institute Name} + +\begin{frame}[plain] +\titlepage +\end{frame} + +\section{Section One} + +\subsection{Subsection One} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Two} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Three} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\section{Section Two} + +\subsection{Subsection One} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Two} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Three} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\section{Section Three} + +\subsection{Subsection One} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Two} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Three} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\end{document} diff --git a/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/dirichlet/beamerthemedirichlet.sty b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/dirichlet/beamerthemedirichlet.sty new file mode 100644 index 0000000000..d9590b9b01 --- /dev/null +++ b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/dirichlet/beamerthemedirichlet.sty @@ -0,0 +1,402 @@ +% -*- coding: utf-8 -*- +% ---------------------------------------------------------------------------- +% Author: Jianrui Lyu +% Website: https://github.com/lvjr/concrete +% License: The LaTeX Project Public License 1.3c +% ---------------------------------------------------------------------------- + +\ProvidesPackage{beamerthemedirichlet}[2024-01-19 v2024A Beamer Theme Dirichlet] + +\makeatletter + +% compatible with old versions of beamer +\providecommand{\beamer@endinputifotherversion}[1]{} + +\RequirePackage{tikz,adjustbox} +\usetikzlibrary{decorations.pathmorphing,calc} + +\mode + +\setbeamersize{text margin left=8mm,text margin right=8mm} + +%% ----------------- background canvas and background ---------------- + +\defbeamertemplate{background}{dirichlet}{% + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \foreach \i in {0,16,...,128} \foreach \j in {0,16,...,96} { + \path[draw=blue77!90!black] (\i mm,\j mm) circle (16mm); + } + \end{tikzpicture}% +} + +% need "text badly ragged" option for correct space skips +% see http://tex.stackexchange.com/a/132748/8956 +\gdef\my@background@title +{% + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \path[fill=fcolor] + (0,0.25\paperheight) -- (0,0) -- (\paperwidth,0) -- (\paperwidth,0.25\paperheight) + decorate[decoration={snake,segment length=3.15mm}] { -- cycle }; + \path[draw=dcolor,thick] (\paperwidth,0.25\paperheight) + decorate[decoration={snake,segment length=3.15mm}] { -- (0,0.25\paperheight) }; + \path[fill=fcolor] + (0,0.85\paperheight) -- (0,\paperheight) -- (\paperwidth,\paperheight) -- (\paperwidth,0.85\paperheight) + decorate[decoration={snake,segment length=3.15mm}] { -- cycle }; + \path[draw=dcolor,thick] (\paperwidth,0.85\paperheight) + decorate[decoration={snake,segment length=3.15mm}] { -- (0,0.85\paperheight) }; + \node[text width=0.9\paperwidth,text badly ragged] at (0.5\paperwidth,0.925\paperheight) {% + \begin{minipage}[c][0.15\paperheight]{0.9\paperwidth}% + \centering + \usebeamerfont{date}\usebeamercolor[fg]{date}\insertdate + \end{minipage} + }; + \node[text width=0.9\paperwidth,text badly ragged] at (0.5\paperwidth,0.55\paperheight) {% + \begin{minipage}[c][0.6\paperheight]{0.9\paperwidth} + \centering + \usebeamerfont{title}\usebeamercolor[fg]{title}\inserttitle + \ifx\insertsubtitle\@empty\else + \\[5pt]\usebeamerfont{subtitle}\usebeamercolor[fg]{subtitle} + \insertsubtitle + \fi + \end{minipage} + }; + \node[text width=0.9\paperwidth,text badly ragged] at (0.5\paperwidth,0.125\paperheight) {% + \begin{minipage}[c][0.25\paperheight]{0.9\paperwidth} + \centering + \usebeamerfont{author}\usebeamercolor[fg]{author}\insertauthor\\[3pt] + \usebeamerfont{institute}\usebeamercolor[fg]{institute}\insertinstitute + \end{minipage} + }; + \end{tikzpicture} +} + +\gdef\my@background@section +{% + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \path[fill=fcolor] + (0,0.1\paperheight) -- (0,0) -- (\paperwidth,0) -- (\paperwidth,0.1\paperheight) + to[bend right=10] ($(0,0.1\paperheight)$); + \path[draw=dcolor,thick] (\paperwidth,0.1\paperheight) to[bend right=10] ($(0,0.1\paperheight)$); + \node[text width=\textwidth,text badly ragged] at (0.5\paperwidth,0.6\paperheight) {% + \begin{minipage}[c]{\textwidth} + \usebeamertemplate{section page content}% + \end{minipage} + }; + \end{tikzpicture} +} + +\gdef\my@background@subsection +{% + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \path[fill=fcolor] + (0,0.1\paperheight) -- (0,0) -- (\paperwidth,0) -- (\paperwidth,0.1\paperheight) + to[bend right=10] ($(0,0.1\paperheight)$); + \path[draw=dcolor,thick] (\paperwidth,0.1\paperheight) to[bend right=10] ($(0,0.1\paperheight)$); + \node[text width=\textwidth,text badly ragged] at (0.5\paperwidth,0.6\paperheight) {% + \begin{minipage}[c]{\textwidth} + \usebeamertemplate{subsection page content}% + \end{minipage} + }; + \end{tikzpicture} +} + +%% -------------------------- title page ----------------------------- + +\defbeamertemplate{title page}{snake} +{% + \nointerlineskip + \begin{adjustbox}{width=\paperwidth,center}% + \my@background@title + \end{adjustbox}% +} + +%% ----------------------- section and subsection -------------------- + +% create new template for section +\defbeamertemplate{section}{simple}{% + \insertsectionnumber.\hspace*{1ex}\insertsection% +} + +\AtBeginSection[]{\begin{frame}{\sectionpage}\end{frame}} + +\defbeamertemplate{section page}{snake}{% + \nointerlineskip + \begin{adjustbox}{width=\paperwidth,center}% + \my@background@section + \end{adjustbox}% +} + +\defbeamertemplate{section page content}{simple}{ + \begin{beamercolorbox}[wd=\textwidth,center]{section title}% + \usebeamerfont{section title} + \usebeamertemplate{section}% + \end{beamercolorbox} +} + +% create new template for subsection +\defbeamertemplate{subsection}{simple}{% + \insertsectionnumber.\insertsubsectionnumber\hspace*{2ex}\insertsubsection% +} + +\AtBeginSubsection[]{\begin{frame}{\subsectionpage}\end{frame}} + +\defbeamertemplate{subsection page}{snake}{% + \nointerlineskip + \begin{adjustbox}{width=\paperwidth,center}% + \my@background@subsection + \end{adjustbox}% +} + +\defbeamertemplate{subsection page content}{simple}{ + \begin{beamercolorbox}[wd=\textwidth,center]{subsection title}% + \usebeamerfont{subsection title}% + \usebeamertemplate{subsection}% + \end{beamercolorbox}% +} +\defbeamertemplate{subsection page content}{dirichlet}{% + \noindent + \begin{minipage}{0.5\textwidth} + \usebeamerfont{section title}% + \usebeamertemplate{section}% + \end{minipage}% + \begin{minipage}{0.5\textwidth} + \tableofcontents[sectionstyle=hide,subsectionstyle=show/shaded/hide] + \end{minipage}% +} + +\defbeamertemplate{subsection in toc}{dirichlet}{% + \leavevmode + \smash{\color{text1}\hspace{-1pt}\rule[-0.6em]{2pt}{2em}}\quad + $\circ$ \inserttocsubsection\par +} + +%% ---------------------- headline and footline ---------------------- + +\newif\ifmy@subsection \my@subsectionfalse + +\newcommand{\my@sectionentry}[5]{% + \hfill + \ifnum\c@section=#1% + \usebeamercolor{headline highlight}% + \else% + \usebeamercolor{headline}% + \fi% + \hyperlink{Navigation#3}{% + \colorbox{bg}{% + \hspace{0.2em}\rule[-1ex]{0pt}{3.25ex}\color{fg}#2\hspace{0.2em}% + }% + }% + \let\slideentry=\my@slideentry +} + +\newcommand{\my@subsectionentry}[5]{\my@subsectiontrue} + +\newcommand{\my@slideentry}[6]{% + \ifmy@subsection + \usebeamercolor{headline}% + \def\my@box{$\circ$}% + \ifnum\c@section=#1% + \usebeamercolor{headline highlight}% + \ifnum\c@subsection=#2% + \def\my@box{$\bullet$}% + \fi + \fi + \beamer@link(#4){% + \colorbox{bg}{% + \rule[-1ex]{0pt}{3.25ex}\hspace{0.1em}\color{fg}\my@box\hspace{0.1em}% + }% + }% + \my@subsectionfalse + \fi +} + +\defbeamertemplate{headline}{dirichlet}{% + \begin{beamercolorbox}[wd=\paperwidth,ht=2.25ex,dp=1ex]{headline}% + \usebeamerfont{headline}% + \kern\beamer@leftmargin + \setlength{\fboxsep}{0pt}% + \let\sectionentry=\my@sectionentry + \let\beamer@subsectionentry=\my@subsectionentry + \hskip 0pt plus -1fill\dohead + \hskip 0pt plus 9fill\relax + \Acrobatmenu{GoToPage}{\insertframenumber{}/\inserttotalframenumber}% + \kern\beamer@rightmargin + \end{beamercolorbox}% + % default height is 0.4pt, which is ignored by adobe reader, so we increase it by 0.2pt + {\color{dcolor}\hrule height 0.6pt}% +} + +%% ------------------------- frame title ----------------------------- + +\defbeamertemplate{frametitle}{simple}{% + \nointerlineskip + \begin{beamercolorbox}[wd=\paperwidth,sep=0pt,leftskip=\beamer@leftmargin,% + rightskip=\beamer@rightmargin]{frametitle} + \usebeamerfont{frametitle}% + \rule[-3.6mm]{0pt}{12mm}\insertframetitle\rule[-3.6mm]{0pt}{12mm}\par + \end{beamercolorbox} +} + +%% ------------------- block and theorem ----------------------------- + +\defbeamertemplate{theorem begin}{simple} +{% + \upshape%\bfseries\inserttheoremheadfont + {\usebeamercolor[fg]{theoremname}% + \inserttheoremname\inserttheoremnumber + \ifx\inserttheoremaddition\@empty\else\ (\inserttheoremaddition)\fi% + %\inserttheorempunctuation + }% + \quad\normalfont +} +\defbeamertemplate{theorem end}{simple}{\par} + +\defbeamertemplate{proof begin}{simple} +{% + %\bfseries + {\usebeamercolor[fg]{proofname}\insertproofname}% + \quad\normalfont +} +\defbeamertemplate{proof end}{simple}{\par} + +%% --------------------------- font theme ---------------------------- + +\setbeamerfont{title}{size=\LARGE} +\setbeamerfont{subtitle}{size=\large} +\setbeamerfont{author}{size=\large} +\setbeamerfont{institute}{size=\normalsize} +\setbeamerfont{date}{size=\large} +\setbeamerfont{section in toc}{size=\Large} +\setbeamerfont{subsection in toc}{size=\large} +\setbeamerfont{headline}{size=\scriptsize} +\setbeamerfont{frametitle}{size=\large} +\setbeamerfont{block title}{size=\normalsize} + +\usefonttheme{professionalfonts} +%\usepackage{arev} + +%\setlength{\parskip}{5pt plus 1pt minus 1pt} + +%% ---------------------------- color theme -------------------------- + +% always use rgb colors in pdf files +\substitutecolormodel{hsb}{rgb} + +\definecolor{red69}{Hsb}{0,0.6,0.9} +\definecolor{yellow69}{Hsb}{60,0.6,0.9} +\definecolor{yellow99}{Hsb}{60,0.9,0.9} +\definecolor{green69}{Hsb}{120,0.6,0.9} +\definecolor{cyan69}{Hsb}{180,0.6,0.9} +\definecolor{azure53}{Hsb}{210,0.5,0.3} +\definecolor{blue77}{Hsb}{240,0.7,0.7} +\definecolor{blue88}{Hsb}{240,0.8,0.8} +\definecolor{blue97}{Hsb}{240,0.9,0.7} +\definecolor{magenta69}{Hsb}{300,0.6,0.9} +\definecolor{purple94}{Hsb}{330,0.9,0.4} + +\colorlet{text1}{white} +\colorlet{back1}{blue77} +\colorlet{accent1}{yellow69} +\colorlet{accent2}{green69} +\colorlet{accent3}{red69} +\colorlet{accent4}{cyan69} +\colorlet{accent5}{magenta69} +\colorlet{filler1}{accent1!40!back1} +\colorlet{filler2}{accent2!40!back1} +\colorlet{filler3}{accent3!40!back1} +\colorlet{filler4}{accent4!40!back1} +\colorlet{filler5}{accent5!40!back1} +\colorlet{dcolor}{white} +\colorlet{fcolor}{azure53} + +\setbeamercolor{normal text}{bg=blue77,fg=white} +\setbeamercolor{structure}{fg=yellow99} +\setbeamercolor{local structure}{fg=accent2} +\setbeamercolor{headline}{bg=azure53,fg=white} +\setbeamercolor{headline highlight}{parent=headline,bg=purple94} +\setbeamercolor{navigation symbols}{bg=purple94} +\setbeamercolor{navigation symbols dimmed}{fg=purple94} +\setbeamercolor{title}{use=structure,fg=structure.fg} +\setbeamercolor{subtitle}{fg=white} +\setbeamercolor{author}{fg=white} +\setbeamercolor{institute}{fg=white} +\setbeamercolor{date}{fg=white} +\setbeamercolor{section in toc}{parent=title} +\setbeamercolor{subsection in toc}{parent=title} +\setbeamercolor{section in toc shaded}{parent=normal text} +\setbeamercolor{subsection in toc shaded}{parent=normal text} +\setbeamercolor{frametitle}{parent=title} +\setbeamercolor{theoremname}{parent=subtitle} +\setbeamercolor{proofname}{parent=subtitle} +\setbeamercolor{block title}{fg=accent1,bg=back1!50!gray} +\setbeamercolor{block body}{bg=back1!50!lightgray} +\setbeamercolor{block title example}{fg=accent2,bg=back1!50!gray} +\setbeamercolor{block body example}{bg=back1!50!lightgray} +\setbeamercolor{block title alerted}{fg=accent3,bg=back1!50!gray} +\setbeamercolor{block body alerted}{bg=back1!50!lightgray} + +%% ------------------------ select templates ------------------------- + +\setbeamertemplate{background canvas}[default] +\setbeamertemplate{background}[dirichlet] +\setbeamertemplate{title page}[snake] +\setbeamertemplate{section page}[snake] +\setbeamertemplate{section page content}[simple] +\setbeamertemplate{subsection page}[snake] +\setbeamertemplate{subsection page content}[dirichlet] +\setbeamertemplate{section}[simple] +\setbeamertemplate{subsection}[simple] +\setbeamertemplate{section in toc}[sections numbered] +\setbeamertemplate{subsection in toc}[dirichlet] +\setbeamertemplate{section in toc shaded}[default][100] +\setbeamertemplate{subsection in toc shaded}[default][100] +\setbeamertemplate{navigation symbols}{} +\setbeamertemplate{headline}[dirichlet] +\setbeamertemplate{frametitle}[simple] +\setbeamertemplate{theorem begin}[default] +\setbeamertemplate{theorem end}[default] +\setbeamertemplate{proof begin}[default] +\setbeamertemplate{proof end}[default] +\setbeamertemplate{itemize items}[default] +\setbeamertemplate{enumerate items}[default] + +%% ----------------------- handout mode ------------------------------ + +\mode{ + \setbeamertemplate{background canvas}{} + \setbeamertemplate{background}{} + \setbeamertemplate{subsection page content}[simple] + \colorlet{text1}{black} + \colorlet{back1}{white} + \colorlet{accent1}{blue!90!black} + \colorlet{accent2}{teal!70!black} + \colorlet{accent3}{red!50!black} + \colorlet{dcolor}{gray} + \colorlet{fcolor}{white} + \setbeamercolor{normal text}{fg=black, bg=white} + \setbeamercolor{title}{fg=blue} + \setbeamercolor{subtitle}{fg=black} + \setbeamercolor{author}{fg=black} + \setbeamercolor{institute}{fg=black} + \setbeamercolor{date}{fg=black} + \setbeamercolor{section in toc}{fg=blue!90!gray} + \setbeamercolor{subsection in toc}{fg=blue!80!gray} + \setbeamercolor{section in toc shaded}{fg=lightgray} + \setbeamercolor{subsection in toc shaded}{fg=lightgray} + \setbeamercolor{section title}{fg=blue!90!gray} + \setbeamercolor{subsection title}{fg=blue!80!gray} + \setbeamercolor{headline}{bg=white,fg=black} + \setbeamercolor{headline highlight}{fg=blue!90!gray,bg=white} + \setbeamercolor{frametitle}{fg=blue!70!gray,bg=} + \setbeamercolor{theoremname}{fg=blue!60!gray} + \setbeamercolor{proofname}{fg=blue!60!gray} +} + +\mode + + +\makeatother diff --git a/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/dirichlet/demo-dirichlet.pdf b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/dirichlet/demo-dirichlet.pdf new file mode 100644 index 0000000000..ed4fba2bde Binary files /dev/null and b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/dirichlet/demo-dirichlet.pdf differ diff --git a/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/dirichlet/demo-dirichlet.tex b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/dirichlet/demo-dirichlet.tex new file mode 100644 index 0000000000..24cb9ca62e --- /dev/null +++ b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/dirichlet/demo-dirichlet.tex @@ -0,0 +1,171 @@ +% -*- coding: utf-8 -*- + +\documentclass[12pt,xcolor={rgb}]{beamer} + +\usetheme{dirichlet} + +\usepackage{arev} + +\begin{document} + +\title{Beamer Theme Dirichlet} +\author{Author Name} +\institute{Institute Name} + +\begin{frame}[plain] +\titlepage +\end{frame} + +\section{Section One} + +\subsection{Subsection One} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Two} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Three} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\section{Section Two} + +\subsection{Subsection One} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Two} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Three} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\section{Section Three} + +\subsection{Subsection One} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Two} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Three} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\end{document} diff --git a/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/fermat/beamerthemefermat.sty b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/fermat/beamerthemefermat.sty new file mode 100644 index 0000000000..f4130745a0 --- /dev/null +++ b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/fermat/beamerthemefermat.sty @@ -0,0 +1,433 @@ +% -*- coding: utf-8 -*- +% ---------------------------------------------------------------------------- +% Author: Jianrui Lyu +% Website: https://github.com/lvjr/concrete +% License: The LaTeX Project Public License 1.3c +% ---------------------------------------------------------------------------- + +\ProvidesPackage{beamerthemefermat}[2024-01-19 v2024A Beamer Theme Fermat] + +\makeatletter + +% compatible with old versions of beamer +\providecommand{\beamer@endinputifotherversion}[1]{} + +\RequirePackage{tikz,etoolbox,adjustbox,varwidth,multicol} +\usetikzlibrary{decorations.pathmorphing} + +\mode + +\setbeamersize{text margin left=8mm,text margin right=8mm} + +%% ----------------- background canvas and background ---------------- + +\defbeamertemplate{background}{line}{% + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \draw[xstep=\paperwidth,ystep=1mm,color=tcolor] (0,0) grid (\paperwidth,\paperheight); + \end{tikzpicture}% +} + +\defbeamertemplate{background}{linear}{% + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \draw[pattern=horizontal lines, pattern color=tcolor] + (0,0) rectangle (\paperwidth,\paperheight); + \end{tikzpicture}% +} + +\defbeamertemplate{background}{lattice}{% + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \draw[step=1mm,color=tcolor] (0,0) grid (\paperwidth,\paperheight); + \end{tikzpicture}% +} + +% need "text badly ragged" option for correct space skips +% see http://tex.stackexchange.com/a/132748/8956 +\gdef\my@background@title +{% + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \fill[draw=dcolor,fill=fcolor] + (0,0.25\paperheight) -- (0,0) -- (\paperwidth,0) + -- (\paperwidth,0.25\paperheight) decorate[decoration={snake,segment length=3.15mm}] { -- cycle }; + \fill[draw=dcolor,fill=fcolor] + (0,0.85\paperheight) -- (0,\paperheight) -- (\paperwidth,\paperheight) + -- (\paperwidth,0.85\paperheight) decorate[decoration={snake,segment length=3.15mm}] { -- cycle }; + \node[text width=0.9\paperwidth,text badly ragged] at (0.5\paperwidth,0.925\paperheight) {% + \begin{minipage}[c][0.15\paperheight]{0.9\paperwidth}% + \centering + \usebeamerfont{date}\usebeamercolor[fg]{date}\insertdate + \end{minipage} + }; + \node[text width=0.9\paperwidth,text badly ragged] at (0.5\paperwidth,0.55\paperheight) {% + \begin{minipage}[c][0.6\paperheight]{0.9\paperwidth} + \centering + \usebeamerfont{title}\usebeamercolor[fg]{title}\inserttitle + \ifx\insertsubtitle\@empty\else + \\[5pt]\usebeamerfont{subtitle}\usebeamercolor[fg]{subtitle} + \insertsubtitle + \fi + \end{minipage} + }; + \node[text width=0.9\paperwidth,text badly ragged] at (0.5\paperwidth,0.125\paperheight) {% + \begin{minipage}[c][0.25\paperheight]{0.9\paperwidth} + \centering + \usebeamerfont{author}\usebeamercolor[fg]{author}\insertauthor\\[3pt] + \usebeamerfont{institute}\usebeamercolor[fg]{institute}\insertinstitute + \end{minipage} + }; + \end{tikzpicture} +} + +\gdef\my@background@section +{% + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \fill[draw=dcolor,fill=fcolor] + (0,0.12\paperheight) -- (0,0) -- (\paperwidth,0) + -- (\paperwidth,0.12\paperheight) decorate[decoration={snake,segment length=3.15mm}] { -- cycle }; + \fill[draw=dcolor,fill=fcolor] + (0,0.92\paperheight) -- (0,\paperheight) -- (\paperwidth,\paperheight) + -- (\paperwidth,0.92\paperheight) decorate[decoration={snake,segment length=3.15mm}] { -- cycle }; + \node[text width=0.9\paperwidth,text badly ragged] at (0.5\paperwidth,0.52\paperheight) {% + \begin{minipage}[c]{0.9\paperwidth} + \usebeamertemplate{section page content}% + \end{minipage} + }; + \end{tikzpicture} +} + +\gdef\my@background@subsection +{% + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \fill[draw=dcolor,fill=fcolor] + (0,0.12\paperheight) -- (0,0) -- (\paperwidth,0) + -- (\paperwidth,0.12\paperheight) decorate[decoration={snake,segment length=3.15mm}] { -- cycle }; + \fill[draw=dcolor,fill=fcolor] + (0,0.92\paperheight) -- (0,\paperheight) -- (\paperwidth,\paperheight) + -- (\paperwidth,0.92\paperheight) decorate[decoration={snake,segment length=3.15mm}] { -- cycle }; + \node[text width=0.9\paperwidth,text badly ragged] at (0.5\paperwidth,0.52\paperheight) {% + \begin{minipage}[c]{0.9\paperwidth} + \usebeamertemplate{subsection page content}% + \end{minipage} + }; + \end{tikzpicture} +} + +%% -------------------------- title page ----------------------------- + +\defbeamertemplate{title page}{snake} +{% + \nointerlineskip + \begin{adjustbox}{width=\paperwidth,center}% + \my@background@title + \end{adjustbox}% +} + +%% ----------------------- section and subsection -------------------- + +\patchcmd{\@vwid@sift}{\PackageWarning{varwidth}{Failed to reprocess entire contents}}{}{}{} + +\def\sectionintocskip{0.5em} +\patchcmd{\beamer@sectionintoc}{\vskip1.5em}{\vskip\sectionintocskip}{}{} +% patch for centering toc with varwidth package +\patchcmd{\beamer@sectionintoc}{% + \hbox{\vbox{% + \def\beamer@breakhere{\\}% + \beamer@tocact{\ifnum\c@section=#1\beamer@toc@cs\else\beamer@toc@os\fi}{section in toc}}}% +}{% + \hbox{% + \def\beamer@breakhere{}% + \beamer@tocact{\ifnum\c@section=#1\beamer@toc@cs\else\beamer@toc@os\fi}{section in toc}}% +}{}{} +% patch for centering toc in pdflatex with varwidth package +\let\my@beamer@subsectionintoc=\beamer@subsectionintoc +\patchcmd{\my@beamer@subsectionintoc}{% + \def\beamer@breakhere{\\}% + \beamer@tocact{\ifnum\c@section=#1\ifnum\c@subsection=#2\beamer@toc@css\else\beamer@toc@oss\fi\else\beamer@toc@ooss\fi} + {subsection in toc}% +}{% + \def\beamer@breakhere{}% + \ifnum\c@section=#1\ifnum\c@subsection=#2% + \vskip.5em\hbox{\beamer@tocact\beamer@toc@css{subsection in toc}}% + \else + \vskip.5em\hbox{\beamer@tocact\beamer@toc@oss{subsection in toc}}% + \fi\fi +}{}{} + +% create new template for section +\defbeamertemplate{section}{simple}{% + \insertsectionnumber.\hspace*{1ex}\insertsection% +} + +\defbeamertemplate{at begin section}{normal}{% + \frame{\sectionpage} +} +\defbeamertemplate{at begin section}{plain}{% + \frame[plain]{\sectionpage} +} +\AtBeginSection[]{\usebeamertemplate{at begin section}} + +\defbeamertemplate{section page}{snake}{% + \nointerlineskip + \begin{adjustbox}{width=\paperwidth,center}% + \my@background@section + \end{adjustbox}% +} + +\defbeamertemplate{section page content}{simple}{ + \begin{beamercolorbox}[wd=\textwidth,center]{section title}% + \usebeamerfont{section title} + \usebeamertemplate{section}% + \end{beamercolorbox} +} +\defbeamertemplate{section page content}{level}{ + \begin{center} + \begin{varwidth}{\textwidth} + \tableofcontents[sectionstyle=show/shaded,subsectionstyle=hide] + \end{varwidth} + \end{center} +} +\defbeamertemplate{section page content}{split}{ + \begin{multicols}{2} + \tableofcontents[sectionstyle=show/shaded,subsectionstyle=shaded] + \end{multicols} +} + +% create new template for subsection +\defbeamertemplate{subsection}{simple}{% + \insertsectionnumber.\insertsubsectionnumber\hspace*{2ex}\insertsubsection% +} + +\defbeamertemplate{at begin subsection}{normal}{% + \frame{\subsectionpage} +} +\defbeamertemplate{at begin subsection}{plain}{% + \frame[plain]{\subsectionpage} +} +\AtBeginSubsection[]{\usebeamertemplate{at begin subsection}} + +\defbeamertemplate{subsection page}{snake}{% + \nointerlineskip + \begin{adjustbox}{width=\paperwidth,center}% + \my@background@subsection + \end{adjustbox}% +} + +\defbeamertemplate{subsection page content}{simple}{ + \begin{beamercolorbox}[wd=\textwidth,center]{subsection title}% + \usebeamerfont{subsection title}% + \usebeamertemplate{subsection}% + \end{beamercolorbox}% +} +\defbeamertemplate{subsection page content}{level}{ + \begin{center} + \let\beamer@subsectionintoc=\my@beamer@subsectionintoc + \begin{varwidth}{\textwidth} + \tableofcontents[sectionstyle=hide,subsectionstyle=show/shaded/hide] + \end{varwidth} + \end{center} +} +\defbeamertemplate{subsection page content}{split}{ + \begin{multicols}{2} + \tableofcontents[sectionstyle=show/shaded,subsectionstyle=show/shaded] + \end{multicols} +} + +\defbeamertemplate{subsection in toc}{triangle}{% + \leavevmode\leftskip=2.5em\scriptsize\raise1.25pt% + \rlap{\hskip-1.5em\donotcoloroutermaths$\blacktriangleright$}% + \normalsize\inserttocsubsection\par +} + +%% ---------------------- headline and footline ---------------------- + +\newif\ifmy@subsection \my@subsectionfalse + +\newcommand{\my@sectionentry}[5]{% + \hfill + \ifnum\c@section=#1% + \usebeamercolor{footline highlight}% + \else% + \usebeamercolor{footline}% + \fi% + \hyperlink{Navigation#3}{% + \colorbox{bg}{% + \hspace{0.2em}\rule[-1ex]{0pt}{3.25ex}\color{fg}#2\hspace{0.2em}% + }% + }% + \let\slideentry=\my@slideentry +} + +\newcommand{\my@subsectionentry}[5]{\my@subsectiontrue} + +\newcommand{\my@slideentry}[6]{% + \ifmy@subsection + \usebeamercolor{footline}% + \def\my@box{$\circ$}% + \ifnum\c@section=#1% + \usebeamercolor{footline highlight}% + \ifnum\c@subsection=#2% + \def\my@box{$\bullet$}% + \fi + \fi + \beamer@link(#4){% + \colorbox{bg}{% + \rule[-1ex]{0pt}{3.25ex}\hspace{0.1em}\color{fg}\my@box\hspace{0.1em}% + }% + }% + \my@subsectionfalse + \fi +} + +\defbeamertemplate{footline}{progress}{% + \begin{beamercolorbox}[wd=\paperwidth,ht=0.6pt,sep=0pt]{separator line} + \end{beamercolorbox} + \nointerlineskip + \begin{beamercolorbox}[wd=\paperwidth,ht=2.25ex,dp=1ex]{footline}% + \usebeamerfont{footline}% + \kern\beamer@leftmargin + \setlength{\fboxsep}{0pt}% + \let\sectionentry=\my@sectionentry + \let\beamer@subsectionentry=\my@subsectionentry + \hskip 0pt plus -1fill\dohead + \hskip 0pt plus 9fill\relax + \Acrobatmenu{GoToPage}{\insertframenumber{}/\inserttotalframenumber}% + \kern\beamer@rightmargin + \end{beamercolorbox}% +} + +%% ------------------------- frame title ----------------------------- + +\defbeamertemplate{frametitle}{simple}{% + \nointerlineskip + \begin{beamercolorbox}[wd=\paperwidth,sep=0pt,leftskip=\beamer@leftmargin,% + rightskip=\beamer@rightmargin]{frametitle} + \usebeamerfont{frametitle}% + \rule[-3.6mm]{0pt}{12mm}\insertframetitle\rule[-3.6mm]{0pt}{12mm}\par + \end{beamercolorbox} + \nointerlineskip + \begin{beamercolorbox}[wd=\paperwidth,ht=0.6pt,sep=0pt]{separator line} + \end{beamercolorbox} +} + +%% --------------------------- font theme ---------------------------- + +\setbeamerfont{title}{size=\LARGE} +\setbeamerfont{subtitle}{size=\large} +\setbeamerfont{author}{size=\large} +\setbeamerfont{institute}{size=\normalsize} +\setbeamerfont{date}{size=\large} +\setbeamerfont{section in toc}{size=\large} +\setbeamerfont{subsection in toc}{size=\large} +\setbeamerfont{frametitle}{size=\large} +\setbeamerfont{block title}{size=\normalsize} + +\usefonttheme{professionalfonts} +%\usepackage{arev} + +%\setlength{\parskip}{5pt plus 1pt minus 1pt} + +%% ---------------------------- color theme -------------------------- + +% always use rgb colors in pdf files +\substitutecolormodel{hsb}{rgb} + +\definecolor{red99}{Hsb}{0,0.9,0.9} +\definecolor{brown49}{Hsb}{30,0.4,0.9} +\definecolor{yellow29}{Hsb}{60,0.2,0.9} +\definecolor{yellow86}{Hsb}{60,0.8,0.6} +\definecolor{cyan95}{Hsb}{180,0.9,0.5} +\definecolor{blue77}{Hsb}{240,0.7,0.7} +\definecolor{blue99}{Hsb}{240,0.9,0.9} +\definecolor{magenta88}{Hsb}{300,0.8,0.8} + +\colorlet{text1}{black} +\colorlet{back1}{white} +\colorlet{accent1}{blue99} +\colorlet{accent2}{cyan95} +\colorlet{accent3}{red99} +\colorlet{accent4}{yellow86} +\colorlet{accent5}{magenta88} +\colorlet{filler1}{accent1!40!back1} +\colorlet{filler2}{accent2!40!back1} +\colorlet{filler3}{accent3!40!back1} +\colorlet{filler4}{accent4!40!back1} +\colorlet{filler5}{accent5!40!back1} +\colorlet{tcolor}{text1!10!back1} +\colorlet{dcolor}{cyan95} +\colorlet{fcolor}{brown49} + +\setbeamercolor{normal text}{bg=yellow29,fg=black} +\setbeamercolor{structure}{fg=blue99} +\setbeamercolor{local structure}{fg=cyan95} +\setbeamercolor{footline}{bg=brown49,fg=black} +\setbeamercolor{footline highlight}{parent=footline,bg=filler2} +\setbeamercolor{separator line}{bg=accent2} +\setbeamercolor{title}{use=structure,fg=structure.fg} +\setbeamercolor{subtitle}{use={structure,normal text},fg=structure.fg!90!normal text.bg} +\setbeamercolor{section in toc}{parent=title} +\setbeamercolor{subsection in toc}{parent=subtitle} +\setbeamercolor{section in toc shaded}{parent=normal text} +\setbeamercolor{subsection in toc shaded}{parent=normal text} +\setbeamercolor{frametitle}{fg=text1,bg=brown49} +\setbeamercolor{theoremname}{parent=subtitle} +\setbeamercolor{proofname}{parent=subtitle} +\setbeamercolor{block title}{fg=accent1,bg=gray} +\setbeamercolor{block body}{bg=lightgray} +\setbeamercolor{block title example}{fg=accent2,bg=gray} +\setbeamercolor{block body example}{bg=lightgray} +\setbeamercolor{block title alerted}{fg=accent3,bg=gray} +\setbeamercolor{block body alerted}{bg=lightgray} + +%% ------------------------ select templates ------------------------- + +\setbeamertemplate{background canvas}[default] +\setbeamertemplate{background}[line] +\setbeamertemplate{footline}[progress] +\setbeamertemplate{title page}[snake] +\setbeamertemplate{at begin section}[plain] +\setbeamertemplate{at begin subsection}[plain] +\setbeamertemplate{section page}[snake] +\setbeamertemplate{section page content}[level] +\setbeamertemplate{subsection page}[snake] +\setbeamertemplate{subsection page content}[level] +\setbeamertemplate{frametitle}[simple] +\setbeamertemplate{navigation symbols}{} +\setbeamertemplate{section}[simple] +\setbeamertemplate{subsection}[simple] +\setbeamertemplate{section in toc}[sections numbered] +\setbeamertemplate{subsection in toc}[subsections numbered] +\setbeamertemplate{section in toc shaded}[default][100] +\setbeamertemplate{subsection in toc shaded}[default][100] +\setbeamertemplate{itemize items}[default] +\setbeamertemplate{enumerate items}[default] + +%% ----------------------- handout mode ------------------------------ + +\mode{ + \setbeamertemplate{background canvas}{} + \setbeamertemplate{background}{} + \colorlet{dcolor}{darkgray} + \colorlet{fcolor}{white} + \setbeamercolor{normal text}{fg=black, bg=white} + \setbeamercolor{footline highlight}{bg=,fg=blue99} + \setbeamercolor{title}{fg=blue} + \setbeamercolor{subtitle}{fg=blue!70!gray} + \setbeamercolor{section in toc}{fg=blue!90!gray} + \setbeamercolor{subsection in toc}{fg=blue!80!gray} + \setbeamercolor{section in toc shaded}{fg=lightgray} + \setbeamercolor{subsection in toc shaded}{fg=lightgray} + \setbeamercolor{frametitle}{fg=blue!70!gray,bg=} + \setbeamercolor{theoremname}{fg=blue!60!gray} + \setbeamercolor{proofname}{fg=blue!60!gray} + \setbeamercolor{footline}{bg=white,fg=black} +} + +\mode + + +\makeatother diff --git a/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/fermat/demo-fermat.pdf b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/fermat/demo-fermat.pdf new file mode 100644 index 0000000000..1ac68703d3 Binary files /dev/null and b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/fermat/demo-fermat.pdf differ diff --git a/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/fermat/demo-fermat.tex b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/fermat/demo-fermat.tex new file mode 100644 index 0000000000..84d2f31213 --- /dev/null +++ b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/fermat/demo-fermat.tex @@ -0,0 +1,171 @@ +% -*- coding: utf-8 -*- + +\documentclass[12pt,xcolor={rgb}]{beamer} + +\usetheme{fermat} + +\usepackage{arev} + +\begin{document} + +\title{Beamer Theme Fermat} +\author{Author Name} +\institute{Institute Name} + +\begin{frame}[plain] +\titlepage +\end{frame} + +\section{Section One} + +\subsection{Subsection One} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Two} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Three} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\section{Section Two} + +\subsection{Subsection One} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Two} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Three} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\section{Section Three} + +\subsection{Subsection One} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Two} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Three} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\end{document} diff --git a/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/gauss/beamerthemegauss.sty b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/gauss/beamerthemegauss.sty new file mode 100644 index 0000000000..b6acd9069a --- /dev/null +++ b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/gauss/beamerthemegauss.sty @@ -0,0 +1,678 @@ +% -*- coding: utf-8 -*- +% ---------------------------------------------------------------------------- +% Author: Jianrui Lyu +% Website: https://github.com/lvjr/concrete +% License: The LaTeX Project Public License 1.3c +% ---------------------------------------------------------------------------- + +\ProvidesPackage{beamerthemegauss}[2024-01-19 v2024A Beamer Theme Gauss] + +\makeatletter + +% compatible with old versions of beamer +\providecommand{\beamer@endinputifotherversion}[1]{} + +\RequirePackage{tikz,etoolbox,fontawesome} + +% see https://github.com/xdanaux/fontawesome-latex/issues/12 +% but we don't need to fix it on TeX Live 2022 +%\ifxetex +% \newfontfamily{\FA}{FontAwesome}[Extension=.otf] +%\fi + +\usetikzlibrary{patterns} + +\mode + +\setbeamersize{text margin left=10.5mm,text margin right=5.5mm} + +%% ----------------- background canvas and background ---------------- + +\def\my@fa#1{#1\space} + +\defbeamertemplate{background canvas}{awesome}{% + \setlength{\fboxsep}{0pt}% + \noindent\colorbox{bg}{% + \usebeamertemplate{background texture}% + }% +} + +\defbeamertemplate{background texture}{awesome}{% + \fontfamily{lmss}\fontsize{17pt}{22pt}\selectfont\color{tcolor}% + \hspace{0.008\paperwidth}% + \begin{minipage}[c][\paperheight][c]{0.984\paperwidth} + \my@fa\faAdjust + \my@fa\faAlignCenter + \my@fa\faAlignJustify + \my@fa\faAlignLeft + \my@fa\faAlignRight + \my@fa\faAngleDoubleDown + \my@fa\faAngleDoubleLeft + \my@fa\faAngleDoubleRight + \my@fa\faAngleDoubleUp + \my@fa\faAngleDown + \my@fa\faAngleLeft + \my@fa\faAngleRight + \my@fa\faAngleUp + \my@fa\faAreaChart + \my@fa\faArrowCircleODown + \my@fa\faArrowCircleOLeft + \my@fa\faArrowCircleORight + \my@fa\faArrowCircleOUp + \my@fa\faArrowDown + \my@fa\faArrowLeft + \my@fa\faArrowRight + \my@fa\faArrowUp + \my@fa\faArrows + \my@fa\faArrowsH + \my@fa\faArrowsV + \my@fa\faAsterisk + \my@fa\faAt + \my@fa\faBackward + \my@fa\faBan + \my@fa\faBarChart + \my@fa\faBars + \my@fa\faBold + \my@fa\faBolt + \my@fa\faBook + \my@fa\faBookmarkO + \my@fa\faBraille + \my@fa\faBullseye + \my@fa\faCalendarCheckO + \my@fa\faCalendarMinusO + \my@fa\faCalendarPlusO + \my@fa\faCalendarTimesO + \my@fa\faCaretDown + \my@fa\faCaretLeft + \my@fa\faCaretRight + \my@fa\faCaretSquareODown + \my@fa\faCaretSquareOLeft + \my@fa\faCaretSquareORight + \my@fa\faCaretSquareOUp + \my@fa\faCheck + \my@fa\faCheckCircleO + \my@fa\faCheckSquareO + \my@fa\faChevronDown + \my@fa\faChevronLeft + \my@fa\faChevronRight + \my@fa\faChevronUp + \my@fa\faCircleO + \my@fa\faCircleThin + \my@fa\faClone + \my@fa\faClose + \my@fa\faCode + \my@fa\faColumns + \my@fa\faCommentO + \my@fa\faCommentingO + \my@fa\faCompress + \my@fa\faCrosshairs + \my@fa\faDatabase + \my@fa\faDesktop + \my@fa\faDotCircleO + \my@fa\faEject + \my@fa\faEllipsisH + \my@fa\faEllipsisV + \my@fa\faEnvira + \my@fa\faEraser + \my@fa\faExchange + \my@fa\faExclamation + \my@fa\faExclamationCircle + \my@fa\faExpand + \my@fa\faEyedropper + \my@fa\faFa + \my@fa\faFighterJet + \my@fa\faFire + \my@fa\faFlagO + \my@fa\faFlash + \my@fa\faFlask + \my@fa\faFolderO + \my@fa\faFont + \my@fa\faForward + \my@fa\faFrownO + \my@fa\faGavel + \my@fa\faGbp + \my@fa\faGear + \my@fa\faGenderless + \my@fa\faGraduationCap + \my@fa\faGratipay + \my@fa\faHSquare + \my@fa\faHandODown + \my@fa\faHandOLeft + \my@fa\faHandORight + \my@fa\faHandOUp + \my@fa\faHandPaperO + \my@fa\faHandPeaceO + \my@fa\faHandPointerO + \my@fa\faHandScissorsO + \my@fa\faHashtag + \my@fa\faHeader + \my@fa\faHeartO + \my@fa\faHome + \my@fa\faHourglassHalf + \my@fa\faImage + \my@fa\faInfo + \my@fa\faInfoCircle + \my@fa\faItalic + \my@fa\faLaptop + \my@fa\faLeaf + \my@fa\faLemonO + \my@fa\faLevelDown + \my@fa\faLevelUp + \my@fa\faLightbulbO + \my@fa\faLineChart + \my@fa\faListOl + \my@fa\faListUl + \my@fa\faLocationArrow + \my@fa\faLongArrowDown + \my@fa\faLongArrowLeft + \my@fa\faLongArrowRight + \my@fa\faLongArrowUp + \my@fa\faMailForward + \my@fa\faMailReply + \my@fa\faMapO + \my@fa\faMehO + \my@fa\faMinus + \my@fa\faMinusCircle + \my@fa\faMinusSquareO + \my@fa\faMoonO + \my@fa\faMousePointer + \my@fa\faNeuter + \my@fa\faObjectGroup + \my@fa\faObjectUngroup + \my@fa\faPagelines + \my@fa\faPaintBrush + \my@fa\faPaperPlaneO + \my@fa\faPaperclip + \my@fa\faPauseCircleO + \my@fa\faPaw + \my@fa\faPencil + \my@fa\faPercent + \my@fa\faPhoto + \my@fa\faPieChart + \my@fa\faPlane + \my@fa\faPlayCircleO + \my@fa\faPlus + \my@fa\faPlusCircle + \my@fa\faPlusSquareO + \my@fa\faProductHunt + \my@fa\faPuzzlePiece + \my@fa\faQuestion + \my@fa\faQuestionCircle + \my@fa\faQuestionCircleO + \my@fa\faQuoteLeft + \my@fa\faQuoteRight + \my@fa\faRefresh + \my@fa\faRemove + \my@fa\faReorder + \my@fa\faReply + \my@fa\faRocket + \my@fa\faRotateLeft + \my@fa\faRotateRight + \my@fa\faScissors + \my@fa\faSearch + \my@fa\faSearchMinus + \my@fa\faSearchPlus + \my@fa\faShare + \my@fa\faSignal + \my@fa\faSmileO + \my@fa\faSort + \my@fa\faSortNumericAsc + \my@fa\faSortNumericDesc + \my@fa\faSpaceShuttle + \my@fa\faSquareO + \my@fa\faStar + \my@fa\faStarHalfO + \my@fa\faStarO + \my@fa\faStepBackward + \my@fa\faStepForward + \my@fa\faStickyNoteO + \my@fa\faStopCircle + \my@fa\faStopCircleO + \my@fa\faStrikethrough + \my@fa\faSubscript + \my@fa\faSunO + \my@fa\faSuperscript + \my@fa\faTable + \my@fa\faTag + \my@fa\faTasks + \my@fa\faTextHeight + \my@fa\faTextWidth + \my@fa\faTh + \my@fa\faThLarge + \my@fa\faThList + \my@fa\faThumbTack + \my@fa\faThumbsODown + \my@fa\faThumbsOUp + \my@fa\faTimes + \my@fa\faTimesCircle + \my@fa\faTimesCircleO + \my@fa\faTint + \my@fa\faToggleDown + \my@fa\faToggleLeft + \my@fa\faToggleRight + \my@fa\faToggleUp + \my@fa\faTree + \my@fa\faTv + \my@fa\faUnderline + \my@fa\faUniversity + \my@fa\faUnsorted + \my@fa\faUser + \my@fa\faWarning + \my@fa\faWon + \my@fa\faWrench + \end{minipage} +} + +\defbeamertemplate{background texture}{line}{% + \begin{tikzpicture}[remember picture,overlay] + \draw[pattern=horizontal lines, pattern color=tcolor] + (current page.south east) rectangle (current page.north west); + \end{tikzpicture}% +} +\defbeamertemplate{background texture}{grid}{% + \begin{tikzpicture}[remember picture,overlay] + \draw[step=1mm,color=tcolor] + (current page.south east) grid (current page.north west); + \end{tikzpicture}% +} + +\gdef\my@background@title{% +} + +\gdef\my@background@section{% +} + +\gdef\my@background@subsection{% +} + +\newcommand{\my@fa@documentstart}{\hyperlinkdocumentstart{\rotatebox{-90}{\faStepBackward}}} +\newcommand{\my@fa@sectionstart}{\hyperlinksectionstart{\rotatebox{-90}{\faBackward}}} +\newcommand{\my@fa@subsectionstart}{\hyperlinksubsectionstart{\rotatebox{180}{\fontsize{9}{9}\selectfont\faSortDesc}}} +\newcommand{\my@fa@frameendprev}{\hyperlinkframeendprev{\faArrowUp}} +\newcommand{\my@fa@gotopage}{\Acrobatmenu{GoToPage}{\bfseries\insertframenumber}} +\newcommand{\my@fa@framestartnext}{\hyperlinkframestartnext{\faArrowDown}} +\newcommand{\my@fa@subsectionstartnext}{\hyperlinksubsectionstartnext{\fontsize{9}{9}\selectfont\faSortDesc}} +\newcommand{\my@fa@sectionstartnext}{\hyperlinksectionstartnext{\rotatebox{-90}{\faForward}}} +\newcommand{\my@fa@documentend}{\hyperlinkdocumentend{\rotatebox{-90}{\faStepForward}}} + +\gdef\my@background@normal{% + \begin{tikzpicture}[font=\fontsize{6}{6}\selectfont] + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \path[draw=dcolor,fill=fcolor,opacity=0.4] + (0.03\paperwidth,0.05\paperheight) rectangle (0.97\paperwidth,0.95\paperheight) + (0.7,0.9\paperheight) circle (.2) node{\my@fa@documentstart} + (0.7,0.8\paperheight) circle (.2) node{\my@fa@sectionstart} + (0.7,0.7\paperheight) circle (.2) node{\my@fa@subsectionstart} + (0.7,0.6\paperheight) circle (.2) node{\my@fa@frameendprev} + (0.7,0.5\paperheight) circle (.2) node{\my@fa@gotopage} + (0.7,0.4\paperheight) circle (.2) node{\my@fa@framestartnext} + (0.7,0.3\paperheight) circle (.2) node{\my@fa@subsectionstartnext} + (0.7,0.2\paperheight) circle (.2) node{\my@fa@sectionstartnext} + (0.7,0.1\paperheight) circle (.2) node{\my@fa@documentend}; + \end{tikzpicture} +} + +\let\my@background=\my@background@title + +\defbeamertemplate{background}{circle} +{% + \my@background + \global\let\my@background=\my@background@normal +} + +%% -------------------------- title page ----------------------------- + +\defbeamertemplate{title page}{circle}{% + \nointerlineskip\noindent + \hspace{-\beamer@leftmargin}% + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \draw[fill=fcolor,opacity=0.4] + (0,0.85\paperheight) rectangle (\paperwidth,0.95\paperheight) + (0.05\paperwidth,0.9\paperheight) circle (.25) + (0.95\paperwidth,0.9\paperheight) circle (.25); + \node[text width=0.8\paperwidth,text badly ragged] at (0.5\paperwidth,0.9\paperheight) {% + \begin{minipage}[c]{0.8\paperwidth} + \centering + \usebeamerfont{date}\usebeamercolor[fg]{date}\insertdate + \end{minipage} + }; + \draw[fill=fcolor,opacity=0.4] + (0,0.3\paperheight) rectangle (\paperwidth,0.8\paperheight) + (0.05\paperwidth,0.8\paperheight) circle (.25) + (0.05\paperwidth,0.7\paperheight) circle (.25) + (0.05\paperwidth,0.6\paperheight) circle (.25) + (0.05\paperwidth,0.5\paperheight) circle (.25) + (0.05\paperwidth,0.4\paperheight) circle (.25) + (0.05\paperwidth,0.3\paperheight) circle (.25) + (0.95\paperwidth,0.8\paperheight) circle (.25) + (0.95\paperwidth,0.7\paperheight) circle (.25) + (0.95\paperwidth,0.6\paperheight) circle (.25) + (0.95\paperwidth,0.5\paperheight) circle (.25) + (0.95\paperwidth,0.4\paperheight) circle (.25) + (0.95\paperwidth,0.3\paperheight) circle (.25); + \node[text width=0.8\paperwidth,text badly ragged] at (0.5\paperwidth,0.55\paperheight) {% + \begin{minipage}[c]{0.8\paperwidth} + \centering + \usebeamerfont{title}\usebeamercolor[fg]{title}\inserttitle + \ifx\insertsubtitle\@empty\else + \\\usebeamerfont{subtitle}\usebeamercolor[fg]{subtitle} + \insertsubtitle + \fi + \end{minipage} + }; + \draw[fill=fcolor,opacity=0.4] + (0,0.05\paperheight) rectangle (\paperwidth,0.25\paperheight) + (0.05\paperwidth,0.2\paperheight) circle (.25) + (0.05\paperwidth,0.1\paperheight) circle (.25) + (0.95\paperwidth,0.2\paperheight) circle (.25) + (0.95\paperwidth,0.1\paperheight) circle (.25); + \node[text width=0.8\paperwidth,text badly ragged] at (0.5\paperwidth,0.15\paperheight) {% + \begin{minipage}[c]{0.8\paperwidth} + \centering + \usebeamerfont{author}\usebeamercolor[fg]{author}\insertauthor\\ + \usebeamerfont{institute}\usebeamercolor[fg]{institute}\insertinstitute + \end{minipage} + }; + \end{tikzpicture} +} + +%% ----------------------- section and subsection -------------------- + +\def\sectionintocskip{0.5em} +\patchcmd{\beamer@sectionintoc}{\vskip1.5em}{\vskip\sectionintocskip}{}{} + +% create new template for section +\defbeamertemplate{section}{simple}{% + \insertsectionnumber.\hspace*{1ex}\insertsection% +} + +\defbeamertemplate{at begin section}{normal}{% + \global\let\my@background=\my@background@section + \frame{\sectionpage} +} +\defbeamertemplate{at begin section}{plain}{% + \global\let\my@background=\my@background@section + \frame[plain]{\sectionpage} +} +\AtBeginSection[]{\usebeamertemplate{at begin section}} + +\defbeamertemplate{section page}{simple}{ + \begin{beamercolorbox}[wd=\textwidth,center]{section title}% + \usebeamerfont{section title} + \usebeamertemplate{section}% + \end{beamercolorbox} +} + +\defbeamertemplate{section page}{circle}{% + \nointerlineskip\noindent + \hspace{-\beamer@leftmargin}% + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \draw[fill=fcolor,opacity=0.4] + (0,0.25\paperheight) rectangle (\paperwidth,0.75\paperheight) + (1,0.7\paperheight) circle (.25) + (1,0.6\paperheight) circle (.25) + (1,0.5\paperheight) circle (.25) + (1,0.4\paperheight) circle (.25) + (1,0.3\paperheight) circle (.25); + \node[text width=0.8\paperwidth,right,text badly ragged] at (0.15\paperwidth,0.5\paperheight) {% + \tableofcontents[sectionstyle=show/shaded,subsectionstyle=hide]% + }; + \end{tikzpicture} +} + +% create new template for subsection +\defbeamertemplate{subsection}{simple}{% + \insertsectionnumber.\insertsubsectionnumber\hspace*{2ex}\insertsubsection% +} + +\defbeamertemplate{at begin subsection}{normal}{% + \global\let\my@background=\my@background@subsection + \frame{\subsectionpage} +} +\defbeamertemplate{at begin subsection}{plain}{% + \global\let\my@background=\my@background@subsection + \frame[plain]{\subsectionpage} +} +\AtBeginSubsection[]{\usebeamertemplate{at begin subsection}} + +\defbeamertemplate{subsection page}{simple}{ + \begin{beamercolorbox}[wd=\textwidth,center]{subsection title}% + \usebeamerfont{subsection title}% + \usebeamertemplate{subsection}% + \end{beamercolorbox}% +} + +\defbeamertemplate{subsection page}{circle}{% + \nointerlineskip\noindent + \hspace{-\beamer@leftmargin}% + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \draw[fill=fcolor,opacity=0.4] + (0,0.25\paperheight) rectangle (\paperwidth,0.75\paperheight) + (1,0.7\paperheight) circle (.23) + (1,0.6\paperheight) circle (.23) + (1,0.5\paperheight) circle (.23) + (1,0.4\paperheight) circle (.23) + (1,0.3\paperheight) circle (.23); + \node[text width=0.8\paperwidth,right,text badly ragged] at (0.15\paperwidth,0.5\paperheight) {% + \begin{minipage}[c]{0.8\paperwidth} + \tableofcontents[sectionstyle=hide,subsectionstyle=show/shaded/hide]% + \end{minipage} + }; + \end{tikzpicture} +} + +%% ---------------------- headline and footline ---------------------- + +\defbeamertemplate{footline left}{title}{% + \insertshorttitle +} + +\defbeamertemplate{footline center}{author}{% + \insertshortauthor +} + +\defbeamertemplate{footline right}{institute}{% + \insertshortinstitute +} + +% make \footheight = 0pt +\patchcmd{\beamer@calculateheadfoot}{\advance\footheight by 4pt}{}{}{} + +\defbeamertemplate{footline}{simple}{% + \smash{\raisebox{1ex}{\begin{beamercolorbox}[wd=\paperwidth,ht=2.25ex,dp=1ex]{footline}% + \kern0.03\paperwidth + \usebeamerfont{footline}% + \usebeamertemplate{footline left}% + \hspace{0pt plus 1 filll}% + \usebeamertemplate{footline center}% + \hspace{0pt plus 1 filll}% + \usebeamertemplate{footline right}% + \kern0.03\paperwidth + \end{beamercolorbox}}}% +} + +%% ------------------------- frame title ----------------------------- + +\defbeamertemplate{frametitle}{gauss}{% + \nointerlineskip\vskip0.05\paperheight\vskip0.4pt% + \usebeamerfont{frametitle}\usebeamercolor[fg]{frametitle}% + \rule[-1ex]{0pt}{3.25ex}\insertframetitle + \ifx\insertframesubtitle\@empty\else\hfill + \usebeamerfont{framesubtitle}\usebeamercolor[fg]{framesubtitle}% + \insertframesubtitle + \fi + \par\nointerlineskip\usebeamercolor[fg]{separator line}\rule{\textwidth}{0.4pt}% +} + +%% ------------------- block and theorem ----------------------------- + +\newcommand{\my@block@begin}[1][]{% + \par\medskip + \begin{beamercolorbox}[colsep=0.75ex]{block title#1} + \usebeamerfont*{block title#1}\insertblocktitle% + \end{beamercolorbox}% + {\parskip0pt\par}% + \nointerlineskip + \usebeamerfont{block body#1}% + \begin{beamercolorbox}[colsep=.75ex,vmode]{block body#1}% + \ifbeamercolorempty[bg]{block body#1}{\vskip-.25ex}{\vskip-.75ex}\vbox{}% +} + +\newcommand{\my@block@end}{\end{beamercolorbox}\smallskip} + +\defbeamertemplate{block begin}{gauss}{\my@block@begin} + +\defbeamertemplate{block end}{gauss}{\my@block@end} + +\defbeamertemplate{block example begin}{gauss}{\my@block@begin[ example]} + +\defbeamertemplate{block example end}{gauss}{\my@block@end} + +\defbeamertemplate{block alerted begin}{gauss}{\my@block@begin[ alerted]} + +\defbeamertemplate{block alerted end}{gauss}{\my@block@end} + +%% --------------------------- font theme ---------------------------- + +\setbeamerfont{title}{size=\LARGE} +\setbeamerfont{subtitle}{size=\large} +\setbeamerfont{author}{size=\large} +\setbeamerfont{institute}{size=\normalsize} +\setbeamerfont{date}{size=\large} +\setbeamerfont{section in toc}{size=\large} +\setbeamerfont{subsection in toc}{size=\large} +\setbeamerfont{frametitle}{size=\large} +\setbeamerfont{block title}{size=\normalsize} + +\usefonttheme{professionalfonts} +%\usepackage{arev} + +\setlength{\parskip}{5pt plus 1pt minus 1pt} + +%% ---------------------------- color theme -------------------------- + +% always use rgb colors in pdf files +\substitutecolormodel{hsb}{rgb} + +\definecolor{red69}{Hsb}{0,0.6,0.9} +\definecolor{red4x}{Hsb}{0,0.4,1.0} +\definecolor{yellow69}{Hsb}{60,0.6,0.9} +\definecolor{yellowxx}{Hsb}{60,1.0,1.0} +\definecolor{green33}{Hsb}{120,0.3,0.3} +\definecolor{green39}{Hsb}{120,0.3,0.9} +\definecolor{green69}{Hsb}{120,0.6,0.9} +\definecolor{cyan69}{Hsb}{180,0.6,0.9} +\definecolor{magenta69}{Hsb}{300,0.6,0.9} +\definecolor{magenta4x}{Hsb}{300,0.4,1.0} + +\colorlet{text1}{white} +\colorlet{back1}{green33} +\colorlet{accent1}{yellow69} +\colorlet{accent2}{green69} +\colorlet{accent3}{red4x} +\colorlet{accent4}{cyan69} +\colorlet{accent5}{magenta4x} +\colorlet{filler1}{accent1!50!back1} +\colorlet{filler2}{accent2!50!back1} +\colorlet{filler3}{accent3!50!back1} +\colorlet{filler4}{accent4!50!back1} +\colorlet{filler5}{accent5!50!back1} +\colorlet{tcolor}{green33!95!white} +\colorlet{dcolor}{white} +\colorlet{fcolor}{gray} + +\setbeamercolor{background canvas}{bg=green33,fg=white} +\setbeamercolor{normal text}{bg=green33,fg=white} +\setbeamercolor{structure}{fg=yellowxx} +\setbeamercolor{local structure}{fg=accent2} +\setbeamercolor{footline}{bg=,fg=white} +\setbeamercolor{title}{use=structure,fg=structure.fg} +\setbeamercolor{subtitle}{parent=normal text} +\setbeamercolor{author}{fg=white} +\setbeamercolor{institute}{fg=white} +\setbeamercolor{date}{fg=white} +\setbeamercolor{section in toc}{parent=title} +\setbeamercolor{subsection in toc}{parent=title} +\setbeamercolor{section in toc shaded}{parent=normal text} +\setbeamercolor{subsection in toc shaded}{parent=normal text} +\setbeamercolor{frametitle}{parent=title} +\setbeamercolor{framesubtitle}{parent=subtitle} +\setbeamercolor{separator line}{fg=white} +\setbeamercolor{block title}{fg=accent1,bg=darkgray} +\setbeamercolor{block body}{bg=gray} +\setbeamercolor{block title example}{parent=block title,fg=accent2} +\setbeamercolor{block body example}{parent=block body} +\setbeamercolor{block title alerted}{parent=block title,fg=accent3} +\setbeamercolor{block body alerted}{parent=block body} + +%% ------------------------ select templates ------------------------- + +\setbeamertemplate{background canvas}[awesome] +\setbeamertemplate{background texture}[awesome] +\setbeamertemplate{background}[circle] +\setbeamertemplate{footline}[simple] +\setbeamertemplate{footline left}[title] +\setbeamertemplate{footline center}[author] +\setbeamertemplate{footline right}[institute] +\setbeamertemplate{title page}[circle] +\setbeamertemplate{at begin section}[plain] +\setbeamertemplate{at begin subsection}[plain] +\setbeamertemplate{section page}[circle] +\setbeamertemplate{subsection page}[circle] +\setbeamertemplate{block begin}[gauss] +\setbeamertemplate{block end}[gauss] +\setbeamertemplate{block example begin}[gauss] +\setbeamertemplate{block example end}[gauss] +\setbeamertemplate{block alerted begin}[gauss] +\setbeamertemplate{block alerted end}[gauss] +\setbeamertemplate{theorem begin}[default] +\setbeamertemplate{theorem end}[default] +\setbeamertemplate{proof begin}[default] +\setbeamertemplate{proof end}[default] +\setbeamertemplate{frametitle}[gauss] +\setbeamertemplate{navigation symbols}{} +\setbeamertemplate{section}[simple] +\setbeamertemplate{subsection}[simple] +\setbeamertemplate{section in toc}[sections numbered] +\setbeamertemplate{subsection in toc}[subsections numbered] +\setbeamertemplate{section in toc shaded}[default][100] +\setbeamertemplate{subsection in toc shaded}[default][100] +\setbeamertemplate{itemize items}[default] +\setbeamertemplate{enumerate items}[default] + +%% ----------------------- handout mode ------------------------------ + +\mode{ + \setbeamertemplate{background canvas}{} + \setbeamertemplate{background texture}{} + \colorlet{accent1}{accent1!50!black} + \colorlet{accent2}{accent2!50!black} + \colorlet{accent3}{accent3!50!black} + \colorlet{accent4}{accent4!50!black} + \colorlet{accent5}{accent5!50!black} + \colorlet{dcolor}{darkgray} + \colorlet{fcolor}{white} + \setbeamercolor{normal text}{fg=black, bg=white} + \setbeamercolor{title}{fg=teal} + \setbeamercolor{subtitle}{fg=gray} + \setbeamercolor{author}{fg=black} + \setbeamercolor{institute}{fg=gray} + \setbeamercolor{date}{fg=black} + \setbeamercolor{section in toc}{fg=teal!90!gray} + \setbeamercolor{subsection in toc}{fg=teal!80!gray} + \setbeamercolor{section in toc shaded}{fg=lightgray} + \setbeamercolor{subsection in toc shaded}{fg=lightgray} + \setbeamercolor{frametitle}{fg=teal!70!gray,bg=white} + \setbeamercolor{separator line}{fg=darkgray} + \setbeamercolor{footline}{bg=white,fg=black} + \setbeamercolor{block title}{bg=} + \setbeamercolor{block body}{bg=} +} + +\mode + + +\makeatother diff --git a/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/gauss/demo-gauss.pdf b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/gauss/demo-gauss.pdf new file mode 100644 index 0000000000..cabda048fc Binary files /dev/null and b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/gauss/demo-gauss.pdf differ diff --git a/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/gauss/demo-gauss.tex b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/gauss/demo-gauss.tex new file mode 100644 index 0000000000..25db3c6e76 --- /dev/null +++ b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/gauss/demo-gauss.tex @@ -0,0 +1,175 @@ +% -*- coding: utf-8 -*- + +\documentclass[14pt,xcolor={rgb}]{beamer} + +\usetheme{gauss} + +% remove these two lines to hide footlines in (sub)section pages +\setbeamertemplate{at begin section}[normal] +\setbeamertemplate{at begin subsection}[normal] + +\usepackage{arev} + +\begin{document} + +\title{Beamer Theme Gauss} +\author{Author Name} +\institute{Institute Name} + +\begin{frame}[plain] +\titlepage +\end{frame} + +\section{Section One} + +\subsection{Subsection One} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Two} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Three} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\section{Section Two} + +\subsection{Subsection One} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Two} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Three} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\section{Section Three} + +\subsection{Subsection One} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Two} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Three} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\end{document} diff --git a/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/lagrange/beamerthemelagrange.sty b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/lagrange/beamerthemelagrange.sty new file mode 100644 index 0000000000..41440e174f --- /dev/null +++ b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/lagrange/beamerthemelagrange.sty @@ -0,0 +1,379 @@ +% -*- coding: utf-8 -*- +% ---------------------------------------------------------------------------- +% Author: Jianrui Lyu +% Website: https://github.com/lvjr/concrete +% License: The LaTeX Project Public License 1.3c +% ---------------------------------------------------------------------------- + +\ProvidesPackage{beamerthemelagrange}[2024-01-19 v2024A Beamer Theme Lagrange] + +\makeatletter + +% compatible with old versions of beamer +\providecommand{\beamer@endinputifotherversion}[1]{} + +\RequirePackage{tikz,etoolbox,manfnt} +\usetikzlibrary{calc} + +\mode + +\@ifclasswith{beamer}{aspectratio=169} + {\setbeamersize{text margin left=5mm,text margin right=5mm}} + {\setbeamersize{text margin left=6mm,text margin right=6mm}} + +%% ----------------- background canvas and background ---------------- + +\newcommand{\my@background@canvas@vector@narrow}{% + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \draw[line width=4mm, rounded corners=4mm, corner1, + shading=axis,top color=corner2!80,bottom color=corner2!80,middle color=white,shading angle=-45] + (0,0) rectangle (\paperwidth,\paperheight); + \draw[line width=3.5mm, rounded corners=3.8mm, corner2] + (0,0) rectangle (\paperwidth,\paperheight); + \draw[draw=lightgray!50, step=4mm, xshift=6mm, yshift=6mm, opacity=0.5] + (0,0) grid ($(\paperwidth,\paperheight)-(12mm,12mm)$); + \end{tikzpicture} +} + +\newcommand{\my@background@canvas@vector@wide}{% + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \draw[line width=4mm, rounded corners=4mm, corner1, + shading=axis,top color=corner2!80,bottom color=corner2!80,middle color=white,shading angle=-45] + (0,0) rectangle (\paperwidth,\paperheight); + \draw[line width=3.5mm, rounded corners=3.8mm, corner2] + (0,0) rectangle (\paperwidth,\paperheight); + \draw[draw=lightgray!50, step=5mm, xshift=5mm, yshift=5mm, opacity=0.5] + (0,0) grid ($(\paperwidth,\paperheight)-(10mm,10mm)$); + \end{tikzpicture} +} + +\newcommand{\my@background@canvas@raster@narrow}{% + \includegraphics[width=\paperwidth,height=\paperheight]{backgroundn1}% + \includegraphics[width=\paperwidth,height=\paperheight]{backgroundn2}% +} + +\newcommand{\my@background@canvas@raster@wide}{% + \includegraphics[width=\paperwidth,height=\paperheight]{backgroundw1}% + \includegraphics[width=\paperwidth,height=\paperheight]{backgroundw2}% +} + +\@ifclasswith{beamer}{aspectratio=169}{% + \let\my@background@canvas@vector=\my@background@canvas@vector@wide + \let\my@background@canvas@raster=\my@background@canvas@raster@wide +}{% + \let\my@background@canvas@vector=\my@background@canvas@vector@narrow + \let\my@background@canvas@raster=\my@background@canvas@raster@narrow +} + +\defbeamertemplate{background canvas}{vector}{% + \my@background@canvas@vector +} + +\defbeamertemplate{background canvas}{raster}{% + \my@background@canvas@raster +} + +\defbeamertemplate{background}{logo}[1][height=0.6\paperheight]{% + \parbox[c][\paperheight][c]{\paperwidth}{\centering\includegraphics[#1]{logo}}% +} + +\@ifclasswith{beamer}{aspectratio=169}{% + \defbeamertemplate{background}{line}[1][\relax]{% + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \draw[draw=accent2!50, #1, xshift=5mm, yshift=5mm, opacity=0.5] + (0,0) grid ($(\paperwidth,\paperheight)-(10mm,10mm)$); + %\insertbackgroundmark + \end{tikzpicture}% + } +}{ + \defbeamertemplate{background}{line}[1][\relax]{% + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \draw[draw=accent2!50, #1, xshift=6mm, yshift=6mm, opacity=0.5] + (0,0) grid ($(\paperwidth,\paperheight)-(12mm,12mm)$); + %\insertbackgroundmark + \end{tikzpicture}% + } +} + +\@ifclasswith{beamer}{aspectratio=169}{% + \defbeamertemplate{background}{lattice}[1][1mm]{% + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \draw[draw=accent3!50, step=2.5mm, xshift=5mm, yshift=5mm, opacity=0.5] + (0,0) grid ($(\paperwidth,\paperheight)-(10mm,10mm)$); + %\insertbackgroundmark + \end{tikzpicture}% + } +}{ + \defbeamertemplate{background}{lattice}[1][1mm]{% + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \draw[draw=accent3!50, step=2mm, xshift=6mm, yshift=6mm, opacity=0.5] + (0,0) grid ($(\paperwidth,\paperheight)-(12mm,12mm)$); + %\insertbackgroundmark + \end{tikzpicture}% + } +} + +%% -------------------------- title page ----------------------------- + +% add \occasion command +\newcommand{\occasion}[1]{\def\insertoccasion{#1}} +\occasion{} + +\newlength{\my@title@split@left} +\newlength{\my@title@split@right} +\@ifclasswith{beamer}{aspectratio=169}{ + \setlength{\my@title@split@left}{0.618\textwidth} + \setlength{\my@title@split@right}{0.382\textwidth} +}{ + \setlength{\my@title@split@left}{0.54\textwidth} + \setlength{\my@title@split@right}{0.46\textwidth} +} + + +\defbeamertemplate{title page}{split}{% + \begin{minipage}[c][0.9\textheight]{\my@title@split@left} + \linespread{1}\raggedright + \vfill + \ifx\insertoccasion\@empty\else + \usebeamerfont*{occasion}\usebeamercolor[fg]{occasion}\insertoccasion\\[3pt]% + \fi + \usebeamerfont*{date}\usebeamercolor[fg]{date}\insertdate + \vspace{4pt}{\color{gray}\hrule} + \vfill\vfill + \usebeamerfont*{title}\usebeamercolor[fg]{title}\inserttitle + \ifx\insertsubtitle\@empty\else + \\[5pt]\usebeamerfont*{subtitle}\usebeamercolor[fg]{subtitle}\insertsubtitle + \fi% + \vfill\vfill{\color{gray}\hrule}\vspace{4pt} + \usebeamerfont*{author}\usebeamercolor[fg]{author}\insertauthor\\[3pt]% + \usebeamerfont*{institute}\usebeamercolor[fg]{institute}\insertinstitute + \vfill\vfill + \end{minipage}% + \begin{minipage}[c][0.9\textheight]{\my@title@split@right} + \hfill + \IfFileExists{titlepage.png}{% + \includegraphics[height=0.9\textheight]{titlepage}% + }{% + \begin{tikzpicture}[draw=gray,text=darkgray] + \draw[use as bounding box] (0,0) rectangle (0.5\paperheight,0.7\paperheight); + \draw (0,0) -- (0.5\paperheight,0.7\paperheight); + \draw (0,0.7\paperheight) -- (0.5\paperheight,0); + \node at (0.25\paperheight,0.35\paperheight) {titlepage.png}; + \end{tikzpicture}% + }% + \end{minipage} +} + +%% ----------------------- section and subsection -------------------- + +\def\sectionintochideskip{10pt} +\def\sectionintocshowskip{6pt} +\patchcmd{\beamer@sectionintoc}{\vskip1.5em}{\vskip\sectionintochideskip}{}{} +\patchcmd{\beamer@sectionintoc}{\vfill}{\vskip\sectionintocshowskip}{}{} + +\AtBeginSection[]{% + \begin{frame} + \tableofcontents[sectionstyle=show/shaded,subsectionstyle=hide] + \end{frame} +} + +\defbeamertemplate{section in toc}{numbered}{% + \leavevmode\leftskip=8mm\inserttocsectionnumber.\hspace{0.6em}\inserttocsection\par +} +\defbeamertemplate{section in toc}{dbend}{% + \leavevmode\leftskip=8mm{\color{accent3}\tiny\textdbend\scriptsize\inserttocsectionnumber}% + \hspace{0.6em}\inserttocsection\par +} + +\AtBeginSubsection[]{% + \begin{frame} + \tableofcontents[sectionstyle=show/hide,subsectionstyle=show/shaded/hide] + \end{frame} +} + +\defbeamertemplate{subsection in toc}{numbered}{% + \vspace{6pt}\leavevmode\leftskip=12mm\inserttocsectionnumber.\inserttocsubsectionnumber + \hspace{0.8em}\inserttocsubsection\par +} +\defbeamertemplate{subsection in toc}{dbend}{% + \vspace{6pt}\leavevmode\leftskip=12mm{\color{accent3}\tiny\textdbend + \scriptsize\inserttocsectionnumber.\inserttocsubsectionnumber}% + \hspace{0.8em}\inserttocsubsection\par +} + +%% ---------------- headline, footline and textheight ---------------- + +% make \textheight = \paperheight - 12mm +\patchcmd{\beamer@calculateheadfoot}{\advance\footheight by 4pt}{}{}{} + +% modify plain frames +\def\beamer@frametemplate@plain{} + +\@ifclasswith{beamer}{aspectratio=169}{ + \setbeamertemplate{headline}{\vspace{5mm}} + \setbeamertemplate{footline}{\vspace{5mm}} +}{ + \setbeamertemplate{headline}{\vspace{6mm}} + \setbeamertemplate{footline}{\vspace{6mm}} +} + +% patch frames with t option +\patchcmd{\KV@beamerframe@t} + {\beamer@frametopskip=.2cm plus .5\paperheight} + {\beamer@frametopskip=0mm} + {}{} + +%% ------------------------- frame title ----------------------------- + +\defbeamertemplate{frametitle}{simple}[1][]{% + \nointerlineskip + \begin{beamercolorbox}[wd=\paperwidth,sep=0pt,leftskip=\beamer@leftmargin,% + rightskip=\beamer@rightmargin,#1]{frametitle} + \usebeamerfont{frametitle}% + \rule[-0.45em]{0pt}{1.5em}\insertframetitle\usebeamertemplate{frame number}% + \rule[-0.45em]{0pt}{1.5em}\par + \end{beamercolorbox} +} + +\defbeamertemplate{frame number}{simple}{% + \usebeamercolor{normal text}% + \hfill{\color{fg!60!bg}\insertframenumber}% +} + +%% ------------------- block and theorem ----------------------------- + +% allow it to be modified by user +\def\myinserttheoremaddition{\inserttheoremaddition} + +\defbeamertemplate{theorem begin}{simple} +{% + \upshape%\bfseries\inserttheoremheadfont + {\usebeamercolor[fg]{theoremname}% + \inserttheoremname\inserttheoremnumber + \ifx\inserttheoremaddition\@empty\else + \ \usebeamercolor[fg]{local structure}(\myinserttheoremaddition)% + \fi% + %\inserttheorempunctuation + }% + \quad\normalfont +} +\defbeamertemplate{theorem end}{simple}{\par} + +\defbeamertemplate{proof begin}{simple} +{% + %\bfseries + {\usebeamercolor[fg]{proofname}\insertproofname}% + \quad\normalfont +} +\defbeamertemplate{proof end}{simple}{\par} + +%% --------------------------- font theme ---------------------------- + +\setbeamerfont{title}{size=\LARGE,series=\bfseries,family=\rmfamily} +\setbeamerfont{subtitle}{size=\large} +\setbeamerfont{occasion}{size=\normalsize} +\setbeamerfont{date}{size=\normalsize} +\setbeamerfont{author}{size=\normalsize} +\setbeamerfont{institute}{size=\normalsize} +\setbeamerfont{section in toc}{size=\Large} +\setbeamerfont{subsection in toc}{size=\large} +\setbeamerfont{frametitle}{size=\large} +\setbeamerfont{block title}{size=\normalsize} + +\usefonttheme{professionalfonts} +%\usepackage{arev} + +%% ---------------------------- color theme -------------------------- + +% always use rgb colors in pdf files +\substitutecolormodel{hsb}{rgb} + +\definecolor{redx5}{Hsb}{0,1,0.5} +\definecolor{yellow86}{Hsb}{60,0.8,0.6} +\definecolor{greenx3}{Hsb}{120,1,0.3} +\definecolor{azurexx}{Hsb}{210,1,0.5} +\definecolor{blue29}{Hsb}{240,0.2,0.9} +\definecolor{magenta88}{Hsb}{300,0.8,0.8} + +\colorlet{text1}{black} +\colorlet{back1}{white} +\colorlet{accent1}{azurexx} +\colorlet{accent2}{greenx3} +\colorlet{accent3}{redx5} +\colorlet{accent4}{yellow86} +\colorlet{accent5}{magenta88} +\colorlet{filler1}{accent1!40!back1} +\colorlet{filler2}{accent2!40!back1} +\colorlet{filler3}{accent3!40!back1} +\colorlet{filler4}{accent4!40!back1} +\colorlet{filler5}{accent5!40!back1} +\colorlet{gray1}{black!20} +\colorlet{gray2}{black!35} +\colorlet{gray3}{black!50} +\colorlet{gray4}{black!65} +\colorlet{gray5}{black!80} +\colorlet{corner1}{white} +\colorlet{corner2}{blue29} + +\setbeamercolor{normal text}{bg=white,fg=black} +\setbeamercolor{structure}{fg=accent3} +\setbeamercolor{local structure}{fg=accent2} +\setbeamercolor{footline}{bg=,fg=black} +\setbeamercolor{title}{use=structure,fg=structure.fg} +\setbeamercolor{subtitle}{fg=black} +\setbeamercolor{occasion}{fg=accent1} +\setbeamercolor{date}{fg=black} +\setbeamercolor{author}{fg=accent2} +\setbeamercolor{institute}{fg=black} +\setbeamercolor{section in toc}{parent=occasion} +\setbeamercolor{subsection in toc}{parent=author} +\setbeamercolor{section in toc shaded}{parent=normal text} +\setbeamercolor{subsection in toc shaded}{parent=normal text} +\setbeamercolor{frametitle}{parent=title} +\setbeamercolor{theoremname}{parent=occasion} +\setbeamercolor{proofname}{parent=occasion} +\setbeamercolor{block title}{fg=white,bg=accent1} +\setbeamercolor{block body}{bg=lightgray} +\setbeamercolor{block title example}{fg=white,bg=accent2} +\setbeamercolor{block body example}{bg=lightgray} +\setbeamercolor{block title alerted}{fg=white,bg=accent3} +\setbeamercolor{block body alerted}{bg=lightgray} + +%% ------------------------ select templates ------------------------- + +\setbeamertemplate{background canvas}[vector] +\setbeamertemplate{title page}[split] +\setbeamertemplate{theorem begin}[simple] +\setbeamertemplate{theorem end}[simple] +\setbeamertemplate{proof begin}[simple] +\setbeamertemplate{proof end}[simple] +\setbeamertemplate{frametitle}[simple] +\setbeamertemplate{frame number}[simple] +\setbeamertemplate{navigation symbols}{} +\setbeamertemplate{section in toc}[dbend] +\setbeamertemplate{subsection in toc}[dbend] +\setbeamertemplate{subsubsection in toc}{} +\setbeamertemplate{section in toc shaded}[default][100] +\setbeamertemplate{subsection in toc shaded}[default][100] +\setbeamertemplate{itemize items}[default] +\setbeamertemplate{enumerate items}[default] + +%% ----------------------- handout mode ------------------------------ + +\mode{ + \colorlet{corner1}{lightgray} + \colorlet{corner2}{white} + \setbeamercolor{section in toc shaded}{fg=lightgray} + \setbeamercolor{subsection in toc shaded}{fg=lightgray} +} + +\mode + + +\makeatother diff --git a/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/lagrange/demo-lagrange.pdf b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/lagrange/demo-lagrange.pdf new file mode 100644 index 0000000000..46628de736 Binary files /dev/null and b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/lagrange/demo-lagrange.pdf differ diff --git a/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/lagrange/demo-lagrange.tex b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/lagrange/demo-lagrange.tex new file mode 100644 index 0000000000..59f793bcc4 --- /dev/null +++ b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/lagrange/demo-lagrange.tex @@ -0,0 +1,71 @@ +% -*- coding: utf-8 -*- + +\documentclass[11pt,xcolor={rgb}]{beamer} + +\usetheme{lagrange} + +\usepackage{arev} + +\usepackage{listings} + +\lstset{ + basicstyle=\ttfamily\color{accent2}, + frame=single, +} + +\begin{document} + +\title{Beamer Theme Lagrange} +\author{Author Name} +\institute{Institute Name} +\occasion{Some Conference} + +\begin{frame}[plain] +\titlepage +\end{frame} + +\section{Introduction} + +\begin{frame} +\frametitle{Introduction} +Beamer theme Lagrange is inspired by these two themes +\begin{itemize} + \item Pdfscreen theme Overlay4 + \item Keynote theme Drafting +\end{itemize} +\end{frame} + +\section{First Example} + +\begin{frame}[fragile=singleslide] +\frametitle{First Example} +The following is a simple example +\begin{lstlisting} +\documentclass[xcolor={rgb}]{beamer} + +\usetheme{lagrange} + +\begin{document} + +\begin{frame} + Hello Beamer! +\end{frame} + +\end{document} +\end{lstlisting} +Note that you \textcolor{accent3}{need to} use \lstinline!xcolor={rgb}! option for this theme. +\end{frame} + +\section{Customization} + +\begin{frame}[fragile=singleslide] +\frametitle{Customization} +To change vertical spaces between lines in TOC pages, +you could redefine these two commands: +\begin{lstlisting} +\renewcommand{\sectionintochideskip}{10pt} +\renewcommand{\sectionintocshowskip}{6pt} +\end{lstlisting} +\end{frame} + +\end{document} diff --git a/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/mobius/beamerthememobius.sty b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/mobius/beamerthememobius.sty new file mode 100644 index 0000000000..7faf5b36c5 --- /dev/null +++ b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/mobius/beamerthememobius.sty @@ -0,0 +1,291 @@ +% -*- coding: utf-8 -*- +% ---------------------------------------------------------------------------- +% Author: Jianrui Lyu +% Website: https://github.com/lvjr/concrete +% License: The LaTeX Project Public License 1.3c +% ---------------------------------------------------------------------------- + +\ProvidesPackage{beamerthememobius}[2024-01-19 v2024A Beamer Theme Mobius] + +\makeatletter + +% compatible with old versions of beamer +\providecommand{\beamer@endinputifotherversion}[1]{} + +\RequirePackage{tikz,adjustbox} +\usetikzlibrary{decorations.pathmorphing,calc} + +\mode + +\setbeamersize{text margin left=8mm,text margin right=8mm} + +%% ----------------- background canvas and background ---------------- + +\defbeamertemplate{background}{mobius}{% + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \foreach \i in {0,16,...,128} \foreach \j in {0,16,...,96} { + \path[draw=purple94!90!black] (\i mm,\j mm) circle (16mm); + } + \end{tikzpicture}% +} + +% need "text badly ragged" option for correct space skips +% see http://tex.stackexchange.com/a/132748/8956 +\gdef\my@background@title{% + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \path[fill=fcolor,opacity=0.4] + (0,0.3\paperheight) rectangle (\paperwidth,0.8\paperheight); + \path[draw=dcolor,thick] (0,0.3\paperheight) -- (\paperwidth,0.3\paperheight) + (0,0.8\paperheight) -- (\paperwidth,0.8\paperheight); + \node[text width=0.9\paperwidth,text badly ragged] at (0.5\paperwidth,0.55\paperheight) {% + \begin{minipage}[c][0.6\paperheight]{0.9\paperwidth} + \centering + \usebeamerfont{title}\usebeamercolor[fg]{title}\inserttitle + \ifx\insertsubtitle\@empty\else + \\[5pt]\usebeamerfont{subtitle}\usebeamercolor[fg]{subtitle} + \insertsubtitle + \fi + \end{minipage} + }; + \path[fill=fcolor,draw=dcolor,thick,opacity=0.4] + (0.15\paperwidth,0) -- (0.5\paperwidth,0.35\paperheight) -- (0.85\paperwidth,0); + \node[text width=0.9\paperwidth,text badly ragged] at (0.5\paperwidth,0.15\paperheight) {% + \begin{minipage}[c][0.25\paperheight]{0.9\paperwidth} + \centering + \usebeamerfont{author}\usebeamercolor[fg]{author}\insertauthor\\[3pt] + \usebeamerfont{institute}\usebeamercolor[fg]{institute}\insertinstitute\\[3pt] + \usebeamerfont{date}\usebeamercolor[fg]{date}\insertdate + \end{minipage} + }; + \end{tikzpicture} +} + +\gdef\my@background@section{% + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \path[fill=fcolor,thick,opacity=0.4] + (0,0.35\paperheight) rectangle (\paperwidth,0.75\paperheight); + \path[draw=dcolor,thick] (0,0.35\paperheight) -- (\paperwidth,0.35\paperheight) + (0,0.75\paperheight) -- (\paperwidth,0.75\paperheight); + \node[text width=\textwidth,text badly ragged] at (0.5\paperwidth,0.55\paperheight) {% + \begin{minipage}[c]{\textwidth} + \usebeamertemplate{section page content}% + \end{minipage} + }; + \end{tikzpicture} +} + +%% -------------------------- title page ----------------------------- + +\defbeamertemplate{title page}{mobius}{% + \nointerlineskip + \begin{adjustbox}{width=\paperwidth,center}% + \my@background@title + \end{adjustbox}% +} + +%% ----------------------- section and subsection -------------------- + +% create new template for section +\defbeamertemplate{section}{simple}{% + \insertsectionnumber.\hspace*{1ex}\insertsection% +} + +\AtBeginSection[]{\begin{frame}[plain]{\sectionpage}\end{frame}} + +\defbeamertemplate{section page}{mobius}{% + \nointerlineskip + \begin{adjustbox}{width=\paperwidth,center}% + \my@background@section + \end{adjustbox}% +} + +\defbeamertemplate{section page content}{simple}{ + \begin{beamercolorbox}[wd=\textwidth,center]{section title}% + \usebeamerfont{section title} + \usebeamertemplate{section}% + \end{beamercolorbox} +} + +%% ---------------------- headline and footline ---------------------- + +\newif\ifmy@subsection \my@subsectionfalse + +\newcommand{\my@sectionentry}[5]{% + \hfill + \ifnum\c@section=#1% + \usebeamercolor{footline highlight}% + \else% + \usebeamercolor{footline}% + \fi% + \hyperlink{Navigation#3}{% + \colorbox{bg}{% + \hspace{0.2em}\rule[-1ex]{0pt}{3.25ex}\color{fg}#2\hspace{0.2em}% + }% + }% + \let\slideentry=\my@slideentry +} + +\newcommand{\my@subsectionentry}[5]{\my@subsectiontrue} + +\newcommand{\my@slideentry}[6]{% + \ifmy@subsection + \usebeamercolor{footline}% + \def\my@box{$\circ$}% + \ifnum\c@section=#1% + \usebeamercolor{footline highlight}% + \ifnum\c@subsection=#2% + \def\my@box{$\bullet$}% + \fi + \fi + \beamer@link(#4){% + \colorbox{bg}{% + \rule[-1ex]{0pt}{3.25ex}\hspace{0.1em}\color{fg}\my@box\hspace{0.1em}% + }% + }% + \my@subsectionfalse + \fi +} + +\defbeamertemplate{footline}{mobius}{% + % default height is 0.4pt, which is ignored by adobe reader, so we increase it by 0.2pt + {\color{dcolor}\hrule height 0.6pt}% + %\pgfsetfillopacity{0.6}% + \begin{beamercolorbox}[wd=\paperwidth,ht=2.25ex,dp=1ex]{footline}% + \usebeamerfont{footline}% + \kern\beamer@leftmargin + \setlength{\fboxsep}{0pt}% + \let\sectionentry=\my@sectionentry + \let\beamer@subsectionentry=\my@subsectionentry + \hskip 0pt plus -1fill\dohead + \hskip 0pt plus 9fill\relax + \Acrobatmenu{GoToPage}{\insertframenumber{}/\inserttotalframenumber}% + \kern\beamer@rightmargin + \end{beamercolorbox}% +} + +%% ------------------------- frame title ----------------------------- + +\defbeamertemplate{frametitle}{simple}[1][]{% + \nointerlineskip + \begin{beamercolorbox}[wd=\paperwidth,sep=0pt,leftskip=\beamer@leftmargin,% + rightskip=\beamer@rightmargin,#1]{frametitle} + \usebeamerfont{frametitle}% + \rule[-3.6mm]{0pt}{12mm}\insertframetitle\rule[-3.6mm]{0pt}{12mm}\par + \end{beamercolorbox} +} + +%% --------------------------- font theme ---------------------------- + +\setbeamerfont{title}{size=\LARGE} +\setbeamerfont{subtitle}{size=\large} +\setbeamerfont{author}{size=\large} +\setbeamerfont{institute}{size=\normalsize} +\setbeamerfont{date}{size=\normalsize} +\setbeamerfont{section in toc}{size=\Large} +\setbeamerfont{footline}{size=\scriptsize} +\setbeamerfont{frametitle}{size=\large} +\setbeamerfont{block title}{size=\normalsize} + +\usefonttheme{professionalfonts} +%\usepackage{arev} + +%\setlength{\parskip}{5pt plus 1pt minus 1pt} + +%% ---------------------------- color theme -------------------------- + +% always use rgb colors in pdf files +\substitutecolormodel{hsb}{rgb} + +\definecolor{red69}{Hsb}{0,0.6,0.9} +\definecolor{yellow69}{Hsb}{60,0.6,0.9} +\definecolor{yellow99}{Hsb}{60,0.9,0.9} +\definecolor{green69}{Hsb}{120,0.6,0.9} +\definecolor{azure53}{Hsb}{210,0.5,0.3} +\definecolor{blue77}{Hsb}{240,0.7,0.7} +\definecolor{blue88}{Hsb}{240,0.8,0.8} +\definecolor{blue97}{Hsb}{240,0.9,0.7} +\definecolor{purple94}{Hsb}{330,0.9,0.4} +\definecolor{purple63}{Hsb}{320,0.6,0.3} + +\colorlet{text1}{white} +\colorlet{back1}{blue77} +\colorlet{accent1}{yellow69} +\colorlet{accent2}{green69} +\colorlet{accent3}{black} +\colorlet{filler1}{accent1!40!back1} +\colorlet{filler2}{accent2!40!back1} +\colorlet{filler3}{accent3!40!back1} +\colorlet{dcolor}{white} +\colorlet{fcolor}{azure53} + +\setbeamercolor{normal text}{bg=purple94,fg=white} +\setbeamercolor{structure}{fg=yellow99} +\setbeamercolor{local structure}{fg=accent2} +\setbeamercolor{footline}{bg=purple63,fg=white} +\setbeamercolor{footline highlight}{parent=footline,bg=filler2} +\setbeamercolor{navigation symbols}{bg=purple94} +\setbeamercolor{navigation symbols dimmed}{fg=purple94} +\setbeamercolor{title}{use=structure,fg=structure.fg} +\setbeamercolor{subtitle}{fg=white} +\setbeamercolor{author}{use=local structure,fg=local structure.fg} +\setbeamercolor{institute}{fg=white} +\setbeamercolor{date}{fg=white} +\setbeamercolor{section in toc}{parent=title} +\setbeamercolor{section in toc shaded}{parent=normal text} +\setbeamercolor{frametitle}{parent=title} +\setbeamercolor{block title}{fg=accent1,bg=back1!50!gray} +\setbeamercolor{block body}{bg=back1!50!lightgray} +\setbeamercolor{block title example}{fg=accent2,bg=back1!50!gray} +\setbeamercolor{block body example}{bg=back1!50!lightgray} +\setbeamercolor{block title alerted}{fg=accent3,bg=back1!50!gray} +\setbeamercolor{block body alerted}{bg=back1!50!lightgray} + +%% ------------------------ select templates ------------------------- + +\setbeamertemplate{background canvas}[default] +\setbeamertemplate{background}[mobius] +\setbeamertemplate{title page}[mobius] +\setbeamertemplate{section page}[mobius] +\setbeamertemplate{section page content}[simple] +\setbeamertemplate{section}[simple] +\setbeamertemplate{section in toc}[sections numbered] +\setbeamertemplate{section in toc shaded}[default][100] +\setbeamertemplate{navigation symbols}{} +\setbeamertemplate{footline}[mobius] +\setbeamertemplate{frametitle}[simple] +\setbeamertemplate{itemize items}[default] +\setbeamertemplate{enumerate items}[default] + +%% ----------------------- handout mode ------------------------------ + +\mode{ + \setbeamertemplate{background canvas}{} + \setbeamertemplate{background}{} + \colorlet{text1}{black} + \colorlet{back1}{white} + \colorlet{accent1}{purple94} + \colorlet{accent2}{teal!70!black} + \colorlet{accent3}{blue77} + \colorlet{dcolor}{gray} + \colorlet{fcolor}{white} + \setbeamercolor{normal text}{fg=black, bg=white} + \setbeamercolor{structure}{fg=purple94} + \setbeamercolor{title}{fg=purple94} + \setbeamercolor{subtitle}{fg=black} + \setbeamercolor{author}{fg=accent2} + \setbeamercolor{institute}{fg=black} + \setbeamercolor{date}{fg=black} + \setbeamercolor{section in toc}{fg=purple94} + \setbeamercolor{section in toc shaded}{fg=lightgray} + \setbeamercolor{section title}{fg=purple94} + \setbeamercolor{footline}{bg=white,fg=black} + \setbeamercolor{footline highlight}{fg=accent2,bg=white} +} + +\mode + + +\makeatother diff --git a/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/mobius/demo-mobius.pdf b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/mobius/demo-mobius.pdf new file mode 100644 index 0000000000..5260cfa1c6 Binary files /dev/null and b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/mobius/demo-mobius.pdf differ diff --git a/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/mobius/demo-mobius.tex b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/mobius/demo-mobius.tex new file mode 100644 index 0000000000..ea5f47bac7 --- /dev/null +++ b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/mobius/demo-mobius.tex @@ -0,0 +1,171 @@ +% -*- coding: utf-8 -*- + +\documentclass[12pt,xcolor={rgb}]{beamer} + +\usetheme{mobius} + +\usepackage{arev} + +\begin{document} + +\title{Beamer Theme Mobius} +\author{Author Name} +\institute{Institute Name} + +\begin{frame}[plain] +\titlepage +\end{frame} + +\section{Section One} + +\subsection{Subsection One} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Two} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Three} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\section{Section Two} + +\subsection{Subsection One} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Two} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Three} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\section{Section Three} + +\subsection{Subsection One} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Two} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Three} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\end{document} diff --git a/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/riemann/beamerthemeriemann.sty b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/riemann/beamerthemeriemann.sty new file mode 100644 index 0000000000..82f2fed151 --- /dev/null +++ b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/riemann/beamerthemeriemann.sty @@ -0,0 +1,945 @@ +% -*- coding: utf-8 -*- +% ---------------------------------------------------------------------------- +% Author: Jianrui Lyu +% Website: https://github.com/lvjr/concrete +% License: The LaTeX Project Public License 1.3c +% ---------------------------------------------------------------------------- + +\ProvidesPackage{beamerthemeriemann}[2024-01-19 v2024A Beamer Theme Riemann] + +\makeatletter + +% compatible with old versions of beamer +\providecommand{\beamer@endinputifotherversion}[1]{} + +\RequirePackage{tikz,etoolbox,adjustbox,calc} +\usetikzlibrary{calc} + +\mode + +\setbeamersize{text margin left=8mm,text margin right=8mm} + +%% ----------------- background canvas and background ---------------- + +\newif\ifbackgroundmarkleft +\newif\ifbackgroundmarkright + +\newcommand{\insertbackgroundmark}{ + \ifbackgroundmarkleft + \foreach \x in {1,2,...,11} \draw[line width=0.2mm,markcolor] + (0,\x*\paperheight/12) ++(0.1mm,-0.5mm) rectangle +(1mm,1mm); + \fi + \ifbackgroundmarkright + \foreach \x in {1,2,...,11} \draw[line width=0.2mm,markcolor] + (\paperwidth,\x*\paperheight/12) ++(-1.1mm,-0.5mm) rectangle +(1mm,1mm); + \fi +} + +\defbeamertemplate{background}{line}[1][]{% + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \draw[xstep=\paperwidth,ystep=1mm,color=tcolor,#1] (0,0) grid (\paperwidth,\paperheight); + \insertbackgroundmark + \end{tikzpicture}% +} + +\defbeamertemplate{background}{linear}{% + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \draw[pattern=horizontal lines, pattern color=tcolor] + (0,0) rectangle (\paperwidth,\paperheight); + \insertbackgroundmark + \end{tikzpicture}% +} + +\defbeamertemplate{background}{lattice}[1][1mm]{% + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \draw[step=#1,color=tcolor,semithick] (0,0) grid (\paperwidth,\paperheight); + \insertbackgroundmark + \end{tikzpicture}% +} + +\defbeamertemplate{background}{empty}{ + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \insertbackgroundmark + \end{tikzpicture}% +} + +%% -------------------------- title page ----------------------------- + +% add \occasion command +\newcommand{\occasion}[1]{\def\insertoccasion{#1}} +\occasion{} + +\defbeamertemplate{title page}{banner}{% + \nointerlineskip + \begin{adjustbox}{width=\paperwidth,center}% + \usebeamertemplate{title page content}% + \end{adjustbox}% +} + +% need "text badly ragged" option for correct space skips +% see http://tex.stackexchange.com/a/132748/8956 +\defbeamertemplate{title page content}{hexagon}{% + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \path[draw=dcolor,fill=fcolor,opacity=0.8] + (0,0) rectangle (\paperwidth,\paperheight); + \node[text width=0.86\paperwidth,text badly ragged,inner ysep=1.5cm] (main) at (0.5\paperwidth,0.55\paperheight) {% + \begin{minipage}[c]{0.86\paperwidth} + \centering + \usebeamerfont{title}\usebeamercolor[fg]{title}\inserttitle + \ifx\insertsubtitle\@empty\else + \\[5pt]\usebeamerfont{subtitle}\usebeamercolor[fg]{subtitle} + \insertsubtitle + \fi + \end{minipage} + }; + \node[rectangle,inner sep=0pt,minimum size=3mm,fill=dcolor,right] (a) at (0,0.55\paperheight) {}; + \node[rectangle,inner sep=0pt,minimum size=3mm,fill=dcolor,left] (b) at (\paperwidth,0.55\paperheight) {}; + \ifx\insertoccasion\@empty + \draw[thick,dcolor] (a.north east) -- (main.north west) + -- (main.north east) -- (b.north west); + \else + \node[text badly ragged] (occasion) at (main.north west -| 0.5\paperwidth,\paperheight) { + \usebeamerfont{occasion}\usebeamercolor[fg]{occasion}\insertoccasion + }; + \draw[thick,dcolor] (a.north east) -- (main.north west) -- (occasion.west) + (b.north west) -- (main.north east) -- (occasion.east); + \fi + \node[text badly ragged] (date) at (main.south west -| 0.5\paperwidth,0) { + \usebeamerfont{date}\usebeamercolor[fg]{date}\insertdate + }; + \draw[thick,dcolor] (a.south east) -- (main.south west) -- (date.west) + (b.south west) -- (main.south east) -- (date.east); + \node[below=4mm,text width=0.9\paperwidth,inner xsep=0.05\paperwidth, + text badly ragged,fill=white,draw=dcolor] at (date.south) {% + \begin{minipage}[c]{0.9\paperwidth} + \centering + \textcolor{accent2}{$\blacksquare$}\hspace{0.2em}% + \usebeamerfont{institute}\usebeamercolor[fg]{institute}\insertinstitute + \hspace{1em}\textcolor{accent2}{$\blacksquare$}\hspace{0.2em}% + \usebeamerfont{author}\usebeamercolor[fg]{author}\insertauthor + \end{minipage} + }; + \end{tikzpicture} +} + +\defbeamertemplate{title page content}{rectangle}{% + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \path[draw=dcolor,fill=fcolor,opacity=0.8] + (0,0) rectangle (\paperwidth,\paperheight); + \node[text width=0.9\paperwidth,text badly ragged,inner ysep=1.5cm] (main) at (0.5\paperwidth,0.55\paperheight) {% + \begin{minipage}[c]{0.9\paperwidth} + \centering + \usebeamerfont{title}\usebeamercolor[fg]{title}\inserttitle + \ifx\insertsubtitle\@empty\else + \\[5pt]\usebeamerfont{subtitle}\usebeamercolor[fg]{subtitle} + \insertsubtitle + \fi + \end{minipage} + }; + \node[rectangle,inner sep=0pt,outer sep=0pt,minimum size=3mm,fill=dcolor,below right,xshift=2pt] + (a) at (main.north west -| 0,0) {}; + \node[rectangle,inner sep=0pt,outer sep=0pt,minimum size=3mm,fill=dcolor,below left,xshift=-2pt] + (b) at (main.north east -| \paperwidth,0) {}; + \node[rectangle,inner sep=0pt,outer sep=0pt,minimum size=3mm,fill=dcolor,above right,xshift=2pt] + (c) at (main.south west -| 0,0) {}; + \node[rectangle,inner sep=0pt,outer sep=0pt,minimum size=3mm,fill=dcolor,above left,xshift=-2pt] + (d) at (main.south east -| \paperwidth,0) {}; + \coordinate (mw) at (main.west -| a.west); + \coordinate (me) at (main.east -| b.east); + \draw[thick,dcolor] (a.south east) -- (a.south west) -- (a.north west) -- (a.north east) + -- ++(0,-6mm) -- ++(-3mm,0) -- (mw) + (c.north east) -- (c.north west) -- (c.south west) -- (c.south east) + -- ++(0,6mm) -- ++(-3mm,0) -- (mw) + (b.south west) -- (b.south east) -- (b.north east) -- (b.north west) + -- ++(0,-6mm) -- ++(3mm,0) -- (me) + (d.north west) -- (d.north east) -- (d.south east) -- (d.south west) + -- ++(0,6mm) -- ++(3mm,0) -- (me); + \ifx\insertoccasion\@empty + \draw[thick,dcolor] (a.south east) -- ++(3mm,0) -- ++(0,3mm) -- (main.north) + (b.south west) -- ++(-3mm,0) -- ++(0,3mm) -- (main.north); + \else + \node[text badly ragged] (occasion) at (main.north west -| 0.5\paperwidth,\paperheight) { + \usebeamerfont{occasion}\usebeamercolor[fg]{occasion}\insertoccasion + }; + \draw[thick,dcolor] (a.south east) -- ++(3mm,0) -- ++(0,3mm) -- (occasion.west) + (b.south west) -- ++(-3mm,0) -- ++(0,3mm) -- (occasion.east); + \fi + \node[text badly ragged] (date) at (main.south west -| 0.5\paperwidth,0) { + \usebeamerfont{date}\usebeamercolor[fg]{date}\insertdate + }; + \draw[thick,dcolor] (c.north east) -- ++(3mm,0) -- ++(0,-3mm) -- (date.west) + (d.north west) -- ++(-3mm,0) -- ++(0,-3mm) -- (date.east); + \node[below=4mm,text width=0.9\paperwidth,inner xsep=0.05\paperwidth, + text badly ragged,fill=white,draw=dcolor] (author) at (date.south) {% + \begin{minipage}[c]{0.9\paperwidth} + \centering + \textcolor{accent2}{$\blacksquare$}\hspace{0.2em}% + \usebeamerfont{institute}\usebeamercolor[fg]{institute}\insertinstitute + \hspace{1em}\textcolor{accent2}{$\blacksquare$}\hspace{0.2em}% + \usebeamerfont{author}\usebeamercolor[fg]{author}\insertauthor + \end{minipage} + }; + \end{tikzpicture} +} + +\defbeamertemplate{title page content}{polygon}{% + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \path[draw=dcolor,fill=fcolor,opacity=0.8] + (0,0) rectangle (\paperwidth,\paperheight); + \node[text width=0.82\paperwidth,text badly ragged,inner ysep=1.5cm] (main) at (0.5\paperwidth,0.55\paperheight) {% + \begin{minipage}[c]{0.82\paperwidth} + \centering + \usebeamerfont{title}\usebeamercolor[fg]{title}\inserttitle + \ifx\insertsubtitle\@empty\else + \\[5pt]\usebeamerfont{subtitle}\usebeamercolor[fg]{subtitle} + \insertsubtitle + \fi + \end{minipage} + }; + \node[rectangle,inner sep=0pt,outer sep=0pt,minimum size=3mm,fill=dcolor,right,yshift=12pt] + (a) at (main.north west -| 0,0) {}; + \node[rectangle,inner sep=0pt,outer sep=0pt,minimum size=3mm,fill=dcolor,left,yshift=12pt] + (b) at (main.north east -| \paperwidth,0) {}; + \node[rectangle,inner sep=0pt,outer sep=0pt,minimum size=3mm,fill=dcolor,right,yshift=-12pt] + (c) at (main.south west -| 0,0) {}; + \node[rectangle,inner sep=0pt,outer sep=0pt,minimum size=3mm,fill=dcolor,left,yshift=-12pt] + (d) at (main.south east -| \paperwidth,0) {}; + \draw[thick,dcolor] (a.south east) -- (main.west) -- (c.north east) + (b.south west) -- (main.east) -- (d.north west); + \ifx\insertoccasion\@empty + \draw[thick,dcolor] (a.south east) -- (main.north west) -- (main.north east) -- (b.south west); + \else + \node[text badly ragged] (occasion) at (main.north west -| 0.5\paperwidth,\paperheight) { + \usebeamerfont{occasion}\usebeamercolor[fg]{occasion}\insertoccasion + }; + \draw[thick,dcolor] (a.south east) -- (main.north west) -- (occasion.west) + (b.south west) -- (main.north east) -- (occasion.east); + \fi + \node[text badly ragged] (date) at (main.south west -| 0.5\paperwidth,0) { + \usebeamerfont{date}\usebeamercolor[fg]{date}\insertdate + }; + \draw[thick,dcolor] (c.north east) -- (main.south west) -- (date.west) + (d.north west) -- (main.south east) -- (date.east); + \node[below=4mm,text width=0.9\paperwidth,inner xsep=0.026\paperwidth, + text badly ragged,fill=white,draw=dcolor] (author) at (date.south) {% + \begin{minipage}[c]{0.9\paperwidth} + \centering + \textcolor{accent2}{$\blacksquare$}\hspace{0.2em}% + \usebeamerfont{institute}\usebeamercolor[fg]{institute}\insertinstitute + \hspace{1em}\textcolor{accent2}{$\blacksquare$}\hspace{0.2em}% + \usebeamerfont{author}\usebeamercolor[fg]{author}\insertauthor + \end{minipage} + }; + \path[fill=dcolor] (author.north west) -- (author.north west -| 0,0) -- (author.west) + -- (author.south west -| 0,0) -- (author.south west) + (author.north east) -- (author.north east -| \paperwidth,0) -- (author.east) + -- (author.south east -| \paperwidth,0) -- (author.south east); + \end{tikzpicture} +} + +\defbeamertemplate{title page content}{hypotenuse}{% + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \path[draw=dcolor,fill=fcolor,opacity=0.8] + (0,0) rectangle (\paperwidth,\paperheight); + \node[text width=0.82\paperwidth,text badly ragged,inner ysep=1.5cm] (main) at (0.5\paperwidth,0.55\paperheight) {% + \begin{minipage}[c]{0.82\paperwidth} + \centering + \usebeamerfont{title}\usebeamercolor[fg]{title}\inserttitle + \ifx\insertsubtitle\@empty\else + \\[5pt]\usebeamerfont{subtitle}\usebeamercolor[fg]{subtitle} + \insertsubtitle + \fi + \end{minipage} + }; + \node[rectangle,inner sep=0pt,outer sep=0pt,minimum size=2.7mm,fill=dcolor] (a) at (main.north west) {}; + \node[rectangle,inner sep=0pt,outer sep=0pt,minimum size=2.7mm,fill=dcolor,left] (b) at (main.north -| \paperwidth,0) {}; + \node[rectangle,inner sep=0pt,outer sep=0pt,minimum size=2.7mm,fill=dcolor,right] (c) at (main.south -| 0,0) {}; + \node[rectangle,inner sep=0pt,outer sep=0pt,minimum size=2.7mm,fill=dcolor] (d) at (main.south east) {}; + \draw[thick,dcolor] ($(a.south west)+(0.4pt,0)$) -- ($(c.north east)+(-0.4pt,0)$) + ($(b.south west)+(0.4pt,0)$) -- ($(d.north east)+(-0.4pt,0)$); + \draw[thick,dcolor] ($(a.south east)+(-0.4pt,0)$) -- ($(c.north west)+(0.4pt,0)$) + ($(b.south east)+(-0.4pt,0)$) -- ($(d.north west)+(0.4pt,0)$); + \ifx\insertoccasion\@empty + \draw[thick,dcolor] (a.north west) -- (b.north east) + (a.south west) -- (b.south east); + \else + \node[text badly ragged] (occasion) at (main.north west -| 0.5\paperwidth,\paperheight) { + \usebeamerfont{occasion}\usebeamercolor[fg]{occasion}\insertoccasion + }; + \draw[thick,dcolor] (a.north west) -- (a.north west -| occasion.north west) + (a.south west) -- (a.south west -| occasion.south west) + (b.north east) -- (b.north east -| occasion.north east) + (b.south east) -- (b.south east -| occasion.south east); + \fi + \node[text badly ragged] (date) at (main.south west -| 0.5\paperwidth,0) { + \usebeamerfont{date}\usebeamercolor[fg]{date}\insertdate + }; + \draw[thick,dcolor] (c.north west) -- (c.north west -| date.north west) + (c.south west) -- (c.south west -| date.south west) + (d.north east) -- (d.north east -| date.north east) + (d.south east) -- (d.south east -| date.south east); + \node[below=4mm,text width=0.9\paperwidth,inner xsep=0.015\paperwidth, + text badly ragged,fill=white,draw=dcolor] (author) at (date.south) {% + \begin{minipage}[c]{0.9\paperwidth} + \centering + \textcolor{accent2}{$\blacksquare$}\hspace{0.2em}% + \usebeamerfont{institute}\usebeamercolor[fg]{institute}\insertinstitute + \hspace{1em}\textcolor{accent2}{$\blacksquare$}\hspace{0.2em}% + \usebeamerfont{author}\usebeamercolor[fg]{author}\insertauthor + \end{minipage} + }; + \path[fill=dcolor] (author.north west) -- (author.south west) -- (author.south west -| 0,0) + (author.south east) -- (author.north east) -- (author.north west -| \paperwidth,0); + \end{tikzpicture} +} + +% Several safe primes and Blum-Blum-Shub generator +\newcommand{\my@composite}{43921} % 43921=167*263 +\newcounter{my@random@seed} +\setcounter{my@random@seed}{43787} +\newcommand{\next@random@seed}{% + \setcounter{my@random@seed}{\value{my@random@seed}*\value{my@random@seed}}% + \setcounter{my@random@seed}{\value{my@random@seed}-(\value{my@random@seed}/\my@composite)*\my@composite}% +} + +\newlength{\my@title@height} + +\defbeamertemplate{title page content}{block}{% + \begin{tikzpicture} + \useasboundingbox (0,0) rectangle (\paperwidth,\paperheight); + \path[draw=dcolor,fill=fcolor,opacity=0.8] (0,0) rectangle (\paperwidth,\paperheight); + \path[step=4mm,draw=dcolor,ultra thick] (0,0) grid (\paperwidth,\paperheight); + \foreach \x in {0,1,...,31} \foreach \y in {0,1,...,23} { + \next@random@seed + \ifodd\value{my@random@seed} + \path[draw=dcolor,ultra thick,fill=fcolor2,opacity=0.8] (\x*\paperwidth/32,\y*\paperheight/24) rectangle +(4mm,4mm); + \fi + } + \ifx\insertsubtitle\@empty + \setlength{\my@title@height}{39.7mm} + \else + \setlength{\my@title@height}{47.7mm} + \fi + \node[minimum width=0.84\paperwidth,minimum height=\my@title@height,inner xsep=2mm,inner ysep=0mm, + opacity=0.95,text opacity=1,text badly ragged,fill=fcolor] (main) at (0.5\paperwidth,0.542\paperheight) {% + \begin{minipage}[c]{0.84\paperwidth} + \centering + \usebeamerfont{title}\usebeamercolor[fg]{title}\inserttitle + \ifx\insertsubtitle\@empty\else + \\[5pt]\usebeamerfont{subtitle}\usebeamercolor[fg]{subtitle} + \insertsubtitle + \fi + \end{minipage} + }; + \ifx\insertoccasion\@empty\else + \node[text badly ragged,fill=fcolor,minimum height=7.8mm,draw=dcolor,very thick] + (occasion) at (main.north west -| 0.5\paperwidth,\paperheight) { + \usebeamerfont{occasion}\usebeamercolor[fg]{occasion}\insertoccasion + }; + \fi + \node[text badly ragged,fill=fcolor,minimum height=7.8mm,draw=dcolor,very thick] + (date) at (main.south west -| 0.5\paperwidth,0) { + \usebeamerfont{date}\usebeamercolor[fg]{date}\insertdate + }; + \node[below=4mm,minimum width=0.84\paperwidth,minimum height=7.6mm,inner xsep=2mm,inner ysep=0mm, + opacity=0.85,text opacity=1,text badly ragged,fill=white] at (date.south) {% + \begin{minipage}[c]{0.84\paperwidth} + \centering + \textcolor{accent2}{$\blacksquare$}\hspace{0.2em}% + \usebeamerfont{institute}\usebeamercolor[fg]{institute}\insertinstitute + \hspace{0.4em}\textcolor{accent2}{$\blacksquare$}\hspace{0.2em}% + \usebeamerfont{author}\usebeamercolor[fg]{author}\insertauthor + \end{minipage} + }; + \end{tikzpicture} +} + +%% ----------------------- section and subsection -------------------- + +\newcounter{my@pgf@picture@count} + +\def\sectionintocskip{0.5pt plus 0.1fill} +\patchcmd{\beamer@sectionintoc}{\vskip1.5em}{\vskip\sectionintocskip}{}{} + +\AtBeginSection[]{% + \begin{frame}%[plain] + \sectionpage + \end{frame}% +} + +\defbeamertemplate{section name}{simple}{\insertsectionnumber.} + +\defbeamertemplate{section name}{chinese}[1][节]{第\CJKnumber{\insertsectionnumber}#1} + +\defbeamertemplate{section page}{single}{% + \centerline{% + \usebeamerfont{section name}% + \usebeamercolor[fg]{section name}% + \usebeamertemplate{section name}% + \hspace{0.8em}% + \usebeamerfont{section title}% + \usebeamercolor[fg]{section title}% + \insertsection + }% +} + +\defbeamertemplate{section name in toc}{simple}{% + Section \inserttocsectionnumber +} + +\defbeamertemplate{section name in toc}{full}{% + Section \ifnum\the\beamer@tempcount<10 0\fi\inserttocsectionnumber +} + +\defbeamertemplate{section name in toc}{chinese}[1][节]{% + 第\CJKnumber{\inserttocsectionnumber}#1% +} + +\newcounter{my@section@from} +\newcounter{my@section@to} + +\defbeamertemplate{show sections in toc}{total}{% + \setcounter{my@section@from}{1}% + \setcounter{my@section@to}{50}% +} + +% show at most five sections +\defbeamertemplate{show sections in toc}{partial}{% + \setcounter{my@section@from}{\value{section}}% + \addtocounter{my@section@from}{-2}% + \setcounter{my@section@to}{\value{section}}% + \addtocounter{my@section@to}{2}% + \ifnum\my@totalsectionnumber>0% + \ifnum\value{my@section@to}>\my@totalsectionnumber + \setcounter{my@section@to}{\my@totalsectionnumber}% + \setcounter{my@section@from}{\value{my@section@to}}% + \addtocounter{my@section@from}{-4}% + \fi + \fi + \ifnum\value{my@section@from}<1\setcounter{my@section@from}{1}% + \setcounter{my@section@to}{\value{my@section@from}}% + \addtocounter{my@section@to}{4}% + \fi +} + +% reset pgfid to get correct result with \tikzmark in second run +\defbeamertemplate{section page}{fill}{% + \usebeamertemplate{show sections in toc}% + \setcounter{my@pgf@picture@count}{\the\pgf@picture@serial@count}% + \setlength{\parskip}{5pt minus 1pt}% + \tableofcontents[sectionstyle=show/shaded,subsectionstyle=hide, + sections={\arabic{my@section@from}-\arabic{my@section@to}}]% + \global\pgf@picture@serial@count=\value{my@pgf@picture@count}% + \unskip +} + +\defbeamertemplate{section in toc}{fill}{% + \noindent + \begin{tikzpicture} + \node[text width=\textwidth,inner xsep=0pt,inner ysep=5pt,text badly ragged,fill=bg] (title) {% + \hspace{0.28\textwidth}\parbox{0.7\textwidth}{\inserttocsection\vphantom{g}}% + }; + \path (title.south west) +(2pt,2pt) coordinate (sw) + (title.north west) +(0.25\textwidth,-2pt) coordinate (ne); + \path[fill=fg,overlay] (sw) rectangle (ne); + \node[inner xsep=0pt,text badly ragged,overlay] at ($(sw)!0.5!(ne)$) {% + \color{bg}\vphantom{g}\usebeamertemplate{section name in toc}% + }; + \draw[line width=1pt,dcolor,overlay] ($(ne)+(2pt,2pt)$) -- ($(ne |- title.south)+(2pt,0)$); + \end{tikzpicture}% + \par +} + +\AtBeginSubsection{% + \begin{frame}%[plain] + \setlength{\parskip}{0pt}% + \offinterlineskip + \subsectionpage + \end{frame}% +} + +\defbeamertemplate{subsection name}{simple}{% + \insertsectionnumber.\insertsubsectionnumber +} + +\defbeamertemplate{subsection page}{single}{% + \centerline{% + \usebeamerfont{subsection name}% + \usebeamercolor[fg]{subsection name}% + \usebeamertemplate{subsection name}% + \hspace{0.8em}% + \usebeamerfont{subsection title}% + \usebeamercolor[fg]{subsection title}% + \insertsubsection + }% +} + +\defbeamertemplate{subsection name in toc}{empty}{} + +\newcounter{mysubseccnt} +\defbeamertemplate{subsection name in toc}{alphabet}{% + \setcounter{mysubseccnt}{\inserttocsubsectionnumber}% + \Alph{mysubseccnt}% +} + +\defbeamertemplate{subsection name in toc}{simple}{% + \inserttocsubsectionnumber +} + +\defbeamertemplate{subsection name in toc}{full}{% + \inserttocsectionnumber.\inserttocsubsectionnumber +} + +% reset pgfid to get correct result with \tikzmark in second run +\defbeamertemplate{subsection page}{fill}{% + \setcounter{my@pgf@picture@count}{\the\pgf@picture@serial@count}% + \tableofcontents[sectionstyle=show/hide,subsectionstyle=show/shaded/hide]% + \global\pgf@picture@serial@count=\value{my@pgf@picture@count}% + \unskip +} + +\defbeamertemplate{subsection in toc}{fill}{% + \vspace{1pt}\noindent% + \begin{tikzpicture} + \node[text width=\textwidth,inner xsep=0pt,inner ysep=5pt,text badly ragged,fill=bg] (title) {% + \hspace{0.28\textwidth}\parbox{0.7\textwidth}{\inserttocsubsection\vphantom{g}}% + }; + \path (title.south west) +(2pt,2pt) coordinate (sw) + (title.north west) +(0.25\textwidth,-2pt) coordinate (ne); + \path[fill=fg,overlay] (sw) rectangle (ne); + \node[inner xsep=0pt,text badly ragged,overlay] at ($(sw)!0.5!(ne)$) {% + \color{bg}\vphantom{g}\usebeamertemplate{subsection name in toc}% + }; + \draw[line width=1pt,dcolor,overlay] ($(ne)+(2pt,2pt)$) -- ($(ne |- title.south)+(2pt,0)$); + \end{tikzpicture}% + \par +} + +% chinese sections and subsections +\defbeamertemplate{section and subsection}{chinese}[1][节]{% + \setbeamertemplate{section name in toc}[chinese][#1]% + \setbeamertemplate{section name}[chinese][#1]% + \setbeamertemplate{subsection name in toc}[alphabet]% +} + +%% ---------------------- headline and footline ---------------------- + +% fix headline bug in old versions +\@ifclasslater{beamer}{2017/01/23}{}{% + \patchcmd{\ps@empty} + {\raise\headheight\box\beamer@tempbox\box\@tempboxa} + {\raise\headheight\box\beamer@tempbox\raise\headheight\box\@tempboxa} + {}{} +} + +\defbeamertemplate{headline mark}{line}{ + \draw[overlay,color=white,line width=0.8pt] (0,0.5mm) -- (\paperwidth,0.5mm); +} + +\defbeamertemplate{headline}{shading}{% + \begin{tikzpicture} + \fill[left color=accent2,right color=blue85] (0,0) rectangle (\paperwidth,1mm); + \usebeamertemplate{headline mark} + \end{tikzpicture} +} + +\defbeamertemplate{headline}{border}{% + \begin{tikzpicture} + \path[use as bounding box] (0,0) rectangle (\paperwidth,1mm); + \fill[left color=accent2,right color=blue85] (0,0) rectangle (\paperwidth,0.8pt); + \end{tikzpicture} +} + +\defbeamertemplate{headline}{phantom}{% + \begin{tikzpicture} + \path[use as bounding box] (0,0) rectangle (\paperwidth,1mm); + \end{tikzpicture} +} + +\defbeamertemplate{footline left}{author}{% + \insertshortauthor +} + +\defbeamertemplate{footline center}{title}{% + \insertshorttitle +} + +\defbeamertemplate{footline right}{number}{% + \Acrobatmenu{GoToPage}{\insertframenumber{}/\inserttotalframenumber}% +} +\defbeamertemplate{footline right}{normal}{% + \hyperlinkframeendprev{$\vartriangle$} + \Acrobatmenu{GoToPage}{\insertframenumber{}/\inserttotalframenumber} + \hyperlinkframestartnext{$\triangledown$}% +} + +\defbeamertemplate{footline}{simple}{% + \hbox{% + \begin{beamercolorbox}[wd=.2\paperwidth,ht=2.25ex,dp=1ex,left]{footline}% + \usebeamerfont{footline}\kern\beamer@leftmargin + \usebeamertemplate{footline left}% + \end{beamercolorbox}% + \begin{beamercolorbox}[wd=.6\paperwidth,ht=2.25ex,dp=1ex,center]{footline}% + \usebeamerfont{footline}\usebeamertemplate{footline center}% + \end{beamercolorbox}% + \begin{beamercolorbox}[wd=.2\paperwidth,ht=2.25ex,dp=1ex,right]{footline}% + \usebeamerfont{footline}\usebeamertemplate{footline right}% + \kern\beamer@rightmargin + \end{beamercolorbox}% + }% +} + +\defbeamertemplate{footline separator}{shading}{% + \begin{tikzpicture} + \fill[left color=blue85,right color=accent2] (0,0) rectangle (\paperwidth,1pt); + \end{tikzpicture} +} + +\defbeamertemplate{footline}{sectioning}{% + \usebeamertemplate{footline separator}% + \hbox{% + \begin{beamercolorbox}[wd=.8\paperwidth,ht=2.25ex,dp=1ex,left]{footline}% + \usebeamerfont{footline}\kern\beamer@leftmargin\insertshorttitle + \ifx\insertsection\@empty\else\qquad$\vartriangleright$\qquad\insertsection\fi + \ifx\insertsubsection\@empty\else\qquad$\vartriangleright$\qquad\insertsubsection\fi + \end{beamercolorbox}% + \begin{beamercolorbox}[wd=.2\paperwidth,ht=2.25ex,dp=1ex,right]{footline}% + \usebeamerfont{footline}\usebeamertemplate{footline right}% + \kern\beamer@rightmargin + \end{beamercolorbox}% + }% +} + +% customize mini frames template to get a section navigation bar + +\defbeamertemplate{navigation box}{current}{% + \usebeamercolor{navigation box}% + \colorbox{bg}{% + \rule[-1ex]{0pt}{3.25ex}\color{white}\kern1.4pt\my@navibox\kern1.4pt% + }% +} + +\defbeamertemplate{navigation box}{other}{% + %\colorbox{white}{% + \rule[-1ex]{0pt}{3.25ex}\color{black}\kern1.4pt\my@navibox\kern1.4pt% + %}% +} + +\newcommand{\my@navibox@subsection}{$\blacksquare$} +\newcommand{\my@navibox@frame}{$\square$} +\let\my@navibox=\my@navibox@frame + +% optional navigation box for some special frame +\newcommand{\my@navibox@frame@opt}{$\boxplus$} +\newcommand{\my@change@navibox}{\let\my@navibox=\my@navibox@frame@opt} +\newcommand{\changenavibox}{% + \addtocontents{nav}{\protect\headcommand{\protect\my@change@navibox}}% +} + +\newcommand{\my@sectionentry@show}[5]{% + \ifnum\c@section=#1% + \setbeamertemplate{navigation box}[current]% + \else + \setbeamertemplate{navigation box}[other]% + \fi + \begingroup + \def\my@navibox{#1}% + \hyperlink{Navigation#3}{\usebeamertemplate{navigation box}}% + \endgroup +} + +\newif\ifmy@hidesection + +\newcommand{\my@sectionentry@hide}[5]{\my@hidesectiontrue} + +\pretocmd{\beamer@setuplinks}{\renewcommand{\beamer@subsectionentry}[5]{}}{}{} +\apptocmd{\beamer@setuplinks}{\global\let\beamer@subsectionentry\mybeamer@subsectionentry}{}{} + +\newcommand{\mybeamer@subsectionentry}[5]{\global\let\my@navibox=\my@navibox@subsection} + +\newcommand{\my@slideentry@empty}[6]{} + +\newcommand{\my@slideentry@section}[6]{% + \ifmy@hidesection + \my@hidesectionfalse + \else + \ifnum\c@section=#1% + \setbeamertemplate{navigation box}[other]% + \ifnum\c@subsection=#2\ifnum\c@subsectionslide=#3% + \setbeamertemplate{navigation box}[current]% + \fi\fi + \beamer@link(#4){\usebeamertemplate{navigation box}}% + \fi + \fi + \global\let\my@navibox=\my@navibox@frame +} + +\newcommand{\my@slideentry@subsection}[6]{% + \ifmy@hidesection + \my@hidesectionfalse + \else + \ifnum\c@section=#1% + \ifboolexpr{test{\ifnumcomp{\c@subsection}{=}{#2}} or test{\ifnumcomp{#3}{=}{1}}}{% + \setbeamertemplate{navigation box}[other]% + \ifnum\c@subsection=#2\ifnum\c@subsectionslide=#3% + \setbeamertemplate{navigation box}[current]% + \fi\fi + \beamer@link(#4){\usebeamertemplate{navigation box}}% + }{}% + \fi + \fi + \global\let\my@navibox=\my@navibox@frame +} + +\AtEndDocument{% + \immediate\write\@auxout{% + \noexpand\gdef\noexpand\my@totalsectionnumber{\the\c@section}% + }% +} + +\def\my@totalsectionnumber{0} + +\defbeamertemplate{footline navigation}{section}{% + \setbeamercolor{navigation box}{bg=accent2}% + \let\sectionentry=\my@sectionentry@hide + \let\slideentry=\my@slideentry@section + \dohead +} + +\defbeamertemplate{footline navigation}{subsection}{% + \setbeamercolor{navigation box}{bg=accent2}% + \let\sectionentry=\my@sectionentry@hide + \let\slideentry=\my@slideentry@subsection + \dohead +} + +\defbeamertemplate{footline}{navigation}{% + \usebeamertemplate{footline separator}% + \begin{beamercolorbox}[wd=\paperwidth,ht=2.25ex,dp=1ex]{footline}% + \usebeamerfont{footline}% + \kern\beamer@leftmargin + \setlength{\fboxsep}{0pt}% + \setbeamercolor{navigation box}{bg=blue85}% + \ifnum\my@totalsectionnumber=0% + \insertshorttitle + \else + \let\sectionentry=\my@sectionentry@show + \let\slideentry=\my@slideentry@empty + \dohead + \fi + \hfill + \usebeamertemplate{footline navigation}% + \kern\beamer@rightmargin + \end{beamercolorbox}% +} + +%% ------------------------- frame title ----------------------------- + +% remove extra vertical space after frametitle +\patchcmd{\endbeamer@frameslide}{\vskip0.25em}{\relax}{}{} + +\defbeamertemplate{frametitle}{simple}[1][] +{% + \nointerlineskip + \begin{beamercolorbox}[wd=\paperwidth,sep=0pt,leftskip=\beamer@leftmargin,% + rightskip=\beamer@rightmargin,#1]{frametitle} + \usebeamerfont{frametitle}% + \rule[-3mm]{0pt}{10mm}\insertframetitle\rule[-3mm]{0pt}{10mm}\par + \end{beamercolorbox} +} + +%% ------------------- block and theorem ----------------------------- + +% allow it to be modified by user +\def\myinserttheoremaddition{\inserttheoremaddition} + +\defbeamertemplate{theorem begin}{simple} +{% + \upshape%\bfseries\inserttheoremheadfont + {\usebeamercolor[fg]{theoremname}% + \inserttheoremname\inserttheoremnumber + \ifx\inserttheoremaddition\@empty\else + \ \usebeamercolor[fg]{local structure}(\myinserttheoremaddition)% + \fi% + %\inserttheorempunctuation + }% + \quad\normalfont +} +\defbeamertemplate{theorem end}{simple}{\par} + +\defbeamertemplate{proof begin}{simple} +{% + %\bfseries + \let\@addpunct=\@gobble + {\usebeamercolor[fg]{proofname}\insertproofname}% + \quad\normalfont +} +\defbeamertemplate{proof end}{simple}{\par} + +%% ---------------------- enumerate and itemize ---------------------- + +\expandafter\patchcmd\csname beamer@@tmpop@enumerate item@square\endcsname + {height1.85ex depth.4ex}{height1.85ex depth.3ex}{}{} +\expandafter\patchcmd\csname beamer@@tmpop@enumerate subitem@square\endcsname + {height1.85ex depth.4ex}{height1.85ex depth.3ex}{}{} +\expandafter\patchcmd\csname beamer@@tmpop@enumerate subsubitem@square\endcsname + {height1.85ex depth.4ex}{height1.85ex depth.3ex}{}{} + +%% ------------------------ select templates ------------------------- + +\setbeamertemplate{background canvas}[default] +\setbeamertemplate{background}[line] +\setbeamertemplate{headline}[shading] +\setbeamertemplate{footline}[navigation] +\setbeamertemplate{footline navigation}[section] +\setbeamertemplate{footline separator}[shading] +\setbeamertemplate{footline left}[author] +\setbeamertemplate{footline center}[title] +\setbeamertemplate{footline right}[number] +\setbeamertemplate{title page}[banner] +\setbeamertemplate{title page content}[hexagon] +\setbeamertemplate{section page}[fill] +\setbeamertemplate{show sections in toc}[partial] +\setbeamertemplate{section name}[simple] +\setbeamertemplate{section name in toc}[simple] +\setbeamertemplate{section in toc}[fill] +\setbeamertemplate{section in toc shaded}[default][50] +\setbeamertemplate{subsection page}[fill] +\setbeamertemplate{subsection name}[simple] +\setbeamertemplate{subsection name in toc}[simple] +\setbeamertemplate{subsection in toc}[fill] +\setbeamertemplate{subsection in toc shaded}[default][50] +\setbeamertemplate{theorem begin}[default] +\setbeamertemplate{theorem end}[default] +\setbeamertemplate{proof begin}[default] +\setbeamertemplate{proof end}[default] +\setbeamertemplate{frametitle}[simple] +\setbeamertemplate{navigation symbols}{} +\setbeamertemplate{itemize items}[square] +\setbeamertemplate{enumerate items}[square] + +%% --------------------------- font theme ---------------------------- + +\setbeamerfont{title}{size=\LARGE} +\setbeamerfont{subtitle}{size=\large} +\setbeamerfont{author}{size=\normalsize} +\setbeamerfont{institute}{size=\normalsize} +\setbeamerfont{date}{size=\normalsize} +\setbeamerfont{occasion}{size=\normalsize} +\setbeamerfont{section in toc}{size=\large} +\setbeamerfont{subsection in toc}{size=\large} +\setbeamerfont{frametitle}{size=\large} +\setbeamerfont{block title}{size=\normalsize} +\setbeamerfont{item projected}{size=\footnotesize} +\setbeamerfont{subitem projected}{size=\scriptsize} +\setbeamerfont{subsubitem projected}{size=\tiny} + +\usefonttheme{professionalfonts} +%\usepackage{arev} + +%% ---------------------------- color theme -------------------------- + +% always use rgb colors in pdf files +\substitutecolormodel{hsb}{rgb} + +\definecolor{red99}{Hsb}{0,0.9,0.9} +\definecolor{yellow5x}{Hsb}{60,0.5,1} +\definecolor{yellow6x}{Hsb}{53,0.6,1} +\definecolor{yellow86}{Hsb}{60,0.8,0.6} +\definecolor{yellow99}{Hsb}{60,0.9,0.9} +\definecolor{cyan95}{Hsb}{180,0.9,0.5} +\definecolor{blue74}{Hsb}{240,0.7,0.4} +\definecolor{blue77}{Hsb}{240,0.7,0.7} +\definecolor{blue85}{Hsb}{230,0.8,0.5} +\definecolor{blue99}{Hsb}{240,0.9,0.9} +\definecolor{magenta88}{Hsb}{300,0.8,0.8} + +\colorlet{text1}{black} +\colorlet{back1}{white} +\colorlet{accent1}{blue99} +\colorlet{accent2}{cyan95} +\colorlet{accent3}{red99} +\colorlet{accent4}{yellow86} +\colorlet{accent5}{magenta88} +\colorlet{filler1}{accent1!40!back1} +\colorlet{filler2}{accent2!40!back1} +\colorlet{filler3}{accent3!40!back1} +\colorlet{filler4}{accent4!40!back1} +\colorlet{filler5}{accent5!40!back1} +\colorlet{gray1}{black!20} +\colorlet{gray2}{black!35} +\colorlet{gray3}{black!50} +\colorlet{gray4}{black!65} +\colorlet{gray5}{black!80} +\colorlet{tcolor}{text1!10!back1} +\colorlet{dcolor}{white} +\colorlet{fcolor}{blue77} +\colorlet{fcolor2}{gray3} +\colorlet{markcolor}{gray} + +\setbeamercolor{normal text}{bg=white,fg=black} +\setbeamercolor{structure}{fg=blue85} +\setbeamercolor{local structure}{fg=cyan95} +\setbeamercolor{footline}{bg=,fg=black} +\setbeamercolor{title}{fg=yellow99} +\setbeamercolor{subtitle}{fg=white} +\setbeamercolor{author}{fg=black} +\setbeamercolor{institute}{fg=black} +\setbeamercolor{date}{fg=white} +\setbeamercolor{occasion}{fg=white} +\setbeamercolor{section name}{fg=blue85} +\setbeamercolor{section in toc}{fg=yellow6x,bg=blue85} +\setbeamercolor{section in toc shaded}{fg=white,bg=blue74} +\setbeamercolor{subsection name}{parent=section name} +\setbeamercolor{subsection in toc}{fg=yellow5x,bg=accent2} +\setbeamercolor{subsection in toc shaded}{fg=white,bg=accent2!50!black} +\setbeamercolor{frametitle}{parent=structure} +\setbeamercolor{theoremname}{fg=blue77} +\setbeamercolor{proofname}{fg=blue77} +\setbeamercolor{block title}{fg=accent1,bg=gray} +\setbeamercolor{block body}{bg=lightgray} +\setbeamercolor{block title example}{fg=accent2,bg=gray} +\setbeamercolor{block body example}{bg=lightgray} +\setbeamercolor{block title alerted}{fg=accent3,bg=gray} +\setbeamercolor{block body alerted}{bg=lightgray} + +%% ----------------------- handout mode ------------------------------ + +\mode{ + \setbeamertemplate{background canvas}{} + \setbeamertemplate{background}[empty] + \setbeamertemplate{headline}[phantom] + \setbeamertemplate{footline}[sectioning] + \setbeamertemplate{section page}[single] + \setbeamertemplate{subsection page}[single] + \setbeamerfont{subsection in toc}{size=\large} + \colorlet{dcolor}{darkgray} + \colorlet{fcolor}{white} + \colorlet{fcolor2}{gray1} + \setbeamercolor{normal text}{fg=black, bg=white} + \setbeamercolor{title}{fg=blue} + \setbeamercolor{subtitle}{fg=gray} + \setbeamercolor{occasion}{fg=black} + \setbeamercolor{date}{fg=black} + \setbeamercolor{section in toc}{fg=blue!90!gray,bg=} + \setbeamercolor{section in toc shaded}{fg=lightgray,bg=} + \setbeamercolor{subsection in toc}{fg=blue!80!gray} + \setbeamercolor{subsection in toc shaded}{fg=lightgray} + \setbeamercolor{frametitle}{fg=blue!70!gray,bg=} + \setbeamercolor{theoremname}{fg=blue!60!gray} + \setbeamercolor{proofname}{fg=blue!60!gray} + \setbeamercolor{footline}{bg=white,fg=black} +} + +\mode + + +\makeatother diff --git a/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/riemann/demo-riemann.pdf b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/riemann/demo-riemann.pdf new file mode 100644 index 0000000000..982ad4d8d8 Binary files /dev/null and b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/riemann/demo-riemann.pdf differ diff --git a/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/riemann/demo-riemann.tex b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/riemann/demo-riemann.tex new file mode 100644 index 0000000000..ad68361dca --- /dev/null +++ b/macros/latex/contrib/beamer-contrib/themes/beamerthemeconcrete/riemann/demo-riemann.tex @@ -0,0 +1,178 @@ +% -*- coding: utf-8 -*- + +\documentclass[12pt,xcolor={rgb}]{beamer} + +\usetheme{riemann} + +\usepackage{arev} + +%% use these lines to get section numbers in Chinese +%\usepackage[UTF8,noindent]{ctex} +%\usepackage{CJKnumb} +%\setbeamertemplate{section and subsection}[chinese] +%\usebeamertemplate{section and subsection} + +\begin{document} + +\title{Beamer Theme Riemann} +\author{Author Name} +\institute{Institute Name} +\occasion{Some Conference} + +\begin{frame}[plain] +\titlepage +\end{frame} + +\section{Section One} + +\subsection{Subsection One} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Two} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Three} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\section{Section Two} + +\subsection{Subsection One} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Two} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Three} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\section{Section Three} + +\subsection{Subsection One} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Two} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\subsection{Subsection Three} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\begin{frame}{Frame Title} +Frame \insertframenumber +\end{frame} + +\end{document} -- cgit v1.2.3