# Additional Question to “Transparent image background in beamer” from 2012

In Transparent image background in beamer there is a nice example to find showing a background image with text in front of it.

I would like to show the picture in a first step and "dim it down" (e.g. with a partly transparent white block in front of it) in a second step to show some step. As far as I know (a test showed it, too) it is not possible to use \visible out of the frame-environment.

What do I have to do?

• Welcome to TeX.SX. Could be possible to change opacity in second and following slides? – Ignasi Oct 23 '14 at 15:35
• You can define styles which would enable you to easily change the opacity from one slide to the next in the same way as you can for integrating things like onslide into TiKZ pictures. (There are several questions around about doing this.) – cfr Oct 23 '14 at 15:59
• Unfortunately, I can't figure out how to get it to work with a background template :(. – cfr Oct 23 '14 at 16:14
• You could always edit the picture itself. – John Kormylo Oct 23 '14 at 21:37

Using a macros (e.g. \opacity) works.

\documentclass{beamer}
\usepackage{tikz}
\usepackage{mwe}% for example-image

\newcommand{\opacity}{1}% To make sure you aren't overwriting an existing macro.

\usebackgroundtemplate{%
\tikz\node[opacity=\opacity,inner sep=0pt]%
{\includegraphics[height=\paperheight,width=\paperwidth]{example-image}};}

\begin{document}
\def\opacity{0.3}% plain TeX version of \renewcommand{\opacity}{0.3}
\begin{frame}
first frame
\end{frame}

\def\opacity{1}
\begin{frame}
second frame
\end{frame}

\end{document}


• Thanks a lot, this is near to perfect. But what if I want to change the opacity within a single frame? Or, alternatively, do something like <pre>\begin{document} \onslide<+->{ \def\opacity{0.3}% plain TeX version of \renewcommand{\opacity}{0.3} }\onslide<+->{ \def\opacity{1} \begin{frame} first frame \end{frame} } \end{document} <code> – Jürgen Oct 24 '14 at 5:58
• I am sorry, I have to figure out how to insert code blocks correctly ... – Jürgen Oct 24 '14 at 6:05
• Probably you can use a construction with \againframe. Thus you only have to write your frame once, but you can change the opacity in the same way as shown before. – crixstox Oct 24 '14 at 8:04
• Thanks, I will have a look at it. Alternatively it seems to be possible to use the mdframed package to get something similar (not the whole background will be partly hidden but only the background of the text portion of the slide; perhaps the even better solution). – Jürgen Oct 24 '14 at 8:30
• Are we taking shading or \pause? – John Kormylo Oct 24 '14 at 15:52