openxml sdk 导出word样式问题(页眉、页脚、字体、背景颜色等设置)
一、首先,这个文件拿到其它电脑中使用Word可以打开吗?如果其它电脑也不能打开该文件的话,这可能是本身这个文件损坏了。
二、然后,如果能用其它电脑打开的话,重新把里面的内容复制至新的文件中,重新保存,回到您使用的电脑中能否打开。
三、或者,当您试图使用 Word 2007 中的库时收到错误消息:“无法打开 Office Open XML 文件 Building Blocks.dotx”当 Building Blocks.dotx 模板毁坏或损坏时会产生这个问题。
Building Blocks.dotx 模板有两份副本。
一份副本保存在您的用户数据文件夹中。
另一份副本保存在 Office 12 文件夹的“文档部件”文件夹中。
通常保存在用户数据文件夹中的副本已损坏。
但是,可能两份副本都已损坏。
方法1:将 Building Blocks.dotx 文件放入临时文件夹中 1、退出 Word 2007。
2、单击“开始”,单击“运行”,键入 "%appdata%\Microsoft\Document Building Blocks\1033",然后单击“确定”。
3、将 Building Blocks.dotx 文件移至临时文件夹。
4、启动 Word 2007。
方法2:修复 2007 Office 系统或 Word 2007 1、退出所有的 2007 Office 程序。
2、单击“开始”、单击“运行”,键入 "%appdata%\Microsoft\Document Building Blocks\1033",然后单击“确定”。
3、将 Building Blocks.dotx 文件移至临时文件夹。
4、单击“开始”,单击“运行”,键入 "%programfiles%\Microsoft Office\Office12\Document Parts\1033",然后单击“确定”。
5、将 Building Blocks.dotx 文件移至临时文件夹。
6、关闭这两个文件夹。
7、单击“开始”,单击“运行”,键入 appwiz.cpl,然后单击“确定”。
8、在“当前安装的程序”列表中,单击安装在计算机上的 2007 Office 系统版本。
或者,如果您在计算机上安装了独立的 Word 2007,则请单击 Word 2007。
9、单击“更改”,单击“修复”,然后单击“继续”。
如何使用Word Automation Services开发应用
使用Word Automation Services更改文档格式当我们使用Open XML SDK 2.0 for Microsoft Office时,有些任务是比较困难的。
比如:重新编排页码,将文档转换为诸如PDF等的其它格式,或者更新文档目录表、字段,以及文档中的其它动态内容。
而SharePoint 2010提供的Word Automation Services新功能就是用来解决这些问题的。
Word Automation Services是一个共享服务,它无需人员参与,可以在服务器端执行文档格式转换以及其它重要功能。
其最初设计理念是在服务器端以可靠和可预测的方式处理多个文档。
我们可以使用Word Automation Services将Open XML WordprocessingML格式转换成其它格式。
比如:可以将多个文档转换成PDF格式然后发送到打印机的打印池,或者通过邮件将PDF文档发送给客户,也可以将其它格式的文档(如:HTML,Word 97-2003二进制格式)转换成Open XML work-processing文档。
除了进行文档格式转换,Word Automation Services还提供了其它一些重要功能。
比如:更新文档中的字段,将altChunk内容转换成使用正常格式的段落。
如果我们使用Open XML SDK执行这些工作是非常困难的,但是Word Automation Services做这些工作就非常容易。
以前,我们使用Word Automation Services为客户端执行这些工作,但这是有问题的。
Word客户端更适合进行交互式文档编写,而不是用来在服务器端进行多文档处理的。
如果在Word中执行这些任务,Word往往会显示错误提示框,而且如果服务器自动操作Word客户端,又没有用户响应对话框,这样线程就无法停止。
这是一个与Word自动化相关的问题,有一篇KB专门介绍,Considerations for Server-side Automation of Office。
一个使用Word Automation Services的场景下面这个场景展示了如何使用Word Automation Services在服务器端自动处理文档。
某位专家遵循一定的规范创建了一些Word模板,她或许会使用内容控制为这些模板提供一些使用指导,这为在文档生成过程中确定数据应该出现在文档模板的哪些位置提供了良好的用户体验和可靠的编程方法。
通常,这些文档模板保存在SharePoint文档库里。
运行在服务器端的程序把文档模板和数据结合在一起,形成Open XML WordprocessingML (DOCX)文档。
最好的方法是使用Open XML SDK 2.0 for Microsoft Office编写这个程序,因为这个SDK专门用来在服务器端生成文档。
这些文档存放在SharePoint文档库里。
文档自动生成后,可能需要被打印,然后转换为WordprocessingML、PDF、XPS或MHTML格式再通过邮件发送给一系列用户。
作为转换工作的一部分,我们可以使用Word Automation Services更新文档中的字段,比如:文档目录表。
一起使用Open XML SDK 2.0 for Microsoft Office以及Word Automation Services可以创建丰富的、端到端解决方案,而无须自动化Word客户端应用。
Word Automation Services的一个突出优点是可以进行扩展升级,而Word客户端应用无法做到这点,我们可以配置Word Automation Services使用多个处理器,如果需要,还可以配置为负载均衡。
另外一个突出优点是,Word Automation Services在文档布局(包括分页排版)方面保持了与Word客户端近乎完全一致的体验。
无论文档是在服务器端处理的,还是在客户端处理的,其布局都是完全一致的。
支持的源文档格式Open XML File Format documents (.docx, .docm, .dotx, .dotm)Word 97-2003 documents (.doc, .dot)Rich Text Format files (.rtf)Single File Web Pages (.mht, .mhtml)Word 2003 XML Documents (.xml)Word XML Document (.xml)支持的目标文档格式Portable Document Format (.pdf)Open XML Paper Specification (.xps)Word Automation Services的其它功能除了加载文档并将文档保存为其它格式外, Word Automation Services还具有其它一些功能。
我们可以使用Word Automation Services更新文档目录、table of authorities以及索引字段,这在生成文档时非常重要。
如果文档在生成后,其目录表未能正确更新,那么确定文档的分页将是非常困难的工作,而Word Automation Services可以非常容易地处理这个工作。
Open XML word-processing文档包含各式各样的字段类型,使用这些字段类型我们可以为文档动态添加内容。
我们可以使用Word Automation Services重新计算所有的字段。
比如:为文档添加一个插入当前日期的字段类型。
这样当所有字段被更新时,其关联的内容也随之被更新,这样文档就可以在字段所在位置显示当前日期。
使用内容控制的一个最有效途径是将内容绑定到一个自定义XML元素。
关于如何进行绑定,请参考Building Document Generation Systems from Templates with Word 2010 and Word 2007,以及其它一些资源。
通过替换自定义XML元素可以将绑定内容控件的内容进行更新,而无须更改文档主体。
文档主体包含了所有绑定内容控件的缓存值,如果只是替换自定义XML元素,文档主体中的缓存值是不会被更新的。
如果用户只是用Word客户端应用查看就不会有这个问题,但是,如果要更深地处理WordprocessingML markup,我...
如何操作 Office Open XML 格式文档
很明显是单独的个体问题。
如果数据量不是很大,建议还是重新输入。
如果是很多数据的话,修复工作也许会很花费精力。
。
。
这个还要看运气。
。
你发我油箱【一丝霸气三思柳闪闪舞】,我看看能不能尽量恢复。
。
但是如果用记事本打开后保存过,那就不必发来了,因为结构肯定破坏了。
转载请注明出处51数据库 » open xml sdk word