一种SVG演示放映器及进行演示放映的方法技术

技术编号:2839590 阅读:169 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及计算机应用领域,尤其涉及一种演示放映器和使用该演示放映器的演示放映方法。一种SVG演示放映器,其位于系统逻辑层,其包括播放状态管理模块、放映页数据准备模块、页切换模块和页内动画放映模块;该放映页数据准备模块包括静态数据准备模块;该页切换模块包括后翻页模块和前翻页模块;该页内动画放映模块包括动画放映模块和动画消隐模块;上述各模块均有与系统数据层进行数据交换的接口;系统应用层可接收鼠标和键盘事件,同时把接收的事件分发给SVG演示放映器中的各模块。本发明专利技术所述的演示放映器可以使放映效果更加出色。

【技术实现步骤摘要】

本专利技术涉及计算机应用领域,尤其涉及一种演示放映器和使用该演示放映器的演示放映方法。
技术介绍
随着演示文件(诸如,Microsoft Office、Open Office、WPSOffice中的演示文件)在政府办公、教育实践、企业交流等各个领域中的使用越来越广,对演示文件本身的要求也越来越高演示文件已不能仅仅满足于文本、图形、图像和视频了,应该而且必须具备丰富而优秀的交互性能;同一套演示文件必须能很方便的在不同的介质上发布,除了传统的纸和PC之外,还有Web发布、PDA、手机等手持设备。但由于演示文件是二进制文件,不是基于XML(eXtensibleMarkup Language)的文件,所以要发布或再利用一个演示文件不是很容易。因此,现在有很多研究都在试图重新构建一个更好的演示文件,大致思路是首先基于XML来表达演示的逻辑和表现数据,再利用XSLT或其它工具将XML演示文件转换为具体表现形式,它们都具备生成SVG(Scalable Vector Graphics可伸缩矢量图形)文件的功能,但它们都是直接使用SVG表达演示内容,一方面失去了演示文件中原有的许多特有概念,另一方面导致动画不能重用,进而使得SVG文件尺寸过大等,这对于当今互联网依赖性越来越强的环境下,很不利于网络传输。另外,如果采用纯XML方式表达演示文件的话,虽然逻辑会非常清晰,但会额外增加由XML转换成可被SVG应用程序理解的SVG标准格式文档所需的难度,甚至可能到SVG应用程序无法实现的程度。因此,出现了一种能够尽可能多地保留演示中特有概念而且易于被SVG应用程序理解和应用的SVG格式文档,但同时需要一个理解和处理该类型文档的放映器和进行放映方法。
技术实现思路
本专利技术克服了现有技术中的缺点,提供一种可处理SVG演示数据文档的SVG演示放映器和利用它进行演示放映方法。为了解决上述技术问题,通过以下技术方案实现一种SVG演示放映器,其位于系统逻辑层,其包括播放状态管理模块、放映页数据准备模块、页切换模块和页内动画放映模块;该放映页数据准备模块包括静态数据准备模块;该页切换模块包括后翻页模块和前翻页模块;该页内动画放映模块包括动画放映模块和动画消隐模块;上述各模块均有与系统数据层进行数据交换的接口;系统应用层可接收鼠标和键盘事件,同时把接收的事件分发给SVG演示放映器中的各模块。本专利技术还提供一种演示放映方法,其包括如下过程a.加载SVG演示数据文档,利用DOM提供的onload事件,调用它的响应函数,在响应函数中调用放映页数据准备模块提供的接口,准备放映页数据;b.判断是否指定了自定义放映列表,如果是,则读取自定义放映列表的内容,如果否,以Slide的定义顺序作为自定义放映列表内容;c.通过放映页数据准备模块中的静态数据准备模块,根据列表内容,合成可以直接被SVG播放器显示的静态数据,并将合成后的数据依次追加到DOM树中由SVG脚本创建的id为“window”节点中;d.如果存在加载动画数据的模块,则还需把动画数据准备好,如果不存在加载动画数据的模块,进入下一步;e.放映页数据准备完成以后,应用层接收各种鼠标、键盘事件,并将事件转为特定的动作,调用播放状态管理模块提供的相应功能接口,再由播放状态管理模块根据动作类型和当前系统放映状态决定调用哪个功能模块以实现其功能需求,并实时更新当前系统放映状态。本专利技术所述的演示放映方法是通过脚本语言,调用DOM函数和SVG DOM函数,响应DOM事件,处理SVG数据文档在应用程序中对应的DOM树,控制放映器展现各种复杂的演示效果。因为放映数据是在放映时动态生成,所以数据独立性远比静态组织的要高,并且灵活性也大大增强,同一份原始数据根据不同的设置可以生成多种放映序列,并且可以利用良好的数据定义结构开发一些诸如动态更改展现外观的扩充功能,使放映效果更加出色。附图说明图1是本专利技术演示放映方法中应用层接收的事件与SVG演示放映器中各模块关系图;图2是本专利技术SVG演示放映器中的放映页数据准备模块、页切换模块和页内动画放映模块的结构图;图3是本专利技术SVG演示放映器内部模块间关系示意图;图4是说明本专利技术演示放映方法中的页切换流程图。具体实施例方式本专利技术所述的一种利用SVG演示放映器进行演示放映的方法是通过脚本语言,调用DOM函数和SVG DOM函数,响应DOM事件,处理SVG数据文档在应用程序中对应的SVG DOM树,控制放映器展现各种复杂的演示效果。所述的脚本语言主要指ECMAScript,也可以是被SVG支持的其它脚本语言。所述方法在逻辑上将系统分为三层应用层、逻辑层和数据层。所述数据层是SVGViewer将SVG文档读入内存创建的DOM树以及被逻辑层加工过的存储在用SVG脚本在DOM树中创建的id为“window”的节点内容,所有这些内容统称为数据存储模块。所述应用层主要负责事件的接收,以及把接收到的事件分发给逻辑层的对应模块,它可以接收的事件包括文档加载时触发的onload事件,鼠标事件(如onclick/onmouseup),键盘事件(如onkeyup/onkeydown)。所述逻辑层是本专利技术的SVG演示放映器所在层,该SVG演示放映器完成各种事件的响应动作,与数据层进行数据交互,展示各种复杂演示效果,参见图1,其构成主要包括放映页数据准备模块、页切换模块、页内动画放映模块以及播放状态管理模块,它还可以包括索引页处理模块。整个系统的运行机制是事件机制,用户事件的接收一方面依赖于DOM提供的鼠标事件支持,另一方面依赖于Adobe SVGViewer提供的键盘事件支持。其处理流程如下参见图1至图4,当SVG演示数据文档被加载时,利用DOM提供的onload事件,调用它的响应函数,在响应函数中调用放映页数据准备模块提供的接口,准备放映页数据。如果指定了自定义放映列表名,则读取指定自定义放映列表的内容,否则,以Slide的定义顺序作为自定义放映列表内容,再通过放映页数据准备模块中的静态数据准备模块,根据列表内容,取得指定Slide原始数据,并根据该Slide原始数据中的一个特殊标识,判断其与对应Master的关联关系,在内存中将Master数据与Slide原始数据按照指定的规则,合成可以直接被SVG播放器显示的静态数据,并将合成后的数据依次追加到DOM树中由SVG脚本创建的id为“window”节点中。所述放映页数据,其数据组成分两部分,静态SVG数据和动画SVG数据,静态数据必须完全准备且能直接被SVG播放器显示,动画数据即可以一次性准备完毕,也可以在后期逐步加入。所述的规则指如果关联关系表示忽略母版的背景图形,则把Slide与Master的关联改为对Master背景颜色的引用,否则,拷贝母版中所有的Shape到Slide的关联标记后Shape定义之前的位置,并将关联标记改为忽略母版。最后,如果存在加载动画数据的模块,则还需使用“函数动画”法把动画数据准备好。其遵循的原则为加载Slide的页动画数据时,当指定Slide没有页动画数据时,会尝试加载对应Master的页切换数据,而加载页内动画数据时,首先判断当前Slide与Master的关联关系,如果当前Slide忽略了对应母版的背景图形,则只需要按本文档来自技高网
...

【技术保护点】
一种SVG演示放映器,其特征在于,其位于系统逻辑层,其包括播放状态管理模块、放映页数据准备模块、页切换模块和页内动画放映模块;该放映页数据准备模块包括静态数据准备模块;该页切换模块包括后翻页模块和前翻页模块;该页内动画放映模块包括动画放映模块和动画消隐模块;上述各模块均有与系统数据层进行数据交换的接口;系统应用层可接收鼠标和键盘事件,同时把接收的事件分发给SVG演示放映器中的各模块。

【技术特征摘要】
1.一种SVG演示放映器,其特征在于,其位于系统逻辑层,其包括播放状态管理模块、放映页数据准备模块、页切换模块和页内动画放映模块;该放映页数据准备模块包括静态数据准备模块;该页切换模块包括后翻页模块和前翻页模块;该页内动画放映模块包括动画放映模块和动画消隐模块;上述各模块均有与系统数据层进行数据交换的接口;系统应用层可接收鼠标和键盘事件,同时把接收的事件分发给SVG演示放映器中的各模块。2.根据权利要求1所述的SVG演示放映器,其特征在于,所述系统数据层包括SVG解释器将SVG文档读入内存创建的DOM树和被SVG演示放映器加工过的存储在用SVG脚本在DOM树中创建的节点内容。3.根据权利要求1所述的SVG演示放映器,其特征在于,其还包括索引页处理模块。4.根据权利要求1所述的SVG演示放映器,其特征在于,其还包括版本校验与版本控制模块。5.根据权利要求1所述的SVG演示放映器,其特征在于,其还包括自动放映模块和导航条模块。6.根据权利要求1所述的SVG演示放映器,其特征在于,所述放映页数据准备模块与页切换模块其中之一内含有页动画数据准备模块和页内动画数据准备模块。7.一种使用如权力要求1所述的SVG演示放映器进行演示放映的方法,其特征在于,其包括如下过程a.加载SVG演示数据文档,利用DOM提供的onload事件,调用它的响应函数,在响应函数中调用放映页数据准备模块提供的接口,准备放映页数据;b.判断是否指定了自定义放映列表,如果是,...

【专利技术属性】
技术研发人员:万里曾崴熊玉辉贺利军
申请(专利权)人:珠海金山软件股份有限公司
类型:发明
国别省市:44[中国|广东]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1