beamerlines/beamerinnerthemelines.sty
2021-03-02 00:12:27 +01:00

221 lines
6.1 KiB
TeX

% Copyright 2021 by Jan Benda
%
% This file may be distributed and/or modified
%
% 1. under the LaTeX Project Public License and/or
% 2. under the GNU Public License.
\ProvidesPackage{beamerinnerthemelines}[2021/02/28 inner theme for beamer with lines in title page]
\RequirePackage{tikz}
% \titlelogo command:
\mode<all>{
\newcommand\titlelogo[1]{\def\inserttitlelogo{#1}}
\titlelogo{}
}
\mode<presentation>
% itemize and enumerate symbols:
\defbeamertemplate{itemize item}{arrow}{%
\begin{tikzpicture}
\draw[line width=0.2ex] (0ex, 0ex) -- (0.7ex,0.7ex) -- (0ex, 1.4ex);
\end{tikzpicture}}
\setbeamertemplate{itemize item}[arrow] % default, triangle, circle, square, ball
\setbeamertemplate{enumerate item}[default] % default, circle, square, ball
% block environments:
\setbeamertemplate{blocks}[default]
%%%%% title page %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\defbeamertemplate{title page graphic line}{default}[1][1ex]%
{
\ifbeamercolorempty[fg]{title page graphic line}{}{%
\nointerlineskip%
\begin{beamercolorbox}[wd=1\textwidth,dp=0pt,ht=#1,sep=0pt]{title page graphic line}%
\rule{1\linewidth}{#1}%
\end{beamercolorbox}%
}%
}
\setbeamertemplate{title page graphic line}[default][1.5ex]
\defbeamertemplate{title page title line}{default}[1][1ex]%
{
\ifbeamercolorempty[fg]{title page title line}{}{%
\nointerlineskip%
\begin{beamercolorbox}[wd=1\textwidth,dp=0pt,ht=#1,sep=0pt]{title page title line}%
\rule{1\linewidth}{#1}%
\end{beamercolorbox}%
}%
}
\setbeamertemplate{title page title line}[default][0.2ex]
\defbeamertemplate{title page author and}{space}{\def\beamer@andtitle{\quad}}
\defbeamertemplate{title page author and}{comma}{\def\beamer@andtitle{,\quad}}
\defbeamertemplate{title page author and}{line}{\def\beamer@andtitle{$\;\;\vert\;\;\;$}}
\defbeamertemplate{title page author and}{and}{\def\beamer@andtitle{$\;$\&$\;\;$}}
\setbeamertemplate{title page author and}[line]
\defbeamertemplate{title page institute and}{default}{}
\defbeamertemplate{title page institute and}{space}{\def\beamer@andinst{\quad}}
\defbeamertemplate{title page institute and}{comma}{\def\beamer@andinst{,\quad}}
\defbeamertemplate{title page institute and}{line}{\def\beamer@andinst{$\;\;\vert\;\;\;$}}
\setbeamertemplate{title page institute and}[line]
% title page: leftlines
\defbeamertemplate*{title page}{leftlines}
{
\vbox{}
% title logo with line:
\ifx\inserttitlelogo\@empty\else%
\begin{beamercolorbox}[wd=\linewidth]{titlelogo}
\inserttitlelogo%
\end{beamercolorbox}%
\vspace{1.2ex}
\usebeamertemplate{frametitle line}%
\vspace{1ex}
\fi
% title graphic:
\ifx\inserttitlegraphic\@empty\else%
\begin{beamercolorbox}[wd=\linewidth]{titlegraphic}
\inserttitlegraphic%
\end{beamercolorbox}%
\usebeamertemplate{title page graphic line}%
\fi%
\vfill\vfill\vfill
% title:
\begin{beamercolorbox}{title}
\usebeamerfont{title}\inserttitle\par%
\end{beamercolorbox}%
% subtitle:
\ifx\insertsubtitle\@empty\else%
\vspace{1ex}
\begin{beamercolorbox}{subtitle}
\usebeamerfont{subtitle}\insertsubtitle\par%
\end{beamercolorbox}%
\fi%
\vfill
\usebeamertemplate{title page title line}%
\vfill
% author:
\begin{beamercolorbox}{author}
\usebeamertemplate{title page author and}%
\usebeamerfont{author}\insertauthor
\end{beamercolorbox}
\vfill
% institute and date:
\begin{beamercolorbox}{institute}
\usebeamertemplate{title page institute and}%
\usebeamerfont{institute}\insertinstitute
\hfill
\usebeamerfont{date}\insertdate
\end{beamercolorbox}
}
% title page: centerlines
\defbeamertemplate*{title page}{centerlines}
{
\vbox{}
% title logo with line:
\ifx\inserttitlelogo\@empty\else%
\begin{beamercolorbox}[wd=\linewidth,center]{titlelogo}
\inserttitlelogo%
\end{beamercolorbox}%
\vspace{1.2ex}
\usebeamertemplate{frametitle line}%
\vspace{1ex}
\fi
% title graphic:
\ifx\inserttitlegraphic\@empty\else%
\begin{beamercolorbox}[wd=\linewidth,center]{titlegraphic}
\inserttitlegraphic%
\end{beamercolorbox}%
\usebeamertemplate{title page graphic line}%
\fi%
\vfill\vfill\vfill
% title:
\begin{beamercolorbox}[center]{title}
\usebeamerfont{title}\inserttitle\par%
\end{beamercolorbox}%
% subtitle:
\ifx\insertsubtitle\@empty\else%
\vspace{1ex}
\begin{beamercolorbox}[center]{subtitle}
\usebeamerfont{subtitle}\insertsubtitle\par%
\end{beamercolorbox}%
\fi%
\vfill
\usebeamertemplate{title page title line}%
\vfill
% author:
\begin{beamercolorbox}[center]{author}
\usebeamertemplate{title page author and}%
\usebeamerfont{author}\insertauthor
\end{beamercolorbox}
\vfill
% institute and date:
\begin{beamercolorbox}[center]{institute}
\usebeamertemplate{title page institute and}%
\usebeamerfont{institute}\insertinstitute
\hfill
\usebeamerfont{date}\insertdate
\end{beamercolorbox}
}
\setbeamertemplate{title page}[leftlines]
%%%%% section page %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% section page separator: space
\defbeamertemplate{section name separator}{space}{}
% section page separator: text
\defbeamertemplate{section name separator}{text}[1][1pt]%
{
{\usebeamercolor[fg]{section name separator}
\rule[-0.5ex]{#1}{2.4ex}}
}
\setbeamertemplate{section name separator}[text][1pt]
% section page: left
\defbeamertemplate{section page}{left}%
{
\begin{columns}[t,onlytextwidth]
\begin{column}{0.1\textwidth}
\usebeamerfont{section name}%
\raggedleft{\usebeamercolor[fg]{section name}%
\makebox[0.5\linewidth][r]{\insertsectionnumber}%
\makebox[0.5\linewidth][c]{\usebeamertemplate{section name separator}}}%
\end{column}
\begin{column}{0.9\textwidth}
\usebeamerfont{section title}%
{\usebeamercolor[fg]{section title}\hypersetup{allcolors=.}\insertsection}%
\end{column}
\end{columns}
}
% start each section with a special slide:
\AtBeginSection{
\frame[plain,c]{\sectionpage}
}
\setbeamertemplate{section page}[left]
\mode<all>