avoiding transparent caption in beamer/latex

Viewed 276

I am trying to insert a figure but its caption is transparent in the current page. how to prevent this? many thanks in advance.

    \documentclass{beamer}
\usetheme{Ilmenau}
\setbeamercovered{transparent}
\setbeamercolor*{item}{fg=blue}

\usepackage{caption}
\captionsetup{font=scriptsize,labelfont=scriptsize}
\usepackage{hyperref}
\hypersetup{urlcolor=blue}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}

\title{DNA - Computing}
\author{Aleyna Acikyol \& Alina Grahic
}
\begin{document}
    \begin{frame}[plain]
        \maketitle
    \end{frame}
    
    %5 FOTO
    \begin{frame}{Probleme heutiger Computer (3)}
        %\begin{enumerate}
        %   \item \textcolor{blue}{Transistoren:}
        \begin{itemize}
            \item \textcolor{blue}{Transistoren:}
            \begin{itemize}
                \item kleiner geht nicht
                \item Ausgleich mit Multicores /Multiprozessorsysteme
            \end{itemize}
        \end{itemize}
        \pause
        \begin{figure}  
            %\begin{itemize}
            \begin{columns}
                \column{0.50\linewidth}
                \centering
                \includegraphics[height=3cm, width=3cm]{./5.jpg}\caption{diverse Datenträger im Privatgebrauch}
                
                \column{0.50\linewidth}     
                \centering
                \includegraphics[height=3cm, width=3cm]{./5.2.jpg}\caption{Data Centre, Cloud}
            \end{columns} 
            %\end{itemize}
        \end{figure}
        %\end{enumerate}    
    \end{frame}
    
\end{document}

It looks like this

1 Answers

The caption is transparent because you are using \setbeamercovered{transparent}. You have two options to avoid the transparent caption:

  1. immediately show the images and caption by avoid the \pause in front of them

  2. switching to \setbeamercovered{invisible} either temporarily or for the whole presentation to delay the images and caption to the next overlay:

\documentclass{beamer}
\usetheme{Ilmenau}
\setbeamercovered{transparent}
\setbeamercolor*{item}{fg=blue}
\setbeamerfont{caption}{size=\scriptsize}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}

\title{DNA - Computing}
\author{Aleyna Acikyol \& Alina Grahic
}
\begin{document}
    \begin{frame}[plain]
        \maketitle
    \end{frame}
    
    %5 FOTO
    \begin{frame}
      \frametitle{Probleme heutiger Computer (3)}
        %\begin{enumerate}
        %   \item \textcolor{blue}{Transistoren:}
        \begin{itemize}
            \item \textcolor{blue}{Transistoren:}
            \begin{itemize}
                \item kleiner geht nicht
                \item Ausgleich mit Multicores /Multiprozessorsysteme
            \end{itemize}
        \end{itemize}
        {
        \setbeamercovered{invisible}
        \pause
        \begin{figure}  
            %\begin{itemize}
            \begin{columns}
                \column{0.50\linewidth}
                \centering
                \includegraphics[height=3cm, width=3cm]{example-image-duck}\caption{diverse Datenträger im Privatgebrauch}
                
                \column{0.50\linewidth}     
                \centering
                \includegraphics[height=3cm, width=3cm]{example-image-duck}\caption{Data Centre, Cloud}
            \end{columns} 
            %\end{itemize}
        \end{figure}
        %\end{enumerate}    
        }
    \end{frame}
    
\end{document}

Some other comments:

  • you don't need \usepackage{hyperref}, beamer already loads it

  • I'd be wary to use \hypersetup{urlcolor=blue} with beamer, this can lead to strange alternations to the carefully constructed colour themes of beamer in places one would never expect

  • If your tex distribution was updated within the last 5 years or so, you don't need \usepackage[utf8]{inputenc}, that's now the default

  • If you just want to change the font size of the caption, you don't actually need the caption package, beamer has its own mechanism to control the size of captions

  • Instead of \begin{frame}{...} I would use \frametitle{...}. That's much more flexible and powerful

  • If you specify both the width and height of your images, they will end up distorted. Please consider adding the keepaspectratio option to avoid this

  • to avoid manually repeating the same frame title several times ("Probleme heutiger Computer (3)") you could use overlays and add the slide in frame counter to the frametitle

Related