上一篇:Office 2007面面观之(10) 实现商务智能<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

 
 
       最近我们一直在聊有关2007 Microsoft Office system的新功能和新特性,有一个重大变革相信用过Office 2007的朋友都会留意到,这就是全新的、基于XML的文档格式,微软称之为Office Open XML格式(简称OOXML)。
XML是一种通用数据格式,拥有开放的格式和标准,XML格式的内容能够通过应用程序、平台和 Internet 浏览器来读取,因此得到了广泛的应用。而用以前的Office创建的文档采用的都是二进制格式,包括我们非常熟悉的.doc.xls .ppt等文件,这些文件需要用户安装Office程序才能打开和编辑,我们也很难将文件中的数据在不同的应用程序之间移动和传输。二进制文件格式的不透明性阻碍了其他应用程序对Office文档内容的访问和交互,还有像文件受损和应用程序版本的冲突等问题也时有发生,让人头痛。看来采用开放的XML是势在必行!微软最早在Office 2000这个版本中采用了对 XML文件格式的支持,用户可以将Office文件的二进制格式转换为XML格式,但由于Office文件格式的本质没有改变,所以要想实现向通用的XML格式的转换是一件麻烦事。在全新的Office 2007中,微软终于正式引入了Office Open XML,并将其作为文档的默认格式。
请大家注意两点:第一,Office Open XML格式并不是单纯的XML格式,而是微软推出的一种基于XML和ZIP技术的新的文档格式,其标准是由微软来制定的;但微软已经承诺Open XML并无版权,向用户免费开放,任何人都可以将Open XML整合到自己的产品中,而不需向微软支付版权费用。第二,只有Word 2007Excel 2007PowerPoint 2007的文档可以以Open XML新格式来保存,其他Office 2007的组件所创建的文档将仍然采用原有的格式。
下表列出了Office 2007所支持的全新的文件格式,并说明了其中有哪些新文件格式可在WordExcelPowerPoint2000XP20032007版本之间实现互换。
<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />

 
与以往的二进制文件格式相比,全新的Open XML文件格式有很多优势和特性,我们具体来看:
1.       交互性:

Open XML文件格式将Office文档由封闭转为开放,使得Office文档与其他应用程序和系统的交互性得到了显著的增强,你可以采用多种方式来访问Office文档中的内容,即使没有安装Office,也能够实现数据的交换和传输。另外,你还可以通过使用能够处理XML的标准工具和技术来创建Office文档,或者改写Office文档中的信息。因此对于开发人员来说,想要构建与Office文档实现交互的应用程序将会变得易如反掌!
2.       压缩性:

XML 是一种基于文本的格式,本身的压缩性就非常好,而且 Open XML文件格式借助了ZIP技术进行文档的存储,因此通过压缩能够有效地减小Office文档的大小。据微软官方的统计数据显示,WordExcel文档格式与原来相比减小了50~75%PowerPoint文档比原来减小了25%,而且显示效果反而有了提升。文档大小的减少不仅可以帮助用户提高工作效率,更能为用户节省成本,因为它减小了存储文件所需的磁盘空间,并降低了通过电子邮件和网络传输文件所需的带宽。
实际上,基于Open XML格式的文件是由一些部件组合而成的,而ZIP技术会在文档存储时将这些组件都封装在一个ZIP容器中,进行压缩打包,最终仍以一个单个文件的形式保存起来。如果你有兴趣的话,可以试着将.docx.xlsx.pptxOpen XML格式的文件进行解包,查看Open XML格式的内部结构。具体方法很简单,直接将文件的后缀名改为.zip,然后用ZIP程序进行解压缩即可。你会看到原来的单个文件会转变为一个文件夹,里面包含了一定的目录结构,以及一些文件,这些实际上就是原文档中带有的各种元数据、文档部件、文档属性、缩略图和图形对象等等,通过这种方式,我们能够轻松了解到Office XML格式文件的内部组成。当然你可能无法理解各个文件的具体功能,建议你去查看微软MSDN站点上的官方说明。下面这张图就展现了Open XML格式的内部文件结构。
3.       可靠性:

以前会常常看到有些朋友由于Office文档的损坏而丢失掉非常重要的资料和数据,包括我自己,那种心情真的是比刀割还难受,用了无数的修复工具,最终依旧全是眼泪…… 如果你的文档是采用Open XML格式来保存的,可就不必担心这个问题了。正如我在前面所提到的,即使Office文档已经损坏,无法使用Office程序打开,你也可以将文件通过ZIP解压缩,在包中找到用于记录所有文字信息的XML文件,以及文档中内嵌的所有的图片、图表和音频视频等对象(如下图所示),帮助你将由于文件的损坏或破坏而丢失信息的风险降低到最低限度。
4.       安全性:

Office文档中可以创建宏,可以加入VBA代码,这既扩展了Office文档的功能,同时也可能会导致一些恶意病毒的***,使你的计算机面临严重的威胁。以往,为了能够有效地防范宏病毒的发生,Office程序在默认状态下会禁用宏,但这并不是解决问题的最好办法。如今,基于Open XML格式的文档会变得更加安全,更加透明,因为凡是包含宏或代码的文档,都会以特殊的名称保存,如Word文档的后缀名是.docmExcel工作簿的后缀名是.xlsmPPT演示文稿的后缀名是.pptm,其中的字母“m”就代表了macro(宏),这样你可以很清楚的识别到当前的文档中是否有宏的存在。另外在默认情况下,新的Open XML文件格式不执行文档中的宏和嵌入代码,你还可以快速识别和删除文档中带有的身份信息和敏感信息,如用户名、备注和文件路径等。因此,以Open XML格式保存的文档将更加安全,你可以放心地与他人进行文档的相互共享。
5.       兼容性:

我们用Office 2007创建的文档,别人能打开吗?能修改吗?对于新格式兼容性,一直都是大家非常关注的问题。实际上,Office 2007具有向后兼容性,也就是说在兼容模式下,Office 2007能够打开Office 2000XP2003所创建的二进制格式的文档,也可以通过现成的功能,将其转换为Open XML格式。但早期的Office版本在默认状态下是不支持Open XML格式的,这为新格式的推广带来了一定的困难。但你完全不必担心版本的兼容性问题,因为微软为早期Office版本的用户提供了一个免费的插件(Office 2007文件格式兼容包,下载地址:[url]http://www.microsoft.com/downloads/details.aspx?displaylang=zh-cn&FamilyID=941b3470-3ae9-4aee-8f43-c6bb74cd1466[/url]),只要在Office中安装了这一更新插件,即可实现对Open XML格式的兼容,也可在早期的Office程序中将文档直接保存为或转换为Open XML新格式,使各种版本的Office用户都能体验到Open XML格式的卓越功能和特性。这里需要大家注意的是,有些Office 2007中的功能在兼容模式下是不支持的,比如SmartArt图示在兼容模式下是只读的,无法编辑修改;比如Excel表格的隔行彩色效果在兼容模式下是看不到的。你可以使用Office 2007自带的“兼容性检查器”(Office 按钮à准备à运行兼容性检查器),对当前Open XML格式的文档中是否带有早期Office所不支持的功能进行检查,兼容性的情况一目了然。

 

好了,以上就是我对Open XML的理解,夸了很多微软新标准的好,肯定有人说我是微软的托了。我没那么大能耐,只能说算是一个微软技术和产品的爱好者,但我还是要提醒大家:由于大部分的用户使用的还是早期的Office版本,并且没有安装兼容包,所以建议朋友们在使用Office 2007时,还是有必要把文档另存成早期的格式一份,以防别人无法打开这些文档。Open XML好是好,但要真正推广开来,还是需要一个漫长的过渡期的。
微软从自己的利益出发,打算把Open XML打造成国际标准,我觉得是可以理解的,但这一过程显然并不那么容易。目前的情况是,ANSI没有给微软好脸色,给拒了,微软出师不利。今年9月份,ISO大会上将表决是否将微软的Open XML文档格式纳入国际标准,情况可能也并不乐观,因为微软遭遇了很多来自办公软件企业的阻力。我相信大家都是反对垄断的,但我看不惯近期国内某些人士的说法和做法,表面上是鼓动国人爱国,是反对微软的垄断,实质上恐怕很难排除利益的驱使。我不想做过多的评论,作为最终用户,我只想说,不论是OOXML,还是什么ODFUOF,我选择我喜欢,哪个兼容性好我用哪个,哪个认可度高我用哪个。你们吵去吧,我们看看热闹就满足了。呵呵~~
 

 

 

 

欢迎关注  Office 2007面面观系列专题   by 阿拉丁

 

Section IOffice 2007组件概览

Section IIOffice 2007新特性介绍