我有两个columns
顶部对齐的frame
,我也希望它们也顶部对齐。一个column
是itemize
环境,另一个column
包含图形includegraphics
。
我在手册中看到,当奇怪的事情发生时,应该使用beamer
这个T
选项。这就是为什么我更喜欢把它T
作为默认选项,但这不是一个好主意,因为它不是实现正确的顶部对齐。
请参阅以下示例:
\documentclass{beamer}
% dummy text macro
\newcommand{\mylipsum}{bla bla bla bla bla bla bla bla bla bla bla bla bla bla}
\begin{document}
\begin{frame}[t]{A frame with 2 \texttt{columns}: \texttt{itemize} + \texttt{figure} }
\begin{columns}
\begin{column}{.5\textwidth}
\begin{itemize}
\item first item \mylipsum
\item second item \mylipsum
\item third item \mylipsum
\item fourth item \mylipsum
\end{itemize}
\end{column}
\begin{column}{.5\textwidth}
\includegraphics[width=\textwidth]{test_image.png}
\end{column}
\end{columns}
\end{frame}
\begin{frame}[t]{A frame with 2 \texttt{columns [T]}: \texttt{itemize} + \texttt{figure} }
\begin{columns}[T]
\begin{column}{.5\textwidth}
\begin{itemize}
\item first item \mylipsum
\item second item \mylipsum
\item third item \mylipsum
\item fourth item \mylipsum
\end{itemize}
\end{column}
\begin{column}{.5\textwidth}
\includegraphics[width=\textwidth]{test_image.png}
\end{column}
\end{columns}
\end{frame}
\end{document}
令人惊讶的是,使用该选项的情况T
会导致更糟糕的顶部对齐,如比较两个图形时所见(添加T
实际上会columns
向下移动......)。
为什么选项T
会向下移动columns
以及我在这里遗漏了什么?
我不确定它是否起到了作用,但这里是我正在使用的 beamer 和 XeTeX 的版本(根据使用 编译时的输出xelatex
):
This is XeTeX, Version 3.14159265-2.6-0.99992 (TeX Live 2015/Debian)
[...]
LaTeX2e <2016/02/01>
[...]
Document Class: beamer 2015/01/05 3.36 A class for typesetting presentations (rcs-revision 8a39122e1f63)
编辑:我不认为这个问题是重复的那个正如建议的那样:首先,没有一个答案可以解决这里提出的问题,这里的问题具体是关于选项的奇怪行为T
。
答案1
由于\begin{columns}[T]
列仅相对于其顶部边缘进行顶部对齐。但是在环境的顶部边缘下方,它们仍然有或itemize
的垂直距离。因此,您不仅需要对齐,还需要移除此距离。\topsep
\partopsep
columns
Stefan 对相关问题的回答定义一个环境myitemize
来执行此操作:
\documentclass{beamer}
% dummy text macro
\newcommand{\mylipsum}{bla bla bla bla bla bla bla bla bla bla bla bla bla bla}
\makeatletter
\newenvironment{myitemize}{%
\setlength{\topsep}{0pt}
\setlength{\partopsep}{0pt}
\renewcommand*{\@listi}{\leftmargin\leftmargini \parsep\z@ \topsep\z@ \itemsep\z@}
\let\@listI\@listi
\itemize
}{\enditemize}
\makeatother
\begin{document}
\begin{frame}[t]{A frame with 2 \texttt{columns}: \texttt{itemize} + \texttt{figure} }
\begin{columns}
\begin{column}{.5\textwidth}
\begin{itemize}
\item first item \mylipsum
\item second item \mylipsum
\item third item \mylipsum
\item fourth item \mylipsum
\end{itemize}
\end{column}
\begin{column}{.5\textwidth}
\includegraphics[width=\textwidth,height=.7\textheight]{example-image}
\end{column}
\end{columns}
\end{frame}
\begin{frame}[t]{A frame with 2 \texttt{columns [T]}: \texttt{itemize} + \texttt{figure} }
\begin{columns}[T]
\begin{column}{.5\textwidth}
\begin{itemize}
\item first item \mylipsum
\item second item \mylipsum
\item third item \mylipsum
\item fourth item \mylipsum
\end{itemize}
\end{column}
\begin{column}{.5\textwidth}
\includegraphics[width=\textwidth,height=.7\textheight]{example-image}
\end{column}
\end{columns}
\end{frame}
\begin{frame}[t]{A frame with 2 \texttt{columns [T]}: \texttt{myitemize} + \texttt{figure} }
\begin{columns}[T]
\begin{column}{.5\textwidth}
\begin{myitemize}
\item first item \mylipsum
\item second item \mylipsum
\item third item \mylipsum
\item fourth item \mylipsum
\end{myitemize}
\end{column}
\begin{column}{.5\textwidth}
\includegraphics[width=\textwidth,height=.7\textheight]{example-image}
\end{column}
\end{columns}
\end{frame}
\end{document}