4

I am preparing a presentation in Beamer using \useoutertheme{miniframes} and \useinnertheme{circles}, and my own modded version of the default colortheme.

I want to have a Frankfurt-like navigation bar in the top, but instead of setting a background color, I have an image providing the background for the top bar.

What I want is the current section title and subsection dots to be highlighted compared to the rest, like this:

Correct shading, but with bg color

...except this only works when I declare a background colour for "section in head/foot". When I set {bg=} in that definition, it shades the active section and circles darker than the rest, which is the opposite of what I want:

correct bg, but now the shading is wrong

If I set the fg to be completely white, then everything gets white, no shading of inactive regions. What I want is the shading on the first image with the background of the second image.

How can I achieve this?


Edit: Minimal Working Example

Here's a minimal working example. To function, it needs a background image, I used this background image from The Internetz(TM).

The code for a minimal working example is below. There are 3 different options for \setbeamercolor{section in head/foot}; option 1 produces correct background with all-white navigation with no shading, option 2 provides correct background but wrong shading (the emphasized parts are darker on a dark background image), and option 3 provides correct shading but sets a solid background color covering the image.

What I want is the background image of option 1 and 2, but the shading of the navigation items of option3.

\documentclass[compress]{beamer}
\useoutertheme[footline=authortitle]{miniframes}
\usebackgroundtemplate{\includegraphics[height=\paperheight]{baggrund.jpg}}
\setbeamercolor{structure}{fg=white}
%\setbeamercolor{section in head/foot}{parent=structure}%, bg=black} %opt.1
\setbeamercolor{section in head/foot}{parent=structure,fg=white!70!black} %opt.2
%\setbeamercolor{section in head/foot}{parent=structure, bg=black} %opt.3
\setbeamercolor{normal text}{fg=white!80!blue}
\title{the title}
\author{John Doe}
\begin{document}

\section{S1}

\subsection{SS11}
\begin{frame}{Foo}
    Some text
\end{frame}
\begin{frame}{Bar}
    Some text
\end{frame}

\subsection{SS12}    
\begin{frame}{Baz}
    Some text
\end{frame}
\begin{frame}{Qux}
    Some text
\end{frame}

\section{S2}
\subsection{SS21}    
\begin{frame}{Buqz}
    Some text
\end{frame}

\subsection{SS22}
\begin{frame}{Bao}
    Some text
\end{frame}
\end{document}
  • Please help us to help you and add a minimal working example (MWE) that illustrates your problem. It will be much easier for us to reproduce your situation and find out what the issue is when we see compilable code, starting with \documentclass{...} and ending with \end{document}. – user31729 Feb 15 '15 at 14:15
  • Added an MWE now. – Thriveth Feb 15 '15 at 14:51
3

To influence the colouring of the mini frames without changing the background colour of the header, you can use the beamer colour mini frames (by default, this just takes the colours from section in head/foot, which is why changing this colour also influences the mini frames):

\setbeamercolor{mini frame}{fg=white,bg=black}

However, this only solves half of your problem: while it gives correct colours for the mini frames itself, the section name colour is still wrong, as it is controlled by section name in head/foot:

headline with mini frames highlighted/shaded as desired, but section name still in grey

To fix this, you can patch the internal beamer commands to use the mini frame colour instead of the header colour for the section name:

\usepackage{etoolbox}
\patchcmd{\sectionentry}{\usebeamercolor[fg]{section in head/foot}}{\usebeamercolor[fg]{mini frame}}{}{}

Together, this gives the desired result:

headline with mini frames and section name highlighted/shaded as desired

\documentclass[compress]{beamer}
\useoutertheme[footline=authortitle]{miniframes}
\usebackgroundtemplate{\includegraphics[height=\paperheight]{baggrund.jpg}}
\setbeamercolor{structure}{fg=white}
\setbeamercolor{normal text}{fg=white!80!blue}

\setbeamercolor{mini frame}{fg=white,bg=black}
\usepackage{etoolbox}
\patchcmd{\sectionentry}{\usebeamercolor[fg]{section in head/foot}}{\usebeamercolor[fg]{mini frame}}{}{}

\title{the title}
\author{John Doe}
\begin{document}

\section{S1}

\subsection{SS11}
\begin{frame}{Foo}
    Some text
\end{frame}
\begin{frame}{Bar}
    Some text
\end{frame}

\subsection{SS12}    
\begin{frame}{Baz}
    Some text
\end{frame}
\begin{frame}{Qux}
    Some text
\end{frame}

\section{S2}
\subsection{SS21}    
\begin{frame}{Buqz}
    Some text
\end{frame}

\subsection{SS22}
\begin{frame}{Bao}
    Some text
\end{frame}
\end{document}
  • +1 Now that I see your answer, I think I misread the OP's intent and my answer doesn't really solve the problem (yours does). I'll delete mine. – Gonzalo Medina Feb 16 '15 at 4:25

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.