210 likes | 386 Views
OFC330 下一代 Office12 Open XML 文件格式. 涂曙光 产品技术专家 IW STU EPG 微软 ( 中国 ) 有限公司. 课程主题. Problems… Office12 “ 文件容器” Zip Package XML-Based Document Parts Relationships Macro-Enabled vs Macro-Free File Extensions 方案场景. Problems…. 如何使服务器上的 Office 文档能最大程度的被访问? 有了标准的“公司简介”,如何使所有的项目标书能准确的使用它?
E N D
OFC330下一代Office12 Open XML文件格式 涂曙光 产品技术专家 IW STU EPG 微软(中国)有限公司
课程主题 • Problems… • Office12 “文件容器” • Zip Package • XML-Based Document • Parts • Relationships • Macro-Enabled vs Macro-Free • File Extensions • 方案场景
Problems… • 如何使服务器上的Office文档能最大程度的被访问? • 有了标准的“公司简介”,如何使所有的项目标书能准确的使用它? • 想在新的幻灯片里面使用一张不错的图片,隐约记得好像在哪个Word文档里面见过… • 想在服务器端用代码取出数据库中的数据,然后根据模板动态生成标准的Office文件 • 如何才能快速的给现有文档套用各种不同的样式呢?
Office12 File Container • 文档各个部分(Parts)单独存储 • XML:Document、MetaData、Schema... • Non-XML:Images、OLE Objects...
XML-Based Document • 文档(Word文档、工作表、幻灯片)完全以XML文本格式存储 • Office12 XML Schema Reference会完全公开(Royalty-Free ) • 任何第三方软件和工具可读取并修改文档内容(即使没有Office12 Application)
Zip Package • 文件各个Parts以标准Zip格式打包 • 压缩/解压过程对用户透明 • 更节省存储空间 • 更好的容错性、可维护性 • 更好的可访问性(可通过标准Zip工具访问)
Parts • Part是组成完整Office12文件的子模块 • 一个Part即可被看做一个单独的文件 • XML Parts(文档/工作表/幻灯片、元数据、Schema、Relationships等) • Non-XML Parts(图片、音频/视频、OLE对象、VBA代码等) • 可由外部程序直接访问各个Parts
Relationships • 标识Parts间的相互引用 • 以XML格式存储 • 外部程序可通过访问Relationships来得到Parts信息
Macro-Enabled vs Macro-Free • Macro-Enabled:带VBA代码、宏的文件 • Macro-Free:不带VBA代码、宏的文件 • Office12文件默认为Macro-Free • 用户可完全信任Macro-Free文件 • Office12完全禁止Macro-Free文件中所包含的任何代码的执行 • 以不同的扩展名区分
File Extensions • 不同于旧版本的扩展名以和Binary-Based文件进行区分 • Macro-Free文件:在后缀增加“x”(.docx、.xlsx、.pptx) • Macro-Enabled文件:在后缀增加“m”(.docm、.xlsm、.pptm)
Benefits Summary • 开放的架构 • 强大的交互性 • 更稳定 • 更有效率 • 更安全
方案场景 • 数据交换 • 内容维护 • 内容共享与重用 • 文档编制(Document Assembly) • 文档安全 • 管理敏感信息 • 文档样式 • 文档属性 • …
场景 1 • Problem:如何使服务器上的Office文档能最大程度的被访问? • Solution:通过定制的XSLT,直接将XML格式的文档内容转换成标准的HTML展现给用户
场景 2 • Problem:有了标准的“公司简介”,如何使所有的项目标书能准确的使用它? • Solution: • 将标准格式的“公司简介”保存为单独的Part • 在文档中需要引用的地方直接引用此Part • 对于查看用户而言,“公司简介”无缝显示在文档中 • 如果“公司简介”被更改了,只需要遍历所有标书,替换这个Part即可
场景 3 • Problem:想在新的幻灯片里面使用一张不错的图片,隐约记得好像在哪个Word文档里面见过… • Solution: • 由于Office12文件中所有的图片都是作为单独的Parts存放,而且Office12文件就是标准的Zip压缩包,所以可以非常方便的使用第三方工具来查看所有Office12文件中所包含的图片(ACDSee?)
场景 4 • Problem:想在服务器端用代码取出数据库中的数据,然后根据模板动态生成标准的Office文件 • Old Solution: • 在服务器安装Office,然后调用Office COM接口生成文件,速度慢、不稳定 • Solution: • 由于Office12使用标准的XML-Based文档格式,所以服务器端无需安装Office Application,就能直接用代码输出标准的Office文件
场景 5 • Problem:如何才能快速的给现有文档套用各种不同的样式呢? • Solution: • Office12中,文档样式可作为单独的Part保存(styles.xml) • 直接给文档附加此Part即可将相应样式应用到文档上
Office Technology Expert Club • www.msotec.net • Office12 WebSites • www.microsoft.com/office/preview • Blogs • 博客堂(blog.joycode.com)