Alinear imágenes verticalmente en el proyector

Alinear imágenes verticalmente en el proyector

Tengo una secuencia de imágenes que me gustaría animar beamer. En cada cuadro, me gustaría tener dos imágenes, digamos A y B, alineadas verticalmente y centradas en la página. Todas las imágenes son del mismo tamaño.

Intenté alinear las imágenes usando \vspace{}, pero luego los espacios verticales se acumulan y las imágenes se deslizan hacia abajo a medida que paso a través de ellos.

¿Cómo debo alinear las imágenes en cada cuadro?

Aquí hay un ejemplo de trabajo mínimo:

\documentclass{beamer}
\begin{document}
\frame{
    \begin{figure}[t!]
    \includegraphics<1>[scale=.5]{fig/imageA1} \vspace{.1in}        
    \includegraphics<1>[scale=.5]{fig/imageB1}

    \includegraphics<2>[scale=.5]{fig/imageA2} \vspace{.1in}        
    \includegraphics<2>[scale=.5]{fig/imageB2} 

    \includegraphics<3>[scale=.5]{fig/imageA3} \vspace{.1in}        
    \includegraphics<3>[scale=.5]{fig/imageB3}

    \includegraphics<4>[scale=.5]{fig/imageA4} \vspace{.1in}        
    \includegraphics<4>[scale=.5]{fig/imageB4} 

      \end{figure} 
    }   
\end{document}

Respuesta1

El uso de entornos flotantes (como figureo table) en un marco no funciona como debería. Para lograr tu objetivo, enciende allowpagebreaky T. Ajusta los gráficos con heightla opción. Consulte el código a continuación para conocer el resto.

ingrese la descripción de la imagen aquí

\documentclass{beamer}
\usepackage{graphicx}
\begin{document}
\frame[allowpagebreak,T]
{%
        \only<1>
        {%
            \centering
            \includegraphics[height=\dimexpr0.5\textheight-0.5in]{example-image-a}

            \vfill
            \includegraphics[height=\dimexpr0.5\textheight-0.5in]{example-image-a}
        }%

        \only<2>
        {%
            \centering
            \includegraphics[height=\dimexpr0.5\textheight-0.5in]{example-image-b}

            \vfill
            \includegraphics[height=\dimexpr0.5\textheight-0.5in]{example-image-b}
        }%

        \only<3>
        {%
            \centering
            \includegraphics[height=\dimexpr0.5\textheight-0.5in]{example-image-c}

            \vfill
            \includegraphics[height=\dimexpr0.5\textheight-0.5in]{example-image-c}
        }%

        \only<4>
        {%
            \centering
            \includegraphics[height=\dimexpr0.5\textheight-0.5in]{example-image}

            \vfill
            \includegraphics[height=\dimexpr0.5\textheight-0.5in]{example-image}
        }%
}
\end{document}

Para crear animaciones GIF, consultemi otra respuesta aquí.

Respuesta2

En lugar de \vspace, puedes utilizar \\para forzar un salto de línea.

\documentclass{beamer}
\begin{document}
\frame{
    \begin{figure}[t!]
    \includegraphics<1>[scale=.5]{img} \\
    \includegraphics<1>[scale=.5]{img}

    \includegraphics<2>[scale=.5]{img} \\
    \includegraphics<2>[scale=.5]{img} 

    \includegraphics<3>[scale=.5]{img} \\
    \includegraphics<3>[scale=.5]{img}

    \includegraphics<4>[scale=.5]{img} \\
    \includegraphics<4>[scale=.5]{img} 

      \end{figure} 
    }   
\end{document}

Respuesta3

Si solo tiene un salto de línea en total en lugar de uno para cada par de imágenes, su problema debería desaparecer. El punto es que su \vspace{.1in}comando no está enmascarado por <1>, <2>, <3>o <4>:

\documentclass{beamer}
\begin{document}
\frame{
  \begin{figure}[t!]
    \includegraphics<1>[scale=.5]{fig/imageA1}
    \includegraphics<2>[scale=.5]{fig/imageA2}
    \includegraphics<3>[scale=.5]{fig/imageA3}
    \includegraphics<4>[scale=.5]{fig/imageA4}
    \vspace{.1in}        
    \includegraphics<1>[scale=.5]{fig/imageB1}
    \includegraphics<2>[scale=.5]{fig/imageB2}
    \includegraphics<3>[scale=.5]{fig/imageB3}
    \includegraphics<4>[scale=.5]{fig/imageB4}
  \end{figure} 
}   
\end{document}

información relacionada