Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

I am using a beamer frame in which the top has alternating list items, and the bottom has a picture. The problem is that because of the different number of rows for each item, the picture changes vertical position as I move between list items, as I show in the following code. Does anyone know how to "stick" it in place, at the bottom?

\documentclass{beamer}
\begin{document}
  \begin{frame}[t]{System overview}
  \begin{minipage}{\textwidth}
    \begin{itemize}
      \item<1|only@1> item1 (a single row)
      \item<2|only@2> item2 \\ has 2 rows
      \item<3|only@3> item3
    \end{itemize}
  \end{minipage}
  \vfill
  \begin{minipage}{\textwidth}
    \centering
    \includegraphics[scale=0.65]{picture.jpg}
  \end{minipage}
\end{frame}
\end{document}
share|improve this question

2 Answers 2

up vote 2 down vote accepted

Assign a defined height to the top minipage:

\documentclass{beamer}
\begin{document}
  \begin{frame}[t]{System overview}
  \begin{minipage}[t][0.5\textheight][t]{\textwidth}
    \begin{itemize}
      \item<1|only@1> item1 (a single row)
      \item<2|only@2> item2 \\ has 2 rows
      \item<3|only@3> item3
    \end{itemize}
  \end{minipage}
  \vfill
  \begin{minipage}{\textwidth}
    \centering
    \includegraphics[scale=0.65]{picture.jpg}
  \end{minipage}
\end{frame}
\end{document}
share|improve this answer

Try \vskip0pt plus 1filll instead

\documentclass[demo]{beamer}

\begin{document}
  \begin{frame}[t]{System overview}
  \begin{minipage}{\textwidth}
    \begin{itemize}
      \item<1|only@1> item1 (a single row)
      \item<2|only@2> item2 \\ has 2 rows
      \item<3|only@3> item3
    \end{itemize}
  \end{minipage}
\vskip0pt plus 1filll
  \begin{minipage}{\textwidth}
    \centering
    \includegraphics[scale=0.65]{picture.jpg}
  \end{minipage}
\end{frame}
\end{document}

This is what beameruserguide suggests.

share|improve this answer
    
That's excellent. Where does the user guide suggest this if you don't mind me asking? I was unable to find it. –  Roelof Spijker Jan 23 '12 at 11:29
    
In my copy it can be found on page 62. (The very last example). –  bloodworks Jan 23 '12 at 12:33
    
+1 That is indeed cool (and preferable too my suggestion of explicitly specifying the minipage's height). –  Daniel Jan 23 '12 at 12:40
    
I see, too bad that it does not explain exactly what is going on. (That is, why it is even required, apparently there is some vfill generated at the end of the frame, but I can't find it specified anywhere, short of going through the code by hand). Thanks anyway :) –  Roelof Spijker Jan 23 '12 at 13:29
3  
There are different stretchable spaces with different names, the more l's you add the more priority the space has. I believe you can put 1, 2 or 3 of them. The plus in command says to TeX "increase the 0pt by vfilll if you get smaller badness (badness measures how "nice" is the output). –  tohecz Jan 23 '12 at 19:20

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.