1

I like to customize beamer presentation so that selected bullet become blue and the rest of bullets green (just an example). Is it possible?

MWE: beamerthemesimple.sty

% Copyright 2015 by Facundo Muñoz
%
% This file may be distributed and/or modified
%
% 1. under the LaTeX Project Public License and/or
% 2. under the GNU Public License.
%


\ProvidesPackage{beamerthemesimple}

%\def\beamer@simplecolor{gris}
%\DeclareOptionBeamer{color}{\beamer@simplecolor=#1}
%\ExecuteOptionsBeamer{gris}
%\ProcessOptionsBeamer

\usepackage{tikz}
\usetikzlibrary{arrows,shapes,trees,positioning,fadings}

\input xkeyval

\newcommand<>{\includeoverlaygraphics}[2][]
{
  \begin{tikzpicture}
    \alt#3{\node[opacity=1] {\includegraphics[#1]{#2}};}
          {\node[opacity=.15] {\includegraphics[#1]{#2}};}
  \end{tikzpicture}
}

% These define macros \KV@setwatermark@hoffset that take one argument
% which is processed by the last piece of codes into braces
\def\@hos{}
\def\@vos{}
\def\@alpha{} % This one does not work. Why?
\define@key{setwatermark}{hoffset}[\def\@hos{.}]{\def\@hos{\hspace*{#1}}} 
\define@key{setwatermark}{voffset}[\def\@vos{.}]{\def\@vos{\vspace*{#1}}} 
\define@key{setwatermark}{alpha}[\def\@alpha{0.7}]{\def\@alpha{#1}} 

\def\setwatermark{\@ifnextchar[\@setwatermark{\@setwatermark[]}}
\def\@setwatermark[#1]#2{%
  \setkeys{setwatermark}{#1}%
  \def\@watermark{#2}
}
% \newcommand{\setwatermark}[1]{\def\@watermark{#1}}
\setwatermark{}   % Empty initialization


\mode<presentation>

  % http://www.colorcombos.com/color-scheme-275.html
  \definecolor{destacado}{HTML}{515151} % gris oscuro
  \definecolor{normal}{HTML}{797979}  % gris medio
  \definecolor{fondo}{HTML}{e6e6e6}  % gris claro

  \setbeamercolor{normal text}{bg=white,fg=normal}
  \setbeamercolor*{block title}{bg=fondo,fg=destacado}
  \setbeamercolor*{block body}{bg=fondo,fg=normal}
  \setbeamercolor{alerted text}{fg=black}

  \usetheme{default}
%  \usecolortheme[named=gris]{structure}
  \usecolortheme[named=destacado]{structure}
  \usefonttheme{structurebold}

  % overlays semitransparentes
  \setbeamercovered{transparent}

  % incluir el contador de diapos
  \setbeamertemplate{footline}[frame number]

  % eliminar íconos de nav.
  \setbeamertemplate{navigation symbols}{}

  % bloques
  \setbeamertemplate{blocks}[rounded][shadow=true]

  % especificación global para listas
  %\beamerdefaultoverlayspecification{<+-| alert@+>}

  % márgenes
  \setbeamersize{text margin left=0.4cm,text margin right=0.4cm}

  \setbeamertemplate{background}{
  \parbox[c][\paperheight]{\paperwidth}{%
    \vfill \hfill 
    \begin{tikzpicture}
      %\node[opacity=\@alpha]  % not working. why?
      \node[opacity=.07]
      {
        \@watermark
      };
    \end{tikzpicture}
    \@hos

    \@vos
  }
} 

\mode
<all>

demo.tex

\documentclass{beamer}

\usetheme{simple}
\useoutertheme{smoothbars}

\usepackage{lmodern}
\usepackage[scale=2]{ccicons}

\title{A simple beamer theme}
\subtitle{}
\date{\today}
\author{Facundo Mu\~noz}
\institute{\url{http://github.com/famuvie}}

\begin{document}

\maketitle

\section{test}
\subsection{test2}
\begin{frame}{simple}
  \framesubtitle{A beamer theme}

  \texttt{simple} is a minimalist Beamer theme that features

  \begin{columns}
    \column{.5\textwidth}
      \begin{itemize}
        \item a \alert{watermark} logo in the background
        \item slide \alert{numbers}
        \item \emph{emph}asized and \alert{alert}ed text
      \end{itemize}

    \column{.5\textwidth}
      \begin{block}{And of course...}
         blocks, columns, and all Beamer power
      \end{block}
  \end{columns}

\end{frame}
\end{document}

enter image description here

2

1 Answer 1

2

Changing the colour of the current mini frame is easy, just use

\setbeamercolor{mini frame}{fg=red}

To change the colour of the other miniframes independently is more tricky. Normally they use a mixture of the colour from the current mini frame with the background, i.e. \color{fg!#1!bg}. To change this colour, replace the fg with the colour of your choice:

\documentclass{beamer}

\useoutertheme{smoothbars}

\setbeamercolor{mini frame}{fg=red}

\makeatother
\setbeamertemplate{mini frame in other section}{\color{blue!50!bg}\usebeamertemplate{mini frame in current section}}
\setbeamertemplate{mini frame in other subsection}{\color{blue!50!bg}\usebeamertemplate{mini frame in current subsection}}
\makeatletter


\begin{document}
\begin{frame}
test
\end{frame}

\section{test}
\subsection{test2}
\begin{frame}{simple}
  \framesubtitle{A beamer theme}
\end{frame}

\subsection{test3}
\begin{frame}{simple}
  \framesubtitle{A beamer theme}
\end{frame}
\end{document}

enter image description here

2
  • Can you explain about the difference between your solution and using of option bg=green?
    – Sadegh
    Feb 19, 2017 at 13:00
  • 1
    @Woeitg Yes. Normally the colour of the not highlited miniframes is a mixture between the bg and fg color \color{fg!#1!bg}, if you use blue and yellow, you would get green instead of the blue you want. Feb 19, 2017 at 13:02

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .