PPT动画大师参考#9-浅析动画合并

这个要求是天好提出来的,原文如下

所谓“合并”是让插件自动将一页中同一对象的多个动画合并成一个动画。

比方说:一秒飞出,之后同时放大、旋转1秒,延迟2秒后退出。

这样的动画如果不用插件需要4个动画实现,我的想法是:让插件自动把4个动画合并成一个动画。

如果能实现,那么插件的实用性会提升很多,我们都知道复杂动画中往往在一页里对同一对象、不同的延迟时间段设置很多种动画,而利用插件“合并”功能,除了能精简优化动画数量之外,还有较强的容错性–因为我可以制作动画满意之后再合并,而不必在插件的界面下调整。

实现这种“合并”的功能需要考虑一些较复杂情况:

一是延迟时间,比如一个对象的第一次动画完成之后,隔了较长时间后在另一个对象的动画“之后”再次出现;比如一个对象的一种动画中设置了“循环到结束”,还有一种特殊情况是“单击开始”—这个倒可以简单处理为不必合并。

二是有些动画具唯一性的情况,比如路径等,下一个会替代上一个,不过这种情况我认为,只需要源源本本按原动画的延迟次序进行就行—合并后效果应当会和实际效果一致。

三是需要有备份功能,我的建议是自动另起一页,如果有难度至少要弹出提示框,建议操作前原有动画保存,以防出错后无法返回。

我当时的答复

  1. 无法读取到参数:我们利用VBA无法读取一些很隐蔽的参数的,比如,变形动画,他所设置的属性行为的Property就是无法读取的;再比如,随机动画中,属性根本就是空。
  2. 顺序很难变动:动画(Effect)的顺序是可变的,但是,行为(Behavior)的顺序是无法变动的。我们只能变通的利用行为的时间延迟来实现。
  3. 截取动画部分:这个暂时没想到解决办法。变相的处理是利用设置行为的可见性来控制。

在面对重重困难的时候,我们还需要很多很多很多的努力来完善改进,再次感谢大家的支持!

最新看法

但是经历那么长时间的沉淀,我觉得完美的合并动画以及完美的动画刷是可行的,至少很久以前就有前辈完成了这个伟业!

所以我还在努力研究,到底怎么才能真正的完美动画大师!