又是我 :-(
系统:Windows 7,MikTeX 2.9,WinEdt 7,LaTeX->Dvips->ps2pdf 管道
试与一年前相同的动画- 只是为了具体一点。今年我教的是多元微积分,所以我的需求会有点不同,而且这次我的目标会更高一些。
下面你可以看到我想嵌入到 PowerDot 演示文稿的一个动画
它是 64 帧 GIF。文件大小约为 150 kB。众所周知,我们不能混合使用 .gif 和 .eps(唉),所以必须做出一些让步。动画是由 Mathematica 生成的,所以我可以选择将其(以及单个帧)导出为 .eps、.gif、.swf、.avi、.png 格式。
去年我设法使用媒体9。该软件包在很多方面都很好,但要使用它,我需要将动画转换为 .swf 或 .mp4。这就是问题所在。我尽了最大努力,还是无法在保持视频质量的情况下进行转换。这并不奇怪,因为这两种格式都不是专为压缩数学图而设计的。在这个质量下,avi 文件的大小为 10MB,但相比之下 swf 和 mp4 看起来都很粗糙 - 曲线看起来就像是先抗锯齿到 160x100 屏幕分辨率,然后就一直保留着锯齿(您的眼睛没受伤,因为我们无法将 mp4 嵌入到问题中)。上一个问题中链接的转换服务无法强制进行无损压缩。说实话,我不知道是否有类似无损 mp4 的东西?
除了 media9 还有其他选择吗?这个只有 64 帧(我可以用更低的数字来妥协)。或者你能推荐一个转换程序,可以从这种帧中生成更高质量的 mp4。
使用 animate 包有帮助吗?这是否要求每一帧都来自单独的文件,或者它可以处理动画 GIF 吗?
答案1
正如 AlexG 所建议的那样动画在这里效果很好。发布步骤摘要作为答案,以防以后有人遇到同样的问题。早期步骤包括 Mathematica 说明,这可能与主题无关,但我需要让它与 LaTeX 合作,所以希望没问题。
- 将各个帧准备为单独的 eps 文件。我编写了一个 Mathematica 函数
roll[t_]
,该函数生成一个滚动圆的图像,该圆旋转了总角度t
,并绘制了到该点为止的摆线部分。为了使动画按预期工作,最好设置 -optionPlotRange
以便显示整个区域 - 您自行决定。 - 保存文件,使其文件名以帧号结尾,如动画手动操作。我使用以下命令执行此操作,生成了 65 个名为“sykloidi0.eps”、“sykloidi1.eps”等的文件
For[k = 0, k < 65, ++k, Export[StringJoin[{"sykloidi", ToString[k], ".eps"}], roll[k*0.1]]]
在上述步骤中,您可能需要缩小创建的 eps 图像的大小。原因是 animate 包无法将过大的图像正确地放入 pdf 动画中。解决方案是为 Export 提供一个额外的参数
ImageSize->150
或其他合适的值。否则,您可能会遇到上述困难这里。在您的 TeX 源中添加以下行。选择您喜欢的选项。
\animategraphics[autoplay,loop,width=320pt,height=100pt,keepaspectratio]{12}{sykloidi}{0}{64}