# fsys.openXml.docx 库模块帮助文档

[» DOCX 读取与媒体](https://www.aardio.com/zh-cn/docs/library/fsys/openXml/docx/) [» DOCX 结构化生成](https://www.aardio.com/zh-cn/docs/library/fsys/openXml/docx/builder/) [» Word 受控编辑](https://www.aardio.com/zh-cn/docs/library/fsys/openXml/docx/editor/)

## fsys.openXml.docx 成员列表 <a id="fsys.openXml.docx" href="#fsys.openXml.docx">&#x23;</a>

无 Office/WPS 依赖的 WordprocessingML 读取、媒体导出、受控编辑与结构化 DOCX 生成。  
读取支持 docx/docm/dotx/dotm 的 Transitional/Strict 核心命名空间，不执行宏。  
write 便捷转发 builder；受控编辑请按需导入 fsys.openXml.docx.editor；仅生成时可独立导入 builder，避免加载读取器。  
不做排版渲染、公式/域更新、XSD 或完整 MC 校验。

### fsys.openXml.docx.extractMedia(path,outputDir,options) <a id="fsys.openXml.docx.extractMedia" href="#fsys.openXml.docx.extractMedia">&#x23;</a>
平铺复制媒体原始字节，默认 overwrite=false；maxMedia 限制成功导出个数，跳过不计数。  
返回 outputDir,files,skipped，可有 truncated；失败返回 null,err,partial。  
逐文件校验/临时提交，重名预检，保护源文档；不是整批事务，不执行或转码资源。

### fsys.openXml.docx.getProperties(path,options) <a id="fsys.openXml.docx.getProperties" href="#fsys.openXml.docx.getProperties">&#x23;</a>
按包关系读取核心/扩展属性；缺少属性关系合法返回基础 path 字段。  
损坏、缺失目标或外部属性关系返回 null,err；不假装为空属性成功。

### fsys.openXml.docx.listEntries(path,pattern,options) <a id="fsys.openXml.docx.listEntries" href="#fsys.openXml.docx.listEntries">&#x23;</a>
验证 Word 主部件后返回 ZIP 元信息数组，含真实目录项。  
pattern 为可选 aardio 模式串；options 支持通用包限额。

### fsys.openXml.docx.listMedia(path,options) <a id="fsys.openXml.docx.listMedia" href="#fsys.openXml.docx.listMedia">&#x23;</a>
列出 word/media/ 及主部件同级 media/ 下的全部文件（含子目录/未引用项）。  
字段 partName,name,ext,size,compressedSize,contentType；不扫描任意位置的全部关系资源，不读媒体内容。

### fsys.openXml.docx.read() <a id="fsys.openXml.docx.read" href="#fsys.openXml.docx.read">&#x23;</a>
[返回对象:openXmlWordDocumentObject](#openXmlWordDocumentObject)

### fsys.openXml.docx.read(path,options) <a id="fsys.openXml.docx.read" href="#fsys.openXml.docx.read">&#x23;</a>
读取普通文本、段落、物理单元格表格和文档属性，返回普通表；自动关闭包。失败 null,err。  
includeText/includeParagraphs/includeTables/includeProperties 默认 true，includeMedia 默认 false。  
includeHeaders/includeFooters/includeFootnotes/includeEndnotes/includeComments 默认 false。  
keepEmptyParagraphs 默认 true，trim/trimText 默认 false；paragraphSeparator 默认 CRLF，cellParagraphSeparator 默认 LF。  
maxParagraphs/maxTables/maxRows/maxColumns/maxTextBytes/maxMedia 为非负整数；0 表示不取，省略不截取。内容截取会设置 truncated 和 warnings，不替代包层安全限额。

### fsys.openXml.docx.readParagraphs(path,options) <a id="fsys.openXml.docx.readParagraphs" href="#fsys.openXml.docx.readParagraphs">&#x23;</a>
仅返回段落数组；成功第三返回值为 warnings，失败 null,err。  
选项同 read，不读属性/媒体。不要将附加返回值直接传给只接受单值的函数。

### fsys.openXml.docx.readTables(path,options) <a id="fsys.openXml.docx.readTables" href="#fsys.openXml.docx.readTables">&#x23;</a>
仅返回表格数组，成功第三返回值为 warnings。  
不将物理合并单元格展开成矩形网格；不生成字段对象（技能包兼容层提供 rowsToTable）。

### fsys.openXml.docx.write(path,document,options) <a id="fsys.openXml.docx.write" href="#fsys.openXml.docx.write">&#x23;</a>
结构化生成 .docx，便捷转发 fsys.openXml.docx.builder.write。  
document={blocks=[...];numbering=[...]}；默认不覆盖，成功返回完整路径,null,report，失败 null,err。  
不是已有文档的保真重建；已有普通正文和未合并矩形表格可按需导入 `fsys.openXml.docx.editor` 受控编辑，复杂编辑继续使用 Office/WPS COM。

## openXmlWordDocumentObject 成员列表 <a id="openXmlWordDocumentObject" href="#openXmlWordDocumentObject">&#x23;</a>

### openXmlWordDocumentObject.info <a id="openXmlWordDocumentObject.info" href="#openXmlWordDocumentObject.info">&#x23;</a>
从包关系定位的核心/扩展属性；日期保留保存的字符串。页数等是保存的元数据，不重新计算。

### openXmlWordDocumentObject.mainPart <a id="openXmlWordDocumentObject.mainPart" href="#openXmlWordDocumentObject.mainPart">&#x23;</a>
由包关系定位的主部件名。

### openXmlWordDocumentObject.media <a id="openXmlWordDocumentObject.media" href="#openXmlWordDocumentObject.media">&#x23;</a>
includeMedia=true 时的目录媒体清单；字段同 listMedia。

### openXmlWordDocumentObject.paragraphCount <a id="openXmlWordDocumentObject.paragraphCount" href="#openXmlWordDocumentObject.paragraphCount">&#x23;</a>
本次保留的段落个数；不是分页或全文统计。

### openXmlWordDocumentObject.paragraphs <a id="openXmlWordDocumentObject.paragraphs" href="#openXmlWordDocumentObject.paragraphs">&#x23;</a>
数组项含 index,text,source,partName，可含 storyId,styleId,outlineLevel。  
styleId 是保存的样式 ID；outlineLevel 是保存的 0 基值，不解析样式继承。

### openXmlWordDocumentObject.path <a id="openXmlWordDocumentObject.path" href="#openXmlWordDocumentObject.path">&#x23;</a>
源文件完整路径。

### openXmlWordDocumentObject.sources <a id="openXmlWordDocumentObject.sources" href="#openXmlWordDocumentObject.sources">&#x23;</a>
正文及请求的附属部件数组：source,partName,relationshipId。  
页眉/页脚按正文节属性首次引用顺序去重追加，不展开到各页；脚注/尾注/批注随后按部件内顺序追加。

### openXmlWordDocumentObject.tableCount <a id="openXmlWordDocumentObject.tableCount" href="#openXmlWordDocumentObject.tableCount">&#x23;</a>
本次返回表格的个数。

### openXmlWordDocumentObject.tables <a id="openXmlWordDocumentObject.tables" href="#openXmlWordDocumentObject.tables">&#x23;</a>
数组项含 index,rows,rowCount,columnCount,source,partName,depth，可含 storyId。  
rows 为物理单元格二维文本数组，不展开合并格；嵌套表单独列出，外层单元格含其文本。

### openXmlWordDocumentObject.text <a id="openXmlWordDocumentObject.text" href="#openXmlWordDocumentObject.text">&#x23;</a>
按段落顺序合并的文本（包括表格内段落），不是页面排版还原。  
includeParagraphs=false 不影响文本读取；includeText=false 时不返回此字段。

### openXmlWordDocumentObject.truncated <a id="openXmlWordDocumentObject.truncated" href="#openXmlWordDocumentObject.truncated">&#x23;</a>
是否因内容选择限额丢弃了部分输出；包/XML 安全限额超限则失败而非截取。

### openXmlWordDocumentObject.warnings <a id="openXmlWordDocumentObject.warnings" href="#openXmlWordDocumentObject.warnings">&#x23;</a>
code,message,partName 数组：内容截取、基础修订/域处理及未支持内容。不是完整遗漏清单。
