【VC++开源代码栏目提醒】:本文主要为网学会员提供“基于XML的演示文稿文档格式转换技术研究 - 硕士论文”,希望对需要基于XML的演示文稿文档格式转换技术研究 - 硕士论文网友有所帮助,学习一下!
北京信息科技大学 硕士学位
论文基于XML的演示文稿文档格式转换技术研究 级别:硕士 专业:计算机应用技术 指导教师:李宁 20081201 摘要 摘要 本文主要探讨基于XML的演示文稿文档格式转换技术。
演示文稿在日常工作交流等方面发挥着重要作用,通常与文字处理、电子表格一起作为办公软件的重要组成部分。
但办公文档格式多样化、文档格式间不兼容的现状给用户交换和共享文档数据带来了很大的不便。
“标文通”UOF(Uniform Office Format)是中国标准文档格式,ODF(Open Document Format)与OOXMI.(Office Open XML)是办公文档格式国际标准。
OOXML文档格式由Microsoft Office 2007采用,拥有很大的用户群。
实现UOF演示文稿文档格式与OOXML演示文稿文档格式的相互转换有极大的用户需求。
该课题研究了基于XML的结构化文档格式转换方法,考虑演示文稿文档UOF格式与OOXML格式的特点,最终确定采用以XSLT转换为主、辅以DOM解析的转换方法。
首先整体分析研究UOF文档格式与OOXML文档格式的异同点,提出并建立了演示文稿文档模型。
通过该文档模型,统一了文档内基本元素的描述,进一步分析了二者功能及结构上的差异,建立了UOF格式与OOXML格式演示文稿的结构映射关系。
在此基础上,提出了UOF与OOXML格式演示文稿文档的转换的基本思路和框架。
结合XSLT自身的特点,通过预处理、主转换、后继处理等操作最终实现了二者的相互转换,内容涉及母版、版式、幻灯片中的段落、图形、图像等静态数据,以及幻灯片切换、对象动画等动态数据。
该课题对文档信息的共享和“标文通”国家标准的推广实施有重要意义。
关键词 标文通;OOXML:演示文稿;办公文档格式;XML:XSLT ABSTRACT ABSTRACT The paper discusses the transformation of XML—based presentation documentformats.As widely used in communication,presentation together with word—processingand spreadsheet—processing,have become important parts of an office software.However,information exchange and sharing in office documents are by no means easy due toincompatibility of different formats.Among the most popular formats,Uniform OfficeFormat(UOF)iS the Chinese national standard for office used document format,OpenDocument Format(ODF)is the international standard,whereas the international standardOffice Open XML Format(OOXML)is strongly supported by Microsoft Office 2007and has large number of users。
Making the documents transformable between UOF andOOXML formats,particularly the presentation documents,is thus a demandingrequirement. This research made a study of the XML related transformation technology.According to the special features in the UOF and OOXML presentation documentformats,XSLT is chosen as the major technique to perform the major transformationsupplemented by XML DOM programming.First,the similarities and differencesbetween UOF and OOXML presentation document formats were analysed,a model wasproposed to represent presentation document structure,which provides the commonknowledge to express the foundamental elements in the two formats and to investigatethe correlations between them either in their structure or in their functions.Atransformation framework was then built up,it takes three steps,i.e.,pre—processing,main transformation and post—processing.Finally an UOF—OOXML translator forpresentation documents was developed which is capable to do the bi-directionaltransformation of both static and dynamic contents,e.g.,paragraghs and graphics,slideswiching and animation,etc. The research result could be very help ful to the exchange and sharing of informationand to the widely adoption of UOF standard.1<正Y WORDS UOF,Office Open XML,presentation,office document format,XML,XSLT II 学位
论文版权使用授权书 本人完全了解北京信息科技大学关于收集、保存、使用学位
论文的规定,同意如下各项内容:按照学校要求提交学位
论文的印刷本和电子版本;学校有权保存学位
论文的印刷本和电子版,并采用影印、缩印、扫描、数字化或其它手段保存
论文;学校有权提供目录检索以及提供本学位
论文全文或者部分的阅览服务;学校有权按有关规定向中国科学技术信息研究所等国家有关部门或者机构送交
论文的复印件和电子版;在不以赢利为目的的前提下,学校可以适当复制
论文的部分或全部内容用于学术活动。
学位
论文作者签名:右眷a然 Ⅻ07年o,月,6日 经指导教师同意,本学位
论文属于保密,在 年解密后适用本授权书。
(注:
论文属公开
论文的,作者及导师本处不签字) 指导教师签名: 学位
论文作者签名: 年 月 日 年 月 日 硕士学位
论文原创性声明 本人郑重声明:所呈交的
论文题目为《基于XML的演示文稿文档格式转换技术研究》学位
论文,是本人在导师指导下,进行研究工作所取得的成果。
尽我所知,除文中已经注明引用的内容外,本学位
论文的研究成果不包含任何他人创作的、已公开发表或者没有公开发表的作品的内容。
对本
论文所涉及的研究工作做出贡献的其他个人和集体,均已在文中以明确方式标明。
本学位
论文原创性声明的法律责任由本人承担。
作者签字:精舞a嬖、 ≯007年o 1月“日 第一章引言 第一章引言1.1演示文稿的发展历史 人们在进行
工作汇报、教学或者同常交流的过程中,向听众简述
报告内容、传达信息或观点时,可借助多种图形辅助技术,如手册、讲义、黑板、活动挂图、海报、字幕片、幻灯片等,其中以幻灯片方式最为常见。
此外,许多多媒体处理程序也包含演示功能,以幻灯片放映的形式展示多媒体元素。
作为一种介绍程序,演示文稿应用软件可以创建由文字组合、图片、电影以及其它事物组成的幻灯片…。
幻灯片演讲者控制放映过程,可以在计算机屏幕上直接显示,或使用放映机或投影仪投射到屏幕上。
最早的演示文稿图形软件运行在
计算机工作站上,如Genigraphics、Autographix、Dicomed〔2】等。
相对于传统的打印张贴方式,演示文稿图形软件的出现使得展示内容可以即时改变,但需要专业化的操作员,耗资巨大,仅工作站运转就需花费¥50,000到¥200,000(1 979年)【¨。
1979年,Hewlett Packard生产了第一个所见即所得的(WYSIWYG)的演示文稿处理软件BRUNO(即后来的HP—Draw)。
20世纪80年中期个人电脑的发展改变了演示文稿的创建方式,个人电脑用户可以通过专门的应用程序创建专业化视图的演示文稿图形——35mm的幻灯片页面,并通过幻灯片投影仪展示给观众。
1982年,出现了第一个显示在个人电脑屏幕上的
演示文稿软件VCNExecuVision〔3,4】,借助该软件,用户可以根据根据展示的文字信息从图片库中选取相匹配的元素。
随着演示文稿应用程序的普及,80年代后期,部分厂家丌始支持硬盘存储器上幻灯片的显示、创建及打印。
90年代,视频投影仪丌始大范围应用。
演示文稿处理早期作为独立工具出现,例如Aldus公司的Persuasion〔引、CA公司的CA.Cricket presents〔6’71、Apple公司的KeyNotes〔引,之后逐步成为办公软件的重要组成部分。
例如,Microsoft Office PowerPoint、OpenOffice Impress等等。
演示文稿的内容从静态文字和图形,逐步发展到高度交互的多媒体形式。
今天,演示文稿的展现已经与多媒体的表现融为一体。
例如,Microsoft Office Power Pointer可以与流媒体同步集成,OpenOffice Impress可以将演示文稿输}n成SWF和PDF等形式。
演示文稿处理通过图文并茂的方式为观众讲解或展示主题内容,在科技、文教和商jJk等领域得到广泛应用∞1。
伴随社会的发展,演示文稿处理软件在多样化、 第一章引言集成化、平台化的同时呈现出网络化的念势。
WEB2.0技术H益广泛的应用使得用户对在线办公的需求越来越强烈,加之面临越来越多办公软件升级及盗版l’UJ题,OFFICE2.0,即近来兴起的Office Online开始渐渐发挥其优势,如在线的演示文稿应用
程序有Thinkfree Viewer、S5、Spresent掣91。
在线办公软件较多采用XHTML、CSS、JavaScript等技术展现文档。
通过
网络服务,用户可以实现对文档的合作与共享,而不受其操作系统类型的限制。
由于在线办公软件刚刚兴起,尚面临着诸如网络安全问题、细节化操作等问题,因此主要用户仍是面向个人的,真正得到政府部门认可估计仍需很长时间。
目前应用最为广泛的仍是本地化的办公软件。
1.2办公文档格式 目前,演示文稿通常与文字处理、电子表格处理一起作为办公软件的重要组成部分。
办公软件文档格式是办公软件所处理文档的格式记录形式,一般体现着办公软件的功能,不同格式之问差异巨大。
1.2.1二进制文档格式 早期大部分办公文档采用二进制格式,文档的表示形式与其创建程序结合紧密,一般不对外公开,例如Microsoft Office自97版至2003版未公布其格式细节。
这在以纸质文档为信息载体的早期办公系统中是可以接受的,但随着互联网技术的发展、办公软件复杂度的提高以及其它人为因素,不同的办公软件之问文档交换呈现的问题日渐突出,办公软件采用私有格式带来了很多
问题,诸如:格式信息不完整、文档依赖软件厂商的产品、扩展性差、互操作性差、文件尺寸庞大等。
另外,若干年后读取这些办公软件厂商所特有的格式文件时,很难保证不会有明显的损失,文档的安全性无法保证。
1.2.2 XML文档格式 技术的发展以及市场的多样化等冈素对文档结构提出了新的要求。
办公文档要想长期保留,应该尽量做到与平台环境无关、与应用软件无关。
即使将来文档生成系统完全被淘汰,仍能从纸而文件或电子文本中精确理解文档的内容,这要求1)文档最好是纯文本格式记录的;2)文档巾的标汜是易于理解的。
2 第一‘章引言 XML(ExtensibleMarkup Language)是一种业界广为认同的臀标语言标准【l 01。
XML文档以纯文本格式记录,文档中的标记可扩展、易于理解,符合办公文档长期存储的要求。
目前,标准化的信息技术已经成为社会的基础设施,而开放的XML文档格式J下在被越来越多的个人用户及政府机关接受。
顺应市场的需求,办公软件文档格式丌始遵循丌放标准。
通过制定统一的、XML描述的文档格式标准,文档格式不再由个别
软件开发商私有,各种软件
系统可以采用一致的语言对文档进行描述, 以实现不同版本、不同厂商、不同平台之间文档格式的互通,确保文档在不同系统间更加有效、自由地实现互操作,改善系统的开放性【l¨。
1.3办公文档格式标准现状 目fj{『采用XML语言描述的开放文档格式有:国际标准化组织(ISO)和国际
电工委员会(IEC)于2006年批准的办公文档格式国际标准ODF(Open DocumentFormat for Office Applications,OpenOffice.org采用)【圮l、2008年4月正式批准的办公文档格式国际标准OOXML(Office Open XML)文档格式【门】、中国的统一办公文档格式UOFll6】(Uniform O伍ce.document Format,金山WPS〔14】、永中集成office 20071151等支持)等。
这些文档格式均包括文字处理、电子表格处理和演示文稿处理等主要部分的描述。
1.3.1 ODF文档格式 办公应用程序开放文档格式ODF于2006年5月成为国际标准(即ISO/IEC26300—2006),是基于XML的文档格式,主要用来存储和转换可编辑的办公文档,支持文字处理、电子表格、演示文稿、制表制图和图形编辑等办公软件应用。
ODF目前由结构化信息标准促进组织(即OASIS)负责维护。
ODF逐渐得到了越来越多软件厂商的支持,如Corel、IBM、Opera、Oracle、Red Hat公司等,现有的基于ODF开发的应用软件有OpenOffice.org 2.0t17】、SUNStartOffice 8f1 81、IBM Workplace Managed Client productivity tools、KOfficell9J以及国内红旗中文贰仟的Redoffice3.0等。
ODF中定义了一个XML结构,为文档编辑提供了高层信息,并适合用XSLT等工具进行格式转换。
除具有一般基于XML的文档格式的特点外,ODF还具有如下特点: 1)ODF公布时W3C Schema还未制定,采用ISO认可的Relax NG(实际较 3 第一章引言少使用)。
2)支持两种存储格式:单文档和多文档。
3)所有应用都使用同样的文档和子文档定义方式,文档类型在压缩包中mimetype子文档中定义。
1.3.2 OOXML文档格式 2005年12月15日,微软公司将OOXML提交给欧洲计算机制造商协会 (ECMA),2006年12月7日OOXML被批准成为ECMA标准(即ECMA376)。
2007年1月5日,ECMA将OOXML提交给ISO/IEC JTCl,经由快速通道,最终于2008年4月1同成为ISO/IEC国际标准。
OOXML文档格式规范基于XML语言和ZIP开放打包结构,最初由微软公司定义。
该格式继承并扩展了以往文件格式的功能,通过采用压缩技术减小了文件尺寸,增强了
文档数据管理能力、
文档数据恢复能力以及与其它应用程序的互操作能力。
不同于以往微软的专有格式,OOXML格式是开放、免授权的【201,任何支持ZIP和XML的应用程序都可以查看和处理采用OOXML格式的文档数据。
微软办公软件产品O陌ce 2007将其作为的默认文档格式。
OoxML文档格式在ISO标准化过程中有所改动,Office 2007在某些方面已不再符合当日矿版本的ISO/IEC29500标准。
尽管如此,OOXML基本覆盖了Office2007的主要办公应用,如字处理软件(即Word)的WordprocessingML、电子表格处理软件(即Excel)的SpreadsheetML、演示文稿软件(即PowerPoint)的PresentationML等,分别通过XML对其描述并加以扩展,增加了矢量图形(VML和DrawingML)等、文件属性、参考资料、数学元素、自定义XML数据属性等的支持包。
OOXML规范包括正式的内容(normative material)和非正式的内容 (informative material)。
前者主要包括对OOXML的定义,后者主要包括说明性的内容。
OOXML定义过程中,文档对应文档容器,每一个文档容器由多个部件组成,每个部件描述了文档的不同部分【211,除了少数代表图形的二进制文件或内嵌OLE对象,大多数部件采用XML文件形式,这些部件相互之问通过关系部件协同工作。
除了具有一般基于XML的文档格式的特点外,OOXML文档格式还有如下特点: 1)良好的向后兼容性和向日仃兼容性。
2)从ZIP
压缩包中u【I丁以只读取需要的内容,无需打丌整个文档,操作便捷。
4 第一章引言 3)采用W3C Schema或Relax NG进行数据定义。
4)将包含宏
代码的文档与普通文档通过不同的扩展名加以区分,方便用户识别,加大了文档的安全性。
5)文档内容在压缩包中进行分类、单独存储,增强了数据恢复能力。
6)提供了在文档格式中支持用户自定义数据的能力。
1.3.3 UOF文档格式 “标文通”是我国推荐性国家标准(GB/T20916.2007),全称《中文办公软件文档格式规范》,英文简称UOF(Uniform Office.document Format)116】。
它是以中文办公软件需求为出发点,在分析、借鉴国际相关标准的基础上,结合我幽困情,从实际应用出发,制定出的针对文字处理文档、电子表格和演示文稿三种主要文档格式的描述体系。
UOF包括三个组成部分:以XML文档类型定义语言定义的文档格式标准、文档物理存储的打包格式和支持文档格式标准定义的规范性附录¨6‘。
其中,UOF文档格式标准采用了W3C XML Schema作为描述语言,定义了基于XML置标语言的中文办公文档格式规范,目前主要描述了办公文档的文字处理、电子表格和演示文稿三个部分【221。
该规范作为中文办公软件文档格式和存储格式的定义,支持不同的中文办公软件之间的兼容和文档互换。
UOF符合中国用户的应用习惯,文档的使用不再受制于办公软件,因而有利于打破少数厂商对办公软件市场的垄断…】,对于保障各类政府电子公文和办公文档的长期有效性、促进电子政务各项应用与中文办公软件的集成具有重要意义,奠定了办公软件文档信息交换的基础〔231 o 除了具有一般基于XML的文档格式的特点外,UOF还有如下特点: 1)基于中文办公软件功能需求,充分反映中文办公软件的特点【241。
2)采用W3C Schema进行数据定义。
3)采用正式的国家标准、圈际标准或行业规范或采用成熟的丌放标准。
如将SVG作为统一图形描述规范,MathML作为数学公式描述规范,等等。
4)采用中文置标,支持多语言置标版本【251。
5)具有独立、完整、开放和呵扩展的文档描述体系架构,便于用户扩展。
6)可以嵌入用户数据。
通过UOF元素与用户XML实例元素的对应,可以方便地从UOF文档中提取用户数据,或将用户数据导入到UOF文档中。
7)文档标准体系架构支持模块的可重用件,减少文档描述的冗余,保证文档简洁易用。
气 第一章引言1.4课题背景与意义 制定文档格式标准的目标在于统一文档格式,然而办公文档格式形成了多个标准共存、标准间互不兼容的现状。
为了改善此状况,试图以单一的格式标准解决文档之问互通问题是不现实的,因为应不用市场的需求,三个文档格式标准制定之初有不同的侧重点,短时问内不可能实现三种标准的融合;在三者共存的现状下,通过文档格式转换实现三者之间的互通可以促进文档格式的全面兼容。
为实现UOF与OOXML文档格式的互通,2007年由微软出资并提供一定的技术支持,启动了
开源项目UOF Translator,旨在通过开发UOF.OOXML转换器,将其作为Microsoft Office软件的UOF插件,或独立存在的转换器软件,实现UOF与OOXML格式的相互转换。
本文主要针对演示文稿文档部分进行处理。
目前,UOF与ODF、ODF与OOXML之间演示文稿部分已经借助转换器实现了互通。
另外,微软的办公软件Microsoft Office PowerPoint可以实现早期二进制格式木.ppt文档(Microsoft Office PowerPoint 2000/2003/XP的默认存储形式)与基于OOXML格式的木.pptx文档(Microsoft Office PowerPoint 2007的默认存储形式)之间的兼容;国内支持UOF的主要办公软件通过将文档存储为宰.uof类型,基本实现了自身文档存储格式与UOF之问的兼容,如永中集成office的木.eio类型的文件等可以实现与宰.uof文件之间的相互转存。
实现UOF与OOXML演示文稿部分的相互转换,将有助于进一步推动办公文档格式的互通瓦融。
目前,演示文稿处理部分各文档格式互通状况如图1.1: 图1.1部分演示文稿文档格式间互通图示 本项研究的意义在于,通过UOF与OOXML演示文稿文档格式的转换,促进UOF与OOXML文档格式的互联瓦通。
用户不但可以使过去保存的微软二进制文档或OOXML文档以符合国家标准的文档形式保留下来,不必担心由于办公软件的更替而带来的文件信息丢失或无法打开等问题;同时,国内办公文档格式町以通过UOF格式与OOXML格式实现文档格式互换,这也解决了困内办公软件文档格式与OOXML格式之间的转换问题。
6 第:章国内外研究现状及发展动态 第二章国内外研究现状及发展动态2.1办公文档格式标准之间的已有转换成果 目前,UOF、ODF与OOXML三个办公文档格式间已实现的相互转换有: UOF.ODF:UOF.ODF文档格式转换器足第一个开放办公文档格式之间的转换器,由IBM与北京大学合作开发的
开源项目,1.O版本于2006年11月发布,用于实现UOF与ODF标准文档格式字处理部分的双向转换【2 61。
ODF.OOXML-ODF.OOXML转换器项目是由微软与Novell等合作丌发的
开源项目,包括2007年2月发布的ODF.Add.in.for.Word、2007年5月发布的ODFAdd—in for PowerPoint和ODF Add.in for Excel,成果形式为Microsoft Office插件,支持ODF和OOXML之间的转换【27】;Novell开发了OpenOffice.org上支持OOXML的插件。
UOF.OOXML:UOF Translator For Word是微软与北京航空航天大学、北京信息工程学院、清华大学、联想立泰等合作开发的丌源项目,为Microsoft Word提供可以与UOF字处理相互转换的插件【28】。
以下几节分别介绍这些转换器的实现思路及相关技术。
2.1.1 UOF-ODF文档格式转换 UOF—ODF转换器的目标是实现国家标准UOF和困际标准ODF文档格式之间的双向转换。
此转换器主要采用iava语言中对XML文档按SAX方式进行处理,通过多轮SAX解析实现文档格式的转换f29,30】。
以ODF--)UOF方向的转换为例,解析过程中将格式元素分为可直接转换、可问接转换、不可转换三类,针对不同类型元素做不同处理;第一类元素卣接转换,第二类元素通过几轮解析获得必要信息进行转换,第三类元素写入扩展区。
ODF--)UOF转换时,Converter类}J【{次调用转换Handler进行文档格式解析。
第一步,Converter类调用First ConvHandler对Source File文件解析,提取第二步解析所需的信息,存储到Stored Data;第二步,Converter类调用Second ConvHandler对Source File文件解析,对可直接转换的第一类元素进行直接转换,同时结合Stored Data中的信息对可间接转换的第二类元素进行转换,结果写入Temp.xml;第三步,Converter类调用Third ConvHandler对Source File文件解析,将不可转换的第三类元素写入Temp.xml扩展区;第四步,Converter类调 7 第:章国内外研≯£现状及发展动态用Third ConvHandler,为Tmnp xml文件补充其他必要元索或属性。
见图2 l。
震翟雹蜀 7 ,暖莲嚣图盈一 。
’叠囝 , 翌 墨墨墨墨曩 .