著录项信息
专利名称 | 一种多个动画文件的合并显示方法 |
申请号 | CN200510051574.2 | 申请日期 | 2005-03-07 |
法律状态 | 授权 | 申报国家 | 中国 |
公开/公告日 | 2006-09-13 | 公开/公告号 | CN1831870 |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | G06T13/00 | IPC分类号 | G06T13/00查看分类表>
|
申请人 | 腾讯科技(深圳)有限公司 | 申请人地址 | 广东省深圳市福田区振兴路赛格科技园2栋东4***
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 腾讯科技(深圳)有限公司 | 当前权利人 | 腾讯科技(深圳)有限公司 |
发明人 | 王麒 |
代理机构 | 北京德琦知识产权代理有限公司 | 代理人 | 宋志强;麻海明 |
摘要
本发明公开了一种多个动画文件的合并显示方法,该方法包括:步骤A:为各个需要合并的动画文件分配独立的显示层;步骤B:将各个动画文件的显示内容放置到各自所分配得到的层中;步骤C:将所有层中的显示内容在一帧中按照一定的层次关系显示出来。本发明能够将需要合并显示的多个动画文件实际合并到一个动画文件中,无需在合并显示过程中使用各个动画文件的存放路径,从而减少了动画文件合并显示过程中的工作量,降低了动画文件合并显示的实现难度。
1. 一种多个动画文件的合并显示方法,其特征在于,该方法包括:
步骤A:为各个需要合并的动画文件创建各自的动画定义标签块,为每个 创建的动画定义标签块分别创建一个与之对应的放置对象标签块,并为各个需 要合并的动画文件分配独立的显示层;
步骤B:将每个动画文件利用创建的放置对象标签块将动画定义标签块对 应的显示内容放置到各自所分配得到的层中;
步骤C:将所有层中的显示内容在一帧中按照一定的层次关系全部显示出 来。
2. 根据权利要求1所述的方法,其特征在于,所述动画文件为震荡波格式 (Swf)文件,步骤A所述为各个需要合并的动画文件创建各自的动画定义标 签块之后,该方法进一步包括:通过创建动画定义标签块为需要合并的动画文 件分别创建子动画;
步骤A所述独立的显示层为所创建的子动画分别分配的独立的显示层。
3. 根据权利要求2所述的方法,其特征在于,所述步骤A包括:
按照各个Swf文件合并的先后次序,顺序为每个需要合并的Swf文件创建 一个动画定义标签块,并为各个动画定义标签块分别确定一个全局唯一的对象 标识;
为每个创建的动画定义标签块分别创建一个与之对应的放置对象标签块, 确定每个放置对象标签块所指明的二元数组(对象标识,层序号),其中,确定 该二元数组(对象标识,层序号)中的对象标识为与该放置对象标签块相对应 的动画定义标签块的对象标识,确定该二元数组(对象标识,层序号)中的层 序号为一个未被其它显示对象占用的层的层序号。
4. 根据权利要求3所述的方法,其特征在于,所述为各个动画定义标签块 分别确定一个全局唯一的对象标识为:
将需要合并的Swf文件的顺序号作为该Swf文件所创建的动画定义标签块 的对象标识。
5. 根据权利要求3或4所述的方法,其特征在于,所述确定该二元数组(对 象标识,层序号)中的层序号为一个未被其它显示对象占用的层的层序号为:
将需要合并的Swf文件的顺序号作为该Swf文件所分配的独立的层的层序 号,将该层序号作为所述二元数组(对象标识,层序号)中的层序号。
6. 根据权利要求1所述的方法,其特征在于,所述动画文件为Swf文件, 步骤B包括:
步骤B0:更新需要合并的动画文件的显示对象标识,以使得该显示对象标 识在合并之后全局唯一;
步骤B1:将需要合并的Swf文件的定义标签块放置到为该文件所创建的动 画定义标签块之前;
步骤B2:将需要合并的Swf文件的控制标签块放置到为该文件所创建的动 画定义标签块之中,作为该动画定义标签块的子动画标签块;
步骤B3:需要合并的Swf文件利用为其所创建的放置对象标签块,将为该 Swf文件所创建的动画定义标签块所定义的显示内容放置到为该Swf文件所分 配的独立的显示层中。
7. 根据权利要求6所述的方法,其特征在于,在步骤B0中,所述更新各 个动画文件的显示对象标识为:
遍历需要合并的Swf文件中的每个标签块的各个对象标识,为标签块中出 现与已经分配的对象标识相冲突的对象标识重新分配对象标识,并将在该Swf 文件的其余标签块中出现的该对象标识也更新为重新分配后的对象标识。
8. 根据权利要求6所述的方法,其特征在于,步骤B3和步骤C之间,该 方法进一步包括:
分别统计各个需要合并的Swf文件中的显示帧标签块的个数,然后分别用 统计得到的个数更新对应的为Swf文件所创建的动画定义标签块中的帧数值。
9. 根据权利要求6所述的方法,其特征在于,步骤B3中,所述将为该Swf 文件所创建的动画定义标签块所定义的显示内容放置到为该Swf文件所分配的 独立的显示层中为:
放置对象标签块将其所指明的二元数组(对象标识,层序号)添加到显示 列表中;其中,对象标识为所述为该Swf文件所创建的动画定义标签块的对象 标识,层序号为所述为该Swf文件所分配的独立的显示层的序号。
10. 根据权利要求9所述的方法,其特征在于,步骤C包括:
显示帧标签块,根据显示列表中的各个二元数组(对象标识,层序号)的 内容,在一帧中依次播放各层的显示内容。
技术领域
本发明涉及动画制作技术领域,尤其涉及一种多个动画文件的合并显示 方法。
背景技术
当前,即时通讯(IM)工具已经得到越来越广泛的应用,人们在利用 IM工具实现即时通信的同时,对IM工具的服务质量也有了更高的要求,其 中,由于显示在IM工具上的个人虚拟形象能够代表IM工具使用者的许多 特征,因此,备受IM工具使用者的关注,由此,需要提高IM工具上个人 虚拟形象的显示质量,以达到提高IM工具服务质量的需要。
在现有技术中,采用动画图像作为个人虚拟形象,以替代最初所采用的 静止图像,以达到提高显示质量的需要。在实际应用过程中,允许IM工具 使用者在例如脸形、发型、衣服、背景、装饰物等虚拟形象组成元素中进行 选择,以利用所选择的元素最终构成动画图像来作为虚拟形象。各个组成元 素分别具有多个备选元素以供选择,各个备选元素分别以动画文件的形式保 存,当IM工具使用者选择相应的备选元素后,通过预先提供的脚本命令, 将这些备选元素所对应的动画文件动态加载到一个动画文件中,通过显示该 动画文件则可实现以动画的方式显示个人虚拟形象。
在现有技术中,只是通过脚本命令将各个动画文件动态加载到一个动画 文件中,实际上并没有将各个动画文件合并到一个动画文件中,这样做虽然 能够在视觉效果上达到合并多个动画文件的效果,但是,由于各个动画文件 分别具有各自的存放路径,因此,需要提供这些存放路径给脚本命令,脚本 命令还需要根据这些存放路径分别获得各个动画文件来实现动态加载,从而 拟形象的具体实现。同样,在其它需要将多个动画合并显示的实际应用中, 由于现有技术并没有将多个动画文件实际合并到一个动画文件中,因此,也 存着上述工作量大以及不易实现的问题。
发明内容
有鉴于此,本发明的主要目的在于提供一种多个动画文件的合并显示方 法,该方法能够将多个需要合并显示的动画文件实际合并到一个动画文件中 并显示,从而减少多个动画合并显示过程中的工作量,降低实现难度。
为实现上述目的,本发明提供了一种多个动画文件的合并显示方法,该 方法包括:
步骤A:为各个需要合并的动画文件创建各自的动画定义标签块,为每个 创建的动画定义标签块分别创建一个与之对应的放置对象标签块,并为各个需 要合并的动画文件分配独立的显示层;
步骤B:将每个动画文件利用创建的放置对象标签块将动画定义标签块对 应的显示内容放置到各自所分配得到的层中;
步骤C:将所有层中的显示内容在一帧中按照一定的层次关系全部显示出 来。
其中,所述动画文件为震荡波格式(Swf)文件,步骤A所述为各个需要 合并的动画文件创建各自的动画定义标签块之后,该方法进一步包括:通过创 建动画定义标签块为需要合并的动画文件分别创建子动画;
步骤A所述独立的显示层为所创建的子动画分别分配的独立的显示层。
其中,所述步骤A包括:按照各个Swf文件合并的先后次序,顺序为每个 需要合并的Swf文件创建一个动画定义标签块,并为各个动画定义标签块分别 确定一个全局唯一的对象标识;
为每个创建的动画定义标签块分别创建一个与之对应的放置对象标签块, 确定每个放置对象标签块所指明的二元数组(对象标识,层序号),其中,确定 该二元数组(对象标识,层序号)中的对象标识为与该放置对象标签块相对应 的动画定义标签块的对象标识,确定该二元数组(对象标识,层序号)中的层 序号为一个未被其它显示对象占用的层的层序号。
其中,所述为各个动画定义标签块分别确定一个全局唯一的对象标识为:
将需要合并的Swf文件的顺序号作为该Swf文件所创建的动画定义标签块 的对象标识。
其中,所述确定该二元数组(对象标识,层序号)中的层序号为一个未被 其它显示对象占用的层的层序号为:
将需要合并的Swf文件的顺序号作为该Swf文件所分配的独立的层的层序 号,将该层序号作为所述二元数组(对象标识,层序号)中的层序号。
其中,所述动画文件为Swf文件,步骤B包括:
步骤B0:更新需要合并的动画文件的显示对象标识,以使得该显示对象标 识在合并之后全局唯一;
步骤B1:将需要合并的Swf文件的定义标签块放置到为该文件所创建的动 画定义标签块之前;
步骤B2:将需要合并的Swf文件的控制标签块放置到为该文件所创建的动 画定义标签块之中,作为该动画定义标签块的子动画标签块;
步骤B3:需要合并的Swf文件利用为其所创建的放置对象标签块,将为该 Swf文件所创建的动画定义标签块所定义的显示内容放置到为该Swf文件所分 配的独立的显示层中。
其中,在步骤B0中,所述更新各个动画文件的显示对象标识为:
遍历需要合并的Swf文件中的每个标签块的各个对象标识,为标签块中出 现与已经分配的对象标识相冲突的对象标识重新分配对象标识,并将在该Swf 文件的其余标签块中出现的该对象标识也更新为重新分配后的对象标识。
其中,步骤B3和步骤C之间,该方法进一步包括:
分别统计各个需要合并的Swf文件中的显示帧标签块的个数,然后分别用 统计得到的个数更新对应的为Swf文件所创建的动画定义标签块中的帧数值
其中,步骤B3中,所述将为该Swf文件所创建的动画定义标签块所定义 的显示内容放置到为该Swf文件所分配的独立的显示层中为:
放置对象标签块将其所指明的二元数组(对象标识,层序号)添加到显示 列表中;其中,对象标识为所述为该Swf文件所创建的动画定义标签块的对象 标识,层序号为所述为该Swf文件所分配的独立的显示层的序号。
其中,步骤C包括:
显示帧标签块,根据显示列表中的各个二元数组(对象标识,层序号) 的内容,在一帧中依次播放各层的显示内容。
可见,本发明能够将需要合并显示的多个动画文件实际合并到一个动画 文件中,无需在合并显示过程中使用各个动画文件的存放路径,从而减少了 动画文件合并显示过程中的工作量,降低了动画文件合并显示的实现难度。
附图说明
图1为本发明一实施例中第5个Swf文件的示意图。
图2为实现本发明的流程图。
图3为本发明中构建的Swf原型的示意图。
图4为本发明中更新对象标识之后的第5个Swf文件的示意图。
图5示出了本发明一实施例中,将第5个Swf文件合并到Swf原型中 后的结果。
具体实施方式
本发明为一种多个动画文件的合并显示方法,该方法为各个需要合并显 示的动画文件分别分配唯一的显示层,并且更新各个动画文件中的对象标识 值,使得各个对象标识值在合并后的动画文件中全局唯一,然后,将各个动 画文件的显示内容放置到各自所分配得到的层中,最后,再将所有层中的显 示内容在一帧中按照一定的层次关系全部显示出来,从而实现多个动画文件 的合并显示。
下面,以Flash技术中的动画合并显示为例,对本发明进行详细描述, 该描述的目的只在于对本发明进行说明,并不在于限定本发明的保护范围, 本发明同样可以应用于其它形式的动画文件之中。
在Flash的实际应用中,动画文件以震荡波格式(Swf)文件格式保存, Swf文件播放器读取Swf文件中的内容并根据该内容播放Flash动画。Swf 文件由头部信息和数据信息组成,其中,头部信息包括播放该Swf文件所需 要的一些公共信息,例如是否压缩、版本信息、显示区域等,数据信息则由 多个标签块(Tag)顺序组成,每个标签块分别具有各自的标签类型(Tid)、 标签块长度、以及标签块数据,结束(end)标签块位于Swf文件的末尾, 作为该文件的结束标志。
上述的标签块分为两类,分别是:定义标签块(Definition tag)和控制 标签块(Control tag),其中:
每个定义标签块用于定义一个对象,并为每个对象分配一个唯一的对象 标识(Cid),定义标签块分为两种类型,下面分别对这两种类型进行介绍:
1、形状定义(DefineShape2)标签块,该标签块的Tid为22,用于为 对象定义例如圆形、矩形等的形状,并为所定义的对象分配一个Cid;
2、动画定义(DefineSprite)标签块,该标签块的Tid为39,用于定义 一个动画对象并为该动画对象分配一个Cid,同时,该标签块还指明该动画 所包含的帧数(FC,FrameCount);动画定义标签块中的标签块数据又是 由一组嵌套的子标签块组成,这些子标签块只能是控制标签块,而不能包含 任何定义标签块;通过动画定义标签块,实际上相当于在主动画下定义一个 子动画,这样,在显示主动画的过程中,就能够通过调用子动画实现将主动 画和子动画以一定的帧率同时播出。
以上对定义标签块进行了介绍,下面对控制标签块进行介绍:
控制标签块用于负责对动画显示过程中的操作进行控制,主要包括三种 类型:
1、显示帧(ShowFrame)标签块,该标签块的Tid为1,用于显示当前 帧;在Swf播放器中,设置了一个显示列表,该显示列表由多个二元数组组 成,每个二元数组的组成形式为(Lid,Cid),其中,Lid表示层的层序号, 该二元数组表示在第Lid层上显示对象标识为Cid的对象;对于动画中所定 义的各个对象,每一层只能放置一个对象,并且,放在上层的对象将覆盖放 在下层的对象,显示帧标签块根据显示列表中的各个二元数组的内容,将各 个显示对象按照一定的先后的层次顺序显示出来;
2、放置对象(PlaceObject2)标签块,该标签块的Tid为26,该标签块 指明Lid和一个Cid,用于在显示列表中增加由该Lid和Cid所构成的二元 数组(Lid,Cid),通过这种方式,能够将Cid所对应的对象放置到Lid所 对应的层;该标签块只用于放置,并不用于显示所放置的对象,而是需要后 续的显示帧标签块出现时才显示相应对象;
3、移出对象(RemoveObject2)标签块,该标签块的Tid为28,该标签 块同样指明Lid和一个Cid,但与放置对象标签块相反的是,该标签块将该 Lid和Cid所构成的二元数组(Lid,Cid)从显示列表中删除,以便将Cid 所对应的对象从Lid所对应的层移出,在利用该标签块移出对象之后,后续 的显示帧标签块出现时,就不再会将显示类标中的第Lid层上的Cid对象显 示出来了。
另外,在Swf文件中,还经常会出现动画定义标签块嵌套子动画标签块 的情况,其中,各个子动画标签块分别具有各自独立的显示列表以及用于显 示各个对象的一组层,从而使得各个子动画标签块之间、以及子动画标签块 和动画定义标签块之间不会出现层的相互冲突问题;下面结合一个具体实 例,对子动画标签块的嵌套进行介绍:
参见图1,在一个Swf文件中,定义动画标签块(Tid=39)嵌套了子动 画标签块,该子动画标签块依次为:
放置对象标签块(Tid=26),该标签块指明一个二元数组(1,1),从 而将Cid为1的对象放置在该子动画标签块中的第1层;
显示帧标签块(Tid=1),该标签块显示该子动画标签块中的第1层的 Cid为1的对象,从而显示子动画标签块的第一帧;
放置对象标签块(Tid=26),该标签块指明一个二元数组(2,2),从 而将Cid为2的对象放置在该子动画标签块中的第2层;
显示帧标签块(Tid=1),该标签块显示该子动画标签块中的第2层的 Cid为2的对象,从而显示子动画标签块的第二帧;
结束标签块(Tid=0),用于表示该子动画标签块结束。
参见图1,在运行该Swf文件的过程中,控制标签块中的放置对象标签 块(Tid=26)将动画定义标签块(Tid=39,Cid=3)所定义的动画放置到第1 层,由于动画定义标签块(Tid=39,Cid=3)嵌套有如上所述的子动画标签 块,因此,运行所嵌套的子动画标签块之后,能够将Cid为1的对象以及 Cid为2的对象依次显示在第1层中。
以下,对本发明进行详细描述。
参见图2,实现本发明需要以下步骤:
步骤201:为各个需要合并的动画文件分配独立的显示层;
步骤202:将各个动画文件的显示内容放置到各自所分配得到的层中;
步骤203:将所有层中的显示内容在一帧中按照一定的层次关系全部显 示出来,从而实现多个动画文件的合并显示。
下面对以上步骤的具体实现进行介绍:
一、步骤201的具体实现:
参见图3,在本发明实施例中,通过构建图3所示的Swf原型,来实现 为各个需要合并的Swf文件分配独立的显示层,具体为:
按照各个Swf文件合并的先后次序,顺序为每个需要合并的Swf文件 创建一个动画定义标签块(Tid=39),并为每个动画定义标签块分别确定一 个全局唯一的Cid,通过创建动画定义标签块实现为需要合并的动画文件分 别创建子动画,然后,为创建的动画定义标签块分别创建一个与之对应的放 置对象标签块(Tid=26),确定每个放置对象标签块所指明的二元数组(Cid, Lid),其中,确定该二元数组(Cid,Lid)中的Cid为与该放置对象标签块 成组对应的动画定义标签块的Cid,确定该二元数组(Cid,Lid)中的Lid 为一个未被其它显示对象占用的层的层序号,从而实现为各个创建的子动画 分配独立的显示层,进而利用子动画实现为各个Swf文件分配独立的显示 层;
在本发明优选实施例中,为了简化运算,为创建的动画定义标签块确定 Cid,以及确定该二元数组(Cid,Lid)中的Lid为一个未被其它显示对象占 用的层的层序号可采用如下方式进行:
将需要合并的Swf文件的顺序号作为为该Swf文件所创建的动画定义 标签块的Cid;
将需要合并的Swf文件的顺序号作为为该Swf文件所分配的独立的层 的层序号,将该层序号作为所述二元数组(Cid,Lid)中的Lid;
进一步的,为了更加简化运算,在本发明优选实施例中,可以采用需要 合并的Swf文件作为为该Swf文件所创建的动画定义标签块的Cid,并将为 该Swf文件所创建的放置对象标签块所指明的二元数组中的Cid和Lid直接 分别指定为该Swf文件的序号。图3所示就是这一优选实施例的具体实现, 由图3可见:
共有N个需要合并的Swf文件,其中N为自然数,分别为每个Swf创 建动画定义标签块和放置对象标签块,其中,动画定义标签块的Cid分别为 该动画定义标签块所对应的Swf文件的序号,放置对象标签块所指明的二元 数组则为(i,i)的形式,其中,i为该放置对象标签块所对应的Swf文件 的序号;在图3中,由于初始状态下动画定义标签块所包含的子动画帧数为 0,因此,各个动画定义标签块的FC参数分别初始化为0。
二、步骤202的具体实现:
在步骤202的具体实现中,需要对各个动画文件的显示对象标识进行更 新,以避免出现显示对象标识相互冲突的问题,下面对该更新过程进行介绍:
在一个Swf文件中,所有的对象标识Cid必须全局唯一,因此,在本发 明中必须为每个需要合并的Swf文件进行Cid的更新,以满足该要求;在本 发明实施例中,设计一个全局的Cid分配器,该分配器遍历需要合并的Swf 文件中的每个标签块的各个对象标识,为标签块中出现与已经分配的对象标 识相冲突的对象标识重新分配对象标识,并将在该Swf文件的其余标签块中 出现的该对象标识也更新为重新分配后的对象标识;例如,在将形状定义标 签块的Cid重新分配之后,需要将出现在例如放置对象标签块和移出对象标 签块中的该Cid也更新为重新分配后的Cid;
在进行对象标识更新后,实现步骤202还需要以下步骤:
步骤2021:将需要合并的Swf文件的定义标签块放置到为该文件所创 建的动画定义标签块之前;进行该步骤的原因在于:
由于Swf播放器规定,在显示一帧时,显示列表中所涉及到的对象都必 须在显示帧标签块之前被定义,因此,需要将Swf文件中的所有定义标签块 放置在与其对应的动画定义标签块之前;
步骤2022:将需要合并的Swf文件的控制标签块放置到为该文件所创 建的动画定义标签块之中,作为该动画定义标签块的子动画标签块;由于控 制标签块决定了如何播放已经定义的各个对象,因此,将Swf文件中的控制 标签块作为为该Swf文件所创建的动画定义标签块之中,就可以实现将一个 Swf文件中的显示内容合并到一个子动画中;
步骤2023:需要合并的Swf文件利用为其所创建的放置对象标签块, 将为该Swf文件所创建的动画定义标签块所定义的显示内容放置到为该Swf 文件所分配的独立的显示层中;在本发明实施例中,根据放置对象标签块所 指明的二元数组(对象标识,层序号),实现将对象标识所对应的动画定义 标签块中的显示内容放置到层序号所对应的层中;其中,放置对象标签块通 过将其所指明的二元数组(对象标识,层序号)添加到显示列表中,实现将 对象标识所对应的动画定义标签块中的显示内容放置到层序号所对应的层 中,但是并不显示动画定义标签块中的显示内容;
通过以上步骤即可实现步骤202,在本发明其它实施例中,为了能够更 好的满足动画显示的需要,还可进一步包括以下步骤:
步骤2024:分别统计各个需要合并的Swf文件中的显示帧标签块的个 数,然后分别用统计得到的个数更新对应的为Swf文件所创建的动画定义标 签块中的FC值。
三、步骤203的具体实现:
利用显示帧标签块,根据显示列表中的各个二元数组内容,在一帧中依 次播放各层的显示内容,从而在一帧中实现多个Swf文件的合并播放;
参见图3,在本发明实施例中,预先在Swf原型中所有新创建的动画定 义标签块和放置对象标签块之后的创建显示帧标签块,利用该显示帧标签块 来实现上述播放步骤。同样参照图3,为了使得合并后的Swf文件完整,在 该Swf文件的最后还包括结束标签块。
下面,以第5个Swf文件的合并过程为例,对上述步骤的具体实现再加 以更加具体的描述,其中,在Swf5文件中,先利用形状定义标签块(Tid=22) 定义了两个物体形状,然后利用动画定义标签块(Tid=39)定义一个包含2 帧子动画,接着就利用放置对象标签块(Tid=26)将所定义的动画放置到 显示列表中,最后显示列表中的内容,整个Swf文件共一帧。在子动画中, 先将Cid=1的对象放置到显示列表的第一层,并且显示第一帧,此时显示 的内容只有Cid=1的对象;接着,将Cid=2的对象放置到显示列表的第二 层,并且显示第二帧,此时显示的内容包含Cid=1和Cid=2的两个对象; 以下描述为合并的具体过程:
首先,创建如图3所示的Swf原型,该原型表示共有N个Swf文件需 要合并,其中,N表示Swf文件的个数,是自然数;通过创建该原型能够实 现为包括第5个Swf文件在内的各个需要合并的Swf文件分配各自独立的 显示层;
然后,更新各个Swf文件中的Cid,其中,第5个Swf文件的初始内容 如图1所示,假设当执行到合并第5个Swf文件时,Cid分配器中的Cid值 已经分配到10,所以,第5个Swf文件中,Cid=1的形状定义标签块(Tid =22)将被更新为Cid=11;Cid=2的形状定义标签块(Tid=22)将被更 新为Cid=12;Cid=3的动画定义标签块(Tid=39)将被更新为Cid=13; 并且,将在其余标签块中出现的上述Cid也修改为更新后的Cid,执行完这 一步骤后,第5个Swf文件的内容如图4所示;
通过上述这两步,实际上实现了上述的步骤201,接下来,将图4所示 更新后的第5个Swf文件中的定义标签块放置到图3所示Swf原型中的Swf5 之前,并且,将图4所示更新后的第5个Swf文件中的控制标签块放置到图 3所示Swf原型中的Swf5的动画定义标签块(Tid=39)中,作为该动画定 义标签块的子动画标签块,实现了上述步骤202;图5示出了将第5个Swf 文件合并到Swf原型中后的结果,其中,图5只示出了合并后的原型的一部 分;
最后,在将各个Swf文件按照与第5个Swf文件相一致的方式合并到 图3所示的Swf原型中后,再利用Swf原型中的显示帧标签块在一帧中显 示各层的显示内容,从而实现步骤203。合并的最终效果只显示一帧的内容, 而这一帧的内容包含了N个子动画。当Swf播放器解析显示帧标签块时, 此时的显示列表中将有N个二元组,每个二元组表示在第i层上显示对象标 识为i的对象。这样,就达到了N个Swf文件同时显示的效果,并且,N个 Swf文件的前后覆盖关系直接依赖于输入N个Swf文件的先后顺序,即第1 个Swf的内容在最底层,而第N个Swf的内容在最高层。
以上所述为针对Swf作为动画文件的情况下,本发明的具体实现,依据 本发明所体现的精神,也可以对其它格式的动画文件实现本发明。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本 发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在 本发明的保护范围之内。
法律信息
- 2008-08-20
- 2006-11-08
- 2006-09-13
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2003-08-20
|
2002-02-04
| | |
2
| |
2003-01-22
|
2001-10-04
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |