Alinear verticalmente el contenido de la minipágina

Alinear verticalmente el contenido de la minipágina

Con el proyector de látex me gustaría alinear superiormente el contenido en minipáginas o un entorno similar a la misma altura como si no hubiera una minipágina presente.

Ejemplo mínimo:

\documentclass[t]{beamer}
\usepackage{tikz}

\begin{document}
\setlength\pdfpageheight{1.60cm}%
\setlength\pdfpagewidth{6cm}%

\begin{frame}{A\strut}
        \begin{itemize}
            \item X
        \end{itemize}
\end{frame}

\begin{frame}{B\strut}
    \begin{minipage}[t]{2cm}
        \vskip 0pt%
        \begin{itemize}
            \item X
        \end{itemize}
    \end{minipage}%
    \nolinebreak%
\begin{minipage}[t]{2cm}
        \vskip 0pt%
        \begin{tikzpicture}
            \node[fill=gray,minimum width=2cm,minimum height=1cm] {};
        \end{tikzpicture}
    \end{minipage}%
\end{frame}

\begin{frame}{C\strut}
        \begin{tikzpicture}
            \node[fill=gray,minimum width=4cm,minimum height=1cm] {};
        \end{tikzpicture}
\end{frame}

\end{document}

Como se puede ver, la \item Xalineación superior es diferente en los cuadros A y B, la tikzpicturealineación superior es diferente en los cuadros B y C, y lo que es más confuso, la diferencia en la alineación también difiere entre \item Xy tikzpicture.

Alineación superior diferente debido al uso de minipáginas

  • ¿Qué está causando estas diferentes alineaciones?
  • ¿Cómo se puede cambiar la alineación en el cuadro B para que sea la misma que en los cuadros A y C?

Respuesta1

Alineación superior, no línea base

\begin{minipage}[t]alinea las minipáginas con la línea base de la primera línea de contenido. Como ya se usó en la pregunta, comenzar minipagecon a \vskip 0pt%hace que la línea de base esté en la parte superior de la minipágina, lo que produce una verdadera alineación superior.

Poner el minipageen modo horizontal

Para obtener el mismo comportamiento en la minipágina que en el exterior, la minipágina debe ponerse en modo horizontal con \leavemode%, seguido de \vskip -\baselineskip%para corregir el desplazamiento vertical.

Poniendolo todo junto

El efecto deseado se puede crear iniciando cada minipágina de la siguiente manera:

\begin{minipage}[t]{2cm}
    \leavevmode%
    \vskip 0pt%
    \vskip -\baselineskip%

Ejemplo mínimo completo:

\documentclass[t]{beamer}

\usepackage{tikz}

\begin{document}

\setlength\pdfpageheight{1.6cm}%
\setlength\pdfpagewidth{6cm}%

\begin{frame}{A\strut}
        \begin{itemize}
            \item X
        \end{itemize}
\end{frame}

\begin{frame}{B\strut}
    \begin{minipage}[t]{2cm}%
        \leavevmode%
        \vskip 0pt%
        \vskip -\baselineskip%
        \begin{itemize}
            \item X
        \end{itemize}
    \end{minipage}%
    \nolinebreak%
    \begin{minipage}[t]{2cm}%
        \leavevmode%
        \vskip 0pt%
        \vskip -\baselineskip%
        \begin{tikzpicture}
            \node[fill=gray,minimum width=2cm,minimum height=0.55cm] {};
        \end{tikzpicture}
    \end{minipage}%
\end{frame}

\begin{frame}{C\strut}
        \begin{tikzpicture}
            \node[fill=gray,minimum width=4cm,minimum height=0.55cm] {};
        \end{tikzpicture}
\end{frame}

-\end{document}

Todo correctamente alineado

Respuesta2

¿Es esto lo que buscas?

ingrese la descripción de la imagen aquí

\documentclass[t]{beamer}
\usepackage{tikz}
\begin{document}

\begin{frame}
\begin{minipage}[t]{.1\textwidth}
A
\end{minipage}
\begin{minipage}[t]{.2\textwidth}
    \begin{itemize}
    \item X
    \item Y
    \item Z
    \end{itemize}
\end{minipage}
\begin{minipage}[t]{.3\textwidth}
    \begin{tikzpicture}
            \node[fill=gray,minimum width=2cm,minimum height=1cm] {tikz};
        \end{tikzpicture}
\end{minipage}

\end{frame}
\end{document}

También por favor vea--https://tex.stackexchange.com/a/272260/197451por problema con el\itemize

Si cree que la respuesta cumple con sus requisitos, vote a favor de la respuesta haciendo clic en el triángulo rojo a la izquierda y en la marca de verificación debajo.

información relacionada