2

I am preparing a Beamer presentation.

In one frame I have a bulletpoints list (itemize).

I would like to show some small images (logo) in each item of the itemize, together with the text.

I have two situations, neither of which is ideal.

In the first case, I have:

\documentclass{beamer}
\begin{document}
\begin{frame}{Introduction}
\centering
{  \textbf{Quantum Information Processing}}

\begin{itemize}[<+->] 
    
    \item \includegraphics<1->[width=0.9cm]{example-image-duck} University of Oxford  
    \item \includegraphics<2->[width=2.5cm]{example-image-duck} Université de Montréal
    \item \includegraphics<3->[width=2cm]{example-image-duck} Université du Quebec 
    
\end{itemize}
\end{frame}
\end{document}

The problem with this code is that the images in the later items do not "take space" when they are not shown, so in the second overlay the position of the first item "jumps", with respect to the first overlay, and so on.

On the other hand, if I have:

\documentclass{beamer}
\begin{document}
\begin{frame}{Introduction}
\centering
{  \textbf{Quantum Information Processing}}

\begin{itemize}[<+->] 
    
    \item \includegraphics[width=0.9cm]{example-image-duck} University of Oxford  
    \item \includegraphics[width=2.5cm]{example-image-duck} Université de Montréal
    \item \includegraphics[width=2cm]{example-image-duck} Université du Quebec 
    
\end{itemize}
\end{frame}
\end{document}

the later images are shown in all the overlays, also when the "items" they are in are not shown.

I have seen similar questions here, such as this, but their situations and requirements are slightly different.

Thanks in advance for any help!

3
  • 1
    As always please make sure (1) your example is complete such that others can copy and test without adding anything, (2) it does not use data others do not have access to. Here you're images are not something we have access to. Use the images that comes with ctan.org/tex-archive/macros/latex/contrib/mwe, everyone have access to those.
    – daleif
    Dec 5, 2022 at 13:21
  • 1
    Regarding (1), as far as I remember valign is not a standard \includegraphics key, so you might be using packages we do not know about. Again, always make complete examples.
    – daleif
    Dec 5, 2022 at 13:22
  • 1
    thank you for your suggestions @daleif, I have applied all of them (I think..)
    – Fabio
    Dec 6, 2022 at 13:25

2 Answers 2

3

While I prefer my frames to be all top aligned (it's also available as a class option), with

\setbeamercovered{transparent=5}

your graphics don't ovserve that setting while they are “covered”.

The manual states in section 17.6 Transparency Effects

Ideally, there would be an option to make covered text “transparent.” […] Unfortunately, pgf does not support real transparency yet. Instead, transparency is created by mixing the color of the object you want to show with the current background color (the color bg, which has hopefully been setup such that it is the average color of the background on which the object should be placed). To install this effect, you can use:

 \setbeamercovered{transparent}

[…] The transparency effect will automatically apply to all colors, except for the colors in images. For images there is a workaround, see the documentation of the pgf package.

(PGF handles the vector graphics side of Beamer (not \includegraphics, though.))

This means that you need to have transparent versions of your images named in a very specific format available. See also the documentation of the xxcolor package.

That would be too much work for me (especially a day before the deadline).


If you will be okay with no transparency on this frame you could just use

\setbeamercovered{invisible}

which is the default or you can use

\begin{itemize}[<visible@+->]
   % …
\end{itemize}

which doesn't use the default \uncover way of handling the overlays but the \visible one.

Code

\documentclass{beamer}
\setbeamercovered{transparent=5}
\usepackage[export]{adjustbox}
\begin{document}
\begin{frame}{Introduction}
             %{Quantum Information Processing} % subtitle?
{\centering % \centering doesn't take an argument
 \textbf{Quantum Information Processing}\par}

\begin{itemize}[<visible@+->]
\item \includegraphics[width=0.9cm, valign=c]{example-image-a}
      University of Oxford
\item \includegraphics[width=2.5cm, valign=c]{example-image-b}
      Université de Montréal
\item \includegraphics[width=2cm,   valign=c]{example-image-c}
      Université du Quebec
\end{itemize}
\end{frame}
\end{document}
7
  • sorry, with your code the images are shown all the time, i.e. all three images are already present in the first overlay
    – Fabio
    Dec 5, 2022 at 17:11
  • Actually, using your mwe everything works. But implementing this in my presentation has the images shown all the time. My presentation is tomorrow, so I will use the "top alignment" solution for the time being, and I will come back to you asap, to understand why your solution doesn't work for me!
    – Fabio
    Dec 5, 2022 at 17:22
  • Ok, I understand the problem: in my presentation I use \setbeamercovered{transparent=5} And this is incompatible with your solution. If I add \setbeamercovered{transparent=5} in the header of your mwe, all the images show in all the overlays, before the text appears.
    – Fabio
    Dec 6, 2022 at 13:09
  • 1
    @Fabio Ah, now your second part of your question makes sense. Well, do you want the pictures to transparent=5, too, or should the images as well as the text be completely hidden? The latter is easy. The former is a different question, in my opinion. Dec 6, 2022 at 14:13
  • 1
    @Fabio I've updated my answer (wasn't really aware of \setbeamercovered and how it pertains to \uncover and \(in)visible). I also gave few hints on how to have the images be transparent, too. It's not so trivial … Dec 6, 2022 at 15:18
3

The easiest way to avoid jumping is to use a top aligned frame:

\documentclass{beamer}

\usepackage[export]{adjustbox}
\begin{document}
    
\begin{frame}[t]
\frametitle{Introduction}
\centering
{  \textbf{Quantum Information Processing}}

\begin{itemize}[<+->] 
    
    \item \includegraphics<1->[width=0.9cm,valign=c]{example-image-duck} University of Oxford  
    \item \includegraphics<2->[width=2.5cm,valign=c]{example-image-duck} Université de Montréal
    \item \includegraphics<3->[width=2cm,valign=c]{example-image-duck} Université du Quebec 
    
\end{itemize}
\end{frame}
    
\end{document}

enter image description here

3
  • 1
    I don't know if it's considered bad style or whatever but I always use t as a class option so that all frames are top-aligned. It looks much better to me. Dec 5, 2022 at 13:52
  • @Qrrbrbirlbel I'm also using t for most of my presentations. Leaving aside any aesthetic reasons, this has the advantage that the top of the projection is less likely to be obscured by someone tall sitting in front of one in the auditorium :) Dec 5, 2022 at 13:55
  • This solution actually works! I would prefer a solution more "technical", as the one with "\uncover", which in my case doesn't work...
    – Fabio
    Dec 5, 2022 at 17:20

You must log in to answer this question.

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