
Me gustaría una diapositiva con dos columnas en las que una columna sea texto y la otra sea una imagen tikz. El problema es que cuando hago de una columna una imagen tikz, no permite que el texto comience en la parte superior de la página, sino que lo empuja por debajo del nivel de la imagen tikz. Cualquier consejo sería muy apreciado. El código fuente que ilustra esto se encuentra a continuación:
\documentclass[10pt]{beamer}
\title{My title is quite short}
\author[My Team]{My Name}
\date{\today}
\usepackage{tikz}
\begin{document}
\begin{frame}[t]
\frametitle{My slide title -- What I want}
Both columns start from the top of the page, which is what I want. I
just want one column to be a tikz drawing.
\begin{columns}[t]
\begin{column}{0.5\textwidth}
\begin{itemize}
\item A
\item A
\item A
\end{itemize}
\end{column}
\begin{column}{0.5\textwidth}
\begin{itemize}
\item B
\item B
\item B
\end{itemize}
\end{column}
\end{columns}
\end{frame}
\begin{frame}[t]
\frametitle{My slide title -- Not what I want}
The text column begins vertically where the tikz picture ends.
\begin{columns}[t]
\begin{column}{0.5\textwidth}
\begin{itemize}
\item A
\item A
\item A
\end{itemize}
\end{column}
\begin{column}{0.5\textwidth}
\begin{tikzpicture}
\draw (0,0) circle (1cm);
\draw (0,-2) circle (1cm);
\end{tikzpicture}
\end{column}
\end{columns}
\end{frame}
\end{document}
Respuesta1
Puede utilizar un valor apropiado para la baseline
opción; Por ejemplo current bounding box.north
:
\documentclass[10pt]{beamer}
\usepackage{tikz}
\begin{document}
\begin{frame}[t]
\frametitle{My slide title -- What I want}
Both columns start from the top of the page, which is what I want. I
just want one column to be a tikz drawing.
\begin{columns}[t]
\begin{column}{0.5\textwidth}
\begin{itemize}
\item A
\item A
\item A
\end{itemize}
\end{column}
\begin{column}{0.5\textwidth}
\begin{tikzpicture}[baseline=(current bounding box.north)]
\draw (0,0) circle (1cm);
\draw (0,-2) circle (1cm);
\end{tikzpicture}
\end{column}
\end{columns}
\end{frame}
\end{document}
Respuesta2
beamer
proporcionados modos superiores:
t
hará que las primeras líneas de las columnas estén alineadas. Predeterminado sit
se utiliza la opción global.T
es similar a lat
opción, peroT
alinea la parte superior de las primeras líneas mientrast
alinea las llamadas líneas de base de las primeras líneas. Si parecen suceder cosas extrañas junto con lat
opción (por ejemplo, si un gráfico de repente "baja" con lat
opción en lugar de "subir"), intente usar esta opción en su lugar.
Aquí su ejemplo usando T
en lugar de t
:
\begin{frame}[t]
\frametitle{My slide title -- Not what I want}
The text column begins vertically where the tikz picture ends.
% T instead of t !!!
\begin{columns}[T]
\begin{column}{0.5\textwidth}
\begin{itemize}
\item A
\item A
\item A
\end{itemize}
\end{column}
\begin{column}{0.5\textwidth}
\begin{tikzpicture}
\draw (0,0) circle (1cm);
\draw (0,-2) circle (1cm);
\end{tikzpicture}
\end{column}
\end{columns}
\end{frame}
Respuesta3
Tengo una solución parcial. Carga \usepackage{multicol}
y luego puedes hacer:
\begin{multicols}{2}
\begin{itemize}
\item A
\item A
\item A
\vfill
\end{itemize}
\begin{tikzpicture}
\draw (0,0) circle (1cm);
\draw (0,-2) circle (1cm);
\end{tikzpicture}
\end{multicols}