aardio 文档

fsys.openXml 库模块帮助文档

» fsys.openXml 使用指南

fsys.openXml 成员列表 #

Office Open XML 文件处理基础库;
包读取、部件导出与 PPTX/DOCX/XLSX 内容提取;0.6.0 新增 writer/editor 与 PPTX 生成/有限编辑,0.7.0 增加渐变/透明度、图片适配与精细排版,0.8.0 增加生成前版式预检 builder.check、分文种字体与线条箭头;0.9.0 增加逐段落动画、Morph 淡出回退与标题占位符/标准版式;0.10.0 增加页码字段、点击超链接、原生编号、外阴影与圆角半径;0.11.0 增加同文稿页复制/删除、表格填值与矩形合并;0.12.0 增加二维柱/条/折线/饼图和内嵌XLSX;0.13.0 增加 DOCX 结构化生成;0.14.0 增加 DOCX 受控文字替换与表格填值;0.16.0 增加普通 XLSX 固定坐标受控 editor。
使用系统 MSXML,无 Office/WPS/.NET 运行依赖;open/read 不改源包,写入通过明确的 write/save 入口。
纯生成可独立导入 fsys.openXml.pptx.builder,不加载读取器。

fsys.openXml.open() #

返回对象:openXmlPackageObject

fsys.openXml.open(path,options) #

只读打开 ZIP/OpenXML 包,验证中央目录与内容类型。
失败返回 null,err;不支持传统 Office 二进制、分卷或加密文件。
可选限额:maxEntries=10000,maxPartBytes=16777216,maxReadBytes=134217728,maxXmlDepth=128,maxXmlNodes=200000。

fsys.openXml.resolveTarget(sourcePart,target) #

相对源部件解析包内关系目标,返回不以 / 开头的部件名。
包根源用空字符串;禁止越界、反斜杠、外部方案、查询与片段;不访问资源。

openXmlPackageObject 成员列表 #

openXmlPackageObject.close() #

关闭 ZIP 句柄,可以重复调用。关闭后读取返回 null,err。

openXmlPackageObject.extractPart(name,filePath,overwrite=false) #

将原始部件字节导出到明确指定的文件路径,返回完整输出路径;失败返回 null,err。
默认不覆盖,禁止写回源文档;先校验长度/CRC/读取限额,再写同目录临时文件并提交。
单次失败不留下半成品目标,也不预先清空已有目标;不是包编辑或文档生成。

openXmlPackageObject.getContentType(name) #

返回内容类型;未声明返回 null。

openXmlPackageObject.getMainPart() #

根据包关系定位主文档部件;不依赖固定目录或文件名。

openXmlPackageObject.getRelationships(sourcePart="字符串参数") #

返回源部件关系数组;包关系使用空字符串。
字段 id,type,target,external,partName;外部关系没有 partName,也不会跟随。
缺少 .rels 返回空数组;无效或缺失内部目标返回 null,err。

openXmlPackageObject.hasPart(name) #

部件存在返回 true,否则 false,err;名称可有一个前导 /。

openXmlPackageObject.listEntries() #

返回全部 ZIP 条目的元信息数组:name,isDir,size,compressedSize,contentType。
保留实际存在的目录项(name 以 / 结尾),不合成隐式目录;不读取各条目的内容。

openXmlPackageObject.listParts() #

返回包内文件数组:name,size,compressedSize,contentType。
包含 [Content_Types].xml;不含 ZIP 目录项。

openXmlPackageObject.path #

源文件完整路径,只读。

openXmlPackageObject.readPart(name) #

读取单个部件为二进制字符串;空文件返回空字符串。
检查实际长度、CRC 与累计读取限额;失败返回 null,err。

openXmlPackageObject.readXml() #

返回对象:msXmlNodeObject

openXmlPackageObject.readXml(name) #

读取 XML 为 MSXML DOM 根元素;失败返回 null,err。
使用 fsys.openXml.xml 查询辅助;DOM 节点限当前线程使用,关闭包后仍可读取。

Markdown 格式