动画协议

动画协议

我正在制作一个beamer关于网络协议的演示文稿。我喜欢在幻灯片中放一些非常简单的动画,比如从发送者延伸到接收者,显示网络消息的流动。

我看到过类似这样的 LaTeX 软件包animate可以做到这一点。但我认为它们有点矫枉过正。

或者说,他们不是吗?嗯,我不知道。

有没有简单的方法可以实现我想要的效果?

答案1

beamer 有一种\animate方法可以自动连续播放幻灯片。您只需创建“定格”幻灯片即可。例如:

\documentclass{beamer}
\usepackage{tikz}

\begin{document}

\begin{frame}
\begin{tikzpicture}[every node/.style={draw}]
\node (s) {sender};
\node (r) at (5,0) {receiver};
\animate<2-10>
\foreach \pos in {0.1,0.2,...,1.0} {
  \action<+>{
    \path (s) -- (r) node[pos=\pos,coordinate] (p) {};
    \draw[->] (s) -- (p);
  }
}
\end{tikzpicture}
\end{frame}

\end{document}

在 Adob​​e Reader 中打开 PDF 并启用全屏模式。单击后,您将看到箭头从发送者动画延伸到接收者。

答案2

我认为,为此目的使用“动画”LaTeX 包并不算过分:

\documentclass{beamer}
\usepackage{tikz}
\usepackage{animate}

\begin{document}

\begin{frame}
\begin{animateinline}[loop]{10}
  \multiframe{10}{rPos=0.1+0.1}{
    \begin{tikzpicture}[every node/.style={draw}]
    \node (s) {sender};
    \node (r) at (5,0) {receiver};
    \path (s) -- (r) node[pos=\rPos,coordinate] (p) {};
    \draw[->] (s) -- (p);
    \end{tikzpicture}
  }
\end{animateinline}
\end{frame}

\end{document}

代码行数与 Matthews 的示例大致相同。动画可以配置为循环播放帧。

相关内容