在 Beamer 中,如何防止 \includemovie 重新启动 swf 动画?

在 Beamer 中,如何防止 \includemovie 重新启动 swf 动画?

在此帧上,幻灯片打开后会开始播放 3 个 swf 动画。我想阻止它们自动循环播放。我尝试了几个选项,但都没有成功,例如endat=frame:10repeat=0

这种行为似乎是 swf 文件所特有的。我之前使用的是 mp4,它不会自动重新启动。不幸的是,该页面上有三个动画导致 Adob​​e Reader 极度不稳定,这就是我将文件转换为 swf 的原因。

以下是代码:

\frame{
\frametitle{Example 2}
Double cantilever beam
\vfill
\begin{columns}[l]
   \column{0.33\textwidth}
     \includemovie[autoplay,mouse]{1.\textwidth}{5em}{Pics/Cubic_D_Struct_AnisoShear.swf}
     \small{discrete pre-crack}\\
     \small{cubic function} 
   \column{0.33\textwidth}
     \includemovie[autoplay,mouse]{1.\textwidth}{5em}{Pics/Quad_D_Struct_AnisoShear.swf}
     \small{discrete precrack} \\
     \small{quadratic function} 
   \column{0.33\textwidth}
     \includemovie[autoplay,mouse]{1.\textwidth}{5em}{Pics/Cubic_Struct_AnisoShear.swf}
     \small{modelled pre-crack} \\
     \small{cubic function} 
\end{columns}
\vfill
} %%%

答案1

这可以使用原始 MP4/h264 文件和包来实现media9

VPlayer.swf默认情况下,该软件包的视频播放器组件media9不会循环播放 MP4 视频,而是在播放结束后保留​​最后一帧。

在下面的示例中,打开文档/页面后立即开始播放三个视频(这要归功于 Flash 变量设置)。该示例使用 CTAN 包中的autoPlay=true文件cube.mp4和。cubeposter.pngmedia9

\documentclass{beamer}
\usepackage{media9}

\begin{document}
\begin{frame}{Three Video Example}

\includemedia[
  label=vid1,
  width=0.33\linewidth,
  addresource=cube.mp4,
  activate=pageopen,
  flashvars={
     source=cube.mp4
    &autoPlay=true
  }
]{\includegraphics{cubeposter}}{VPlayer.swf}\hfill%
\includemedia[
  label=vid2,
  width=0.33\linewidth,
  addresource=cube.mp4,
  activate=pageopen,
  flashvars={
     source=cube.mp4
    &autoPlay=true
  }
]{\includegraphics{cubeposter}}{VPlayer.swf}\hfill%
\includemedia[
  label=vid3,
  width=0.33\linewidth,
  addresource=cube.mp4,
  activate=pageopen,
  flashvars={
     source=cube.mp4
    &autoPlay=true
  }
]{\includegraphics{cubeposter}}{VPlayer.swf}

\centerline{\mediabutton[
  mediacommand=vid1:play,
  mediacommand=vid2:play,
  mediacommand=vid3:play
]{\fbox{Play all at once}}}
\end{frame}
\end{document}

相关内容