How to pause figures in beamer

You can also use

\visible<1>{content}

in order to have content only visible on slide 1, but reserve space for it on the other slides. This may help you with your positioning problem.


You can use \only:

\documentclass{beamer}
\setbeamercovered{dynamic}

\begin{document}

\begin{frame}
\centering
\only<1->{\includegraphics[width=4cm]{ctanlion}}
\only<2>{\includegraphics[width=4cm]{ctanlion}}\par
\end{frame}

\end{document}

To preserve the relative position in slide one, you can use overlayarea:

\documentclass{beamer}
\setbeamercovered{dynamic}

\begin{document}

\begin{frame}
\vskip10pt
\begin{overlayarea}{\textwidth}{.45\textheight}
  \centering
  \only<1-|handout:0>{\includegraphics[width=4cm]{ctanlion1}}
\end{overlayarea}%
\begin{overlayarea}{\textwidth}{.45\textheight}
  \centering
  \only<2>{\includegraphics[width=4cm]{ctanlion2}}
\end{overlayarea}
\end{frame}

\end{document}

and, since \includegraphics is overlay-aware, you can also say

\documentclass{beamer}
\setbeamercovered{dynamic}

\begin{document}

\begin{frame}
\vskip10pt
\begin{overlayarea}{\textwidth}{.45\textheight}
  \centering
  \includegraphics<1-|handout:0>[width=4cm]{ctanlion}
\end{overlayarea}%
\begin{overlayarea}{\textwidth}{.45\textheight}
  \centering
  \includegraphics<2>[width=4cm]{ctanlion}
\end{overlayarea}
\end{frame}

\end{document}

or, even simpler, \visible, as suggested by silvado; here's a complete version of the code:

\documentclass{beamer}
\setbeamercovered{dynamic}

\begin{document}

\begin{frame}
  \centering
  \visible<1-|handout:0>{\includegraphics[width=4cm]{ctanlion1}\\}
  \visible<2>{\includegraphics[width=4cm]{ctanlion2}}\par
\end{frame}

\end{document}

I have just answered a very similar question here on tex.stackexchange, and I figured it would be a good solution for your problem too.

So, in short, your code is almost perfect if you download this custom style file and add it with a usepackage statement:

\documentclass{beamer}

%% %% %% ADD THIS LINE
\usepackage{fixpauseincludegraphics}

\usetheme{Copenhagen}
\setbeamercovered{dynamic}

\begin{document}

\begin{frame}
\centering
\includegraphics{gfx/img1} \\
\pause
\includegraphics{gfx/img2}
\end{frame}

\end{document}

(the style file contains a rewritten version of \includegraphics that will draw your image with some added opacity).