用tikz命名\暂停在beamer中

时间:2017-08-15 14:50:37

标签: tex beamer tikz

我将问题简化为以下简单示例:

\documentclass{beamer}
\usepackage{tikz}
\begin{document}
\begin{frame}
\frametitle{Example:}

\pause
\begin{tikzpicture}
\draw (0,0) rectangle (2,2);
\pause
\draw (1,1) circle [radius=1cm];
\end{tikzpicture}

\pause
Comment

\end{frame}
\end{document}

我希望看到以下行为:

  • 幻灯片1:标题“示例:”
  • 幻灯片2:之前的内容和一个矩形
  • 幻灯片3:之前的内容和一个圆圈
  • 幻灯片4:之前的内容和“评论”

但是我得到了:

  • 幻灯片1:标题“示例:”
  • 幻灯片2:上一个内容,一个矩形和“评论”
  • 幻灯片3:标题“示例:”,矩形和圆圈
  • 幻灯片4:之前的内容和“评论”

换句话说,“评论”出现在幻灯片2(它不应该)和幻灯片4(它应该在哪里)。我知道在tikzpicture环境中使用\pause存在问题,我尝试了其他解决方案,例如\only,但它没有用。最后,我将我的图片分成两部分并在它们之间使用\vspace{-20.5mm},但这对于更复杂的图片来说是一个非常糟糕的解决方案,需要进行非常精细的调整。还有其他建议吗?

1 个答案:

答案 0 :(得分:3)

要选择暂停的外观顺序,您可以使用\onslide

\begin{frame}
  \frametitle{Example:}
  \onslide<2->{
    \begin{tikzpicture}
      \draw (0,0) rectangle (2,2);
      \onslide<3->{
          \draw (1,1) circle [radius=1cm];
      }
    \end{tikzpicture}
  }
  \onslide<4->{
    Comment
  }
\end{frame}

请参阅this example