基于MFC的SWF动画文件解析设计

鲁云飞1,何明华2(1.福州大学电气工程与自动化学院,福建福州350108;350108)2.福州大学物理与信息工程学院,福建福州摘要:提出了以MFC为开发工具对SWF动画文件进行解析开发,在分析SWF动画文件头结构和标签结构的基础上,设计了SWF动画文件的解析流程,并利用MFC优越的C++语言编程性能,在VS2005开发平台上实现了对SWF动画环境、动画元素等信息的读取,为嵌入式WinCE操作系统下Flash播放器的研制奠定了坚实的基础。关键词:SWF;解析;文件结构;MFC;VS2005中图分类号:TP391文献标识码:A文章编号:1674-7720(2011)17-0040-04DesignofSWFanimationfilesparsingbasedonMFCLuYunfei1,HeMinghua2(1.CollegeofElectricalEngineeringandAutomation,FuzhouUniversity,Fuzhou350108,China;2.CollegeofPhysicsandInformationEngineering,FuzhouUniversity,Fuzhou350108,Abstract:ThispaperproposesthedesignofSWFanimationfileparsingusingMFCdevelopmenttools.ByintroducingthefileheaderstructureandtagstructureofSWFanimation,thispaperdesignstheparsingprocessofSWFanimationdocuments,andobtainsSWFanimationenvironmentalinformationandelementinformationonVS2005developmentplatformbyusingthesuperiorperformanceofC++programminglanguageofMFC,andestablishesasolidfoundationforthedevelopmentofflashplayeronembeddedWinCEoperatingsystem.Keywords:SWF;parse;filestructure;MFC;VS2005SWF作为Flash动画文件的一个重要分枝,是嵌入目前,已有人在对SWF动画文件开发上投入大量时间与精力,但大多是用其他开发工具进行开网页或独立播放的Flash影片压缩格式,具有非常优秀的压缩性、传输性与交互性,且因其能将矢量图、位图、音频、视频和深一层交互动作等有机地、灵活地结合在一起,所以该矢量图形文件格式的动画具有美观、新奇、交互性强的效果[1]。伴随着Flash技术的不断发展,SWF动画以其众多的优点被人们广泛应用于生活的方方面面,特别是在娱乐方面,更是占有相当大的市场[2-3]。同时,随着嵌入式技术的迅速发展,人们对生活娱乐的需求越来越大,其要求也越来越高,如对娱乐设备的便携性需求。然而,纵观国内外,嵌入式设备对SWF动画播放的支持存在很多不足,特别是嵌入式WinCE设备。因而,研究与解析SWF动画文件以获取文件中各个元素信息及识别动画信息,具有具有强大数据库支持的Delphi为开发媒介[4]。嵌入式系统对编程语言的限制,使得如将以Pascal编程语言为媒介的Delphi开发平台开发的PC应用程序移植到嵌入式系统中,其难度及工作量将大大增加,不利于其后续的开发与研究;而MFC是微软基础类库,提供了所有一般简化开发工作量,同时MFC还具有良好的移植性能[5-6]。因而,考虑到后续在嵌入式WinCE操作系统上开发SWF动画播放器,本文在分析与研究SWF动画文件的基础上,充分利用MFC的众多优点,以VS2005为开发平台,C++语言为编程工具,实现了对SWF文件的解析与文件信息的读取并利用MFC界面窗口的人*基金项目:福建省新世纪优秀人才支持计划(XSJRC200726)了一个简洁而直观的窗口对文件的解析信息进行显示。MFC项目工程,图2所示为新建项目工程中的一个工程设置界面。项目工程设置完毕后,为方便而开始解析方法设计11.1SWF结构简析SWF文件主要由文件头和多个标签组成,且最后以一个结束标签(EndTag)结束[7]。SWF文件的文件头具有一个标准格式,即包括了SWF文件的标识符、版本号、文件大小、影片尺寸、帧速率以及文件总帧N析结果,本文在对文件进行解析SWF表1SWF文件头结构Y?前,先对应用程序显示界面进行了设计。该界面设计主要分为功能按钮和窗口显示两个部分。功能按钮部分实现“打开”、“退出”、“确定”以及“取消”等操作,而窗口显示部分则完成对SWF文件解析信息的显示功字段数据类型说明标记位标记位标记位版本号文件长度显示区域帧速率总帧数为“F”或“C”均为“W”均为“S”记录文件版本记录文件的总长记录文件帧的尺寸大小以8.8定点格式记录帧的速率UI8UI8UI8UI8UI32RECTUI16UI1结束图1解析工程整体构架而文件标签则主要包含标签头和...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供参考,付费前请自行鉴别。
3、如文档内容存在侵犯商业秘密、侵犯著作权等,请点击“举报”。

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

客服邮箱:

biganzikefu@outlook.com

所有的文档都被视为“模板”,用于写作参考,下载前须认真查看,确认无误后再购买;

文档大部份都是可以预览的,笔杆子文库无法对文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;

文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为依据;

如果您还有什么不清楚的或需要我们协助,可以联系客服邮箱:

biganzikefu@outlook.com

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

笔杆子文秘
机构认证
内容提供者

为您提供优质文档,供您参考!

确认删除?