最近打算用AS3代码和tweenlite库实现微软PowerPoint中的动画效果,看了一下,大部分效果都不难实现,但是总共有100多个效果,工作量庞大,要打持久战了,估计每天可以写一到两个效果,计划用1-2两个月左右的业余时间,分期完成。第一期计划做完最最常用的50种效果。
第一期工程要完成的效果
目前的基本框架式这样的,接口类Animation提供Initialization()和Play()两个方法,把微软的动画大致分为4类:entrance,emphasis,exit和motionpaths,分别对应4个包。然后每个包中有个和包名相同的基类实现Animation接口,并提供一些后边子类常用的方法,和一些调用结构。最后每个具体效果分别是这些基类的子类,有必要的时候可以重写父类的方法,实现特定的功能。可以给每个具体效果传入json参数进行配置,这也是借鉴了最近使用的一些JQuery插件的做法。
虽然我自己也觉得目前这个框架太弱了,不够完善,还有冗余,可能很多地方没有考虑全面,不过随着开发的不断深入应该可以不断完善和改进。
目前完成了entrance的13种动画,然后准备停下来进行一次代码审查,重构代码,删除无用重复代码。