aardio 文档

fsys.openXml.pptx 库模块帮助文档

» PPTX 文本读取

fsys.openXml.pptx 成员列表 #

不依赖 Office 的 PresentationML 读取、资源导出、生成与有限编辑。
read 不渲染版式;write 生成文本/形状/图片/表格/备注/常用动画,edit 受控修改并另存。

fsys.openXml.pptx.edit() #

返回对象:openXmlPptxEditorObject

fsys.openXml.pptx.edit(path,options) #

返回受控编辑会话,便捷转发 pptx.editor.open;不修改源件。

fsys.openXml.pptx.extractMedia() #

返回对象:openXmlMediaExportObject

fsys.openXml.pptx.extractMedia(path,outputDir,options) #

将 listMedia 所列文件平铺导出;返回 outputDir,files,skipped。
options.overwrite 默认 false,已有普通文件列入 skipped;显式 true 才覆盖。
同名平铺冲突在落盘前报错,设备名/非法文件名拒绝。每个部件先验 CRC/长度/限额后提交临时文件。
失败返回 null,err,partial;partial 为已经提交/跳过的结果(若尚未开始则为空值)。不是整批事务;不会回滚之前已成功导出的文件。
只复制原始字节,不执行/转码;读取限额同 fsys.openXml.open。

fsys.openXml.pptx.listEntries(path,pattern,options) #

识别 PresentationML 主部件后列出 ZIP 元信息;可选 pattern 为 aardio 模式串。
数组项为 name,isDir,size,compressedSize,contentType,包含实际存在的目录项;不合成隐式目录。
不读取幻灯片正文或媒体内容,不代表整包通过内容校验;限额同 fsys.openXml.open。

fsys.openXml.pptx.listMedia(path,options) #

列出 ppt/media/ 及主部件同级 media/ 目录下的文件(含子目录,不含目录项)。
数组项为 partName,name,ext,size,compressedSize,contentType;name 为末级文件名,ext 不含点。
包含目录内未引用文件,不做逐页媒体映射,不保证发现放在任意其他路径的资源;不访问外部关系。

fsys.openXml.pptx.read() #

返回对象:openXmlPresentationObject

fsys.openXml.pptx.read(path,options) #

按主文档 sldIdLst 顺序读取页面,以关系配对备注。
options.includeNotes 默认 true;其他读取限额同 fsys.openXml.open。
依据实际包结构识别类型;支持 Transitional 与 Strict 核心命名空间。
失败返回 null,err,自动关闭包;未支持内容记录 warnings。

fsys.openXml.pptx.write(path,slides,options) #

便捷转发 builder.write;默认不覆盖,成功完整路径,失败 null,err。
纯生成任务建议直接 import fsys.openXml.pptx.builder,避免引入读取器;详情见生成指南。

openXmlMediaExportObject 成员列表 #

openXmlMediaExportObject.files #

本次成功导出的数组;含 name,partName,source,path,ext,size,compressedSize,contentType。
source 与 partName 为包内 URI;path 为完整输出文件路径。

openXmlMediaExportObject.outputDir #

完整输出目录。

openXmlMediaExportObject.skipped #

overwrite=false 时跳过的已有普通文件;字段同 files。
跳过文件不读取内容、不做 CRC 校验。

openXmlPresentationObject 成员列表 #

openXmlPresentationObject.mainPart #

主文档部件名。

openXmlPresentationObject.noteCount #

具有备注部件的页面数量;不按 notesSlide 文件编号计数。

openXmlPresentationObject.notes #

启用备注时与 slides 一一对应,无备注用空字符串;禁用时为空数组。

openXmlPresentationObject.notesText #

对齐后的备注文本以两个 CRLF 分隔。

openXmlPresentationObject.pages #

页面明细数组:index,id,relationshipId,partName,hidden,text,paragraphs,tables,notesPart,notesText。
paragraphs 为源顺序段落字符串数组(包括表格段落);tables 元素含 rows 二维文本数组、rowCount。
表格文本以 TAB 分列、CRLF 分行,不重建合并单元格。

openXmlPresentationObject.path #

源文件完整路径。

openXmlPresentationObject.slideCount #

sldIdLst 中的实际页面数,包含隐藏和空白页。

openXmlPresentationObject.slides #

按页面顺序排列的文本数组,保留空白页。

openXmlPresentationObject.text #

页面文本以两个 CRLF 分隔;页面内按 XML 形状树顺序,并非视觉阅读顺序。

openXmlPresentationObject.warnings #

未支持内容与兼容回退信息数组:code,message,partName。
不读取母版/布局继承文本,不做图片 OCR、图表/SmartArt 语义还原。

Markdown 格式