文件格式
什么是 DOCX?深入了解 Word 文件格式
DOCX 自 Word 2007 起成为 Word 的默认格式,本质上是一个装满 XML 文件的 ZIP 包。本文介绍它的结构、背后的标准,以及转换时哪些内容能够保留。
作者: Hemen Dönüştür Editör Ekibi发布日期: 阅读约 7 分钟

在 Word 中按下“保存”,得到的文件几乎一定以 .docx 结尾。近二十年来,它一直是 Microsoft Word 的默认格式,也是企业、教育和政府部门最常用的可编辑文档格式之一。然而很少有人意识到,DOCX 文件其实是一个装满 XML 文件的 ZIP 压缩包。本文将介绍 DOCX 的由来、它所依据的标准、文件内部的构成,以及把 DOCX 转换为其他格式时需要注意的地方。
什么是 DOCX?
DOCX 是以 WordprocessingML 编写的文档的扩展名,WordprocessingML 是 Office Open XML(OOXML)标准中负责文字处理的部分。旧的 .doc 格式是一种封闭的二进制格式,几乎是把 Word 的内存结构直接写入磁盘。DOCX 则把文字、格式、图片和设置分别存储为独立的 XML 部件,再打包成一个压缩包。因此,DOCX 文件通常更小、更不容易损坏,而且 Word 以外的软件也能读写。
简要历史
Microsoft 是分阶段转向基于 XML 的 Office 格式的。Excel 的第一个 XML 格式出现在 2000 年,Word 的出现在 2002 年,两者都随 Office 2003 一起发布。2005 年 11 月,Microsoft 宣布将以“Office Open XML”的名称通过 Ecma International 对这些格式进行标准化。此后进展很快:
- 2006 年 12 月:Ecma 批准第一版,即 ECMA-376。
- 2007 年:Office 2007 把 DOCX 设为 Word 的默认保存格式。针对旧版 Word,Microsoft 发布了可以打开和保存 DOCX 的兼容包(Compatibility Pack)。
- 2008 年 4 月:首轮投票未获通过的 ISO/IEC 快速通道程序最终获得批准。
- 2008 年 11 月:标准以 ISO/IEC 29500:2008 的形式发布,Ecma 于 2008 年 12 月发布了技术上等同的第二版。
- 2011 年、2012 年和 2021 年:ECMA-376 的第三、第四和第五版相继推出。当前第五版的各部分在 2015 年至 2021 年间陆续更新。
标准化引入了两个一致性级别:Transitional(过渡型)和 Strict(严格型)。Transitional 包含从旧二进制文档沿袭下来的兼容性功能,也是 Word 默认写入的级别。Office 2010 只能读取 Strict 文档;Office 2013 及更高版本完全支持 Strict,但出于向后兼容的考虑,Microsoft 并没有把它设为默认值。
DOCX 文件里面有什么?
把一个 DOCX 文件改名为 .zip 并打开,通常会看到这样的结构:
[Content_Types].xml 包内各部件的内容类型
_rels/.rels 包的顶层关系
docProps/core.xml 标题、作者、日期等元数据
word/document.xml 文档正文
word/styles.xml 样式定义
word/numbering.xml 列表编号
word/header1.xml 页眉(如有)
word/footer1.xml 页脚(如有)
word/media/image1.png 嵌入的图片
word/_rels/document.xml.rels 图片与超链接的关系
打包规则定义在 ECMA-376 的第 2 部分,即开放打包约定(Open Packaging Conventions,OPC)中。每个部件都有内容类型,部件之间通过关系文件相互关联。例如,正文中的图片不是通过文件名引用的,而是通过关系文件中的 ID(如 rId5)引用的。
实际内容位于 word/document.xml 中。根据 Microsoft 的 Open XML 文档,最简单的有效文档需要一个 document 根元素、一个 body、至少一个包含文本串(r)的段落(p),以及文本串中的文字(t):
<w:document xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main">
<w:body>
<w:p>
<w:r>
<w:rPr><w:b/></w:rPr>
<w:t>Hello world</w:t>
</w:r>
</w:p>
</w:body>
</w:document>
文本串(run)是一段格式相同的文字。句子中间只要有一个加粗的词,段落就会被拆成三个文本串。这也是为什么 Word 文档经常无缘无故地把同一段文字分散到许多文本串中,每个转换器都必须应对这种情况。
DOCX、DOCM 与 DOTX
同一家族中还有几种扩展名。.docm 是启用宏的文档;普通的 .docx 不能携带宏,因此作为邮件附件更安全。.dotx 是模板,.dotm 是启用宏的模板。从结构上看,它们都是同样的 OPC 包,区别在于包含的部件和声明的内容类型。
DOCX 用在哪里?
- 商务往来:方案、报告、备忘录和合同草稿。
- 教育:作业、学位论文、论文模板和课程资料。
- 法律与公共部门:申请书和公函草稿。
- 出版:作者与编辑之间借助修订和批注进行的多轮审校。
- 自动生成文档:由于该格式是开放标准,软件可以把发票、证书和报告生成为 DOCX。
优点与缺点
| 优点 | 缺点 |
|---|---|
| 开放且有文档的标准(ECMA-376、ISO/IEC 29500) | 标准极其庞大,很少有程序能完全支持 |
| 借助 ZIP 压缩,文件较小 | 在不同程序之间版式可能发生偏移 |
| 修订、批注、样式、目录 | 不嵌入字体,外观取决于设备 |
| 默认不含宏,更安全 | Transitional 与 Strict 的区分可能导致兼容性问题 |
| 几乎所有办公套件都支持 | 不如 PDF 适合“锁定”最终版本 |
哪些程序可以打开 DOCX?
Word 2007 及更高版本,以及网页版和移动版 Word,都能原生打开 DOCX。LibreOffice Writer、Google 文档、Apple Pages 和 WPS Office 也可以读写它。Word 2003 及更早版本需要安装 Microsoft 的兼容包。这些程序都能很好地处理基本文字、样式和表格,但高级排版、文本框、SmartArt 和部分域代码在不同程序中的显示可能不同。
常见问题及解决方法
“文件已损坏,无法打开”
由于 DOCX 是 ZIP 包,下载不完整的文件或保存出错的邮件附件都无法打开。先尝试重新下载。在 Word 中,“打开”对话框里的“打开并修复”选项通常可以恢复文字。把副本改名为 .zip 并尝试打开,也能判断它到底是不是一个有效的包。
在另一台电脑上版式发生偏移
DOCX 默认不嵌入字体。如果接收方没有该字体,就会使用替代字体,行会重新折行,分页位置也会移动。如果版式必须精确一致,请分享 PDF,或者在 Word 选项中启用字体嵌入。
“兼容模式”提示
在新版 Word 中打开旧的 .doc 文件时,标题栏会显示“兼容模式”。将文件重新另存为 DOCX,即可关闭该模式并使用更新的功能。
修订记录仍然可见
未接受的修订和批注会保留在分享出去的文件中。发送前请接受或拒绝所有修订,并删除批注。
DOCX 文件转换技巧
在我们的转换器上,Word 文档会上传到我们的服务器,并在 30 分钟内删除。DOCX、DOC、RTF 和 PDF 之间的转换直接通过 LibreOffice 完成,没有 HTML 中间步骤。因此 Word 转 PDF 能保留页面版式、页眉页脚、表格边框、列表编号和图片。服务器上未安装的自定义字体可能会被替换为相似的字体。
- 面向旧系统:Word 转 DOC 适用于只接受 Word 97-2003 格式的软件。DOC 中没有对应项的新功能,例如部分图形和排版元素,可能会被简化。
- 面向网页和文档写作:Word 转 Markdown 会保留标题、粗体和斜体文字、列表、表格和链接;字体、颜色和页面版式会被去掉,因为 Markdown 中没有对应的表达方式。
- 反方向转换:PDF 转 Word 始终是一种重建,所以请尽可能保留原始的 DOCX。
常见问题
DOCX 和 DOC 有什么区别?
DOC 是 Word 97-2003 使用的二进制格式。DOCX 是随 Word 2007 推出的、由 XML 部件组成的基于 ZIP 的开放标准。DOCX 通常更小、更稳健,而且因为不能携带宏,也更安全。
DOCX 是开放标准吗?
是的。它由 Ecma 标准化为 ECMA-376,并由 ISO/IEC 标准化为 ISO/IEC 29500。ECMA-376 的文本可以从 Ecma 网站免费下载。
怎样查看 DOCX 文件的内部?
复制一份,把扩展名改为 .zip 后打开。正文位于 word/document.xml,图片位于 word/media 文件夹。
DOCX 文件会含有病毒吗?
普通的 DOCX 不能包含宏,启用宏的文档使用 .docm 扩展名。与任何文件类型一样,请谨慎对待来源不明的文档,并保持办公软件为最新版本。
没有 Word 能打开 DOCX 吗?
可以。LibreOffice Writer、Google 文档、Apple Pages 和 WPS Office 都能打开 DOCX。如果只需要阅读,把它转换为 PDF 也是一个实用的选择。


