aardio 文档
com.powerPoint 库模块帮助文档
启动与关闭原则
PowerPoint 始终保持单进程实例,这一点与 Excel/Word 不同。
自动化代码通常不应当调用 Quit 函数,这有可能误关其他调用方打开的文档。
PowerPoint 通常用于展示,用户通常希望效果是可见的(这很像在浏览器中打开网页,你可以关闭指定的网页,但通常不应当直接关闭浏览器)。
自动化程序应当仅适放不必要的对象引用,仅由调用方启动的后台 PowerPoint 在无其他引用时会自动退出。
PowerPoint 存在有问题的加载项可能会在退出时报错无法启动 owerPoint,这会导致后续调用 PowerPoint 接口失败。
在创建 com.powerPoint 对象时会默认检查此错误对话框并自动关闭。
» 使用指南 » PowerPoint 对象模型
com 成员列表 #
com.powerPoint #
提供 PowerPoint.Application 对象的透明 COM 代理,
按顺序兼容 PowerPoint.Application、WPP.Application、KWPP.Application,
完整保留原生 API 及调用语义,并提供便捷扩展。
常规操作可直接沿用 Excel.Application / VBA 对象模型知识,以 aardio 语法调用.
智能提示(即库参考文档)只列高频成员,不是 API 白名单。
com.powerPoint() #
返回对象:powerPointObject
com.powerPoint(允许启动应用或文件路径) #
默认先按三个 ProgID 查找运行对象,均不可用才尝试创建。false 仅连接。
PowerPoint 的 COM 创建可能复用已有进程,不能视为独占。
传入文件路径:存在则打开,否则新建并保存,默认显示文稿窗口。
构造失败返回 null、提示信息、底层错误。
不自动退出、不强制隐藏、不修改加载项。
powerPointObject 成员列表 #
powerPointObject.* #
继承 PowerPoint.Application 的全部 COM 方法与属性;未列出的 API 也可按 PowerPoint/VBA 文档直接使用。
原生子对象仍是 Presentation、Slide、Shape 等 COM 对象,直接沿用对象模型。
WPS 与 Office 版本差异以实际组件为准。
powerPointObject.ActivePresentation #
当前活动文稿。
无窗口文稿不一定成为活动文稿;后台处理请保留 Add/Open 返回值并显式操作它。
返回对象:powerPointPresentationObject
powerPointObject.ActiveWindow #
原生 DocumentWindow 对象。
powerPointObject.Add() #
返回对象:powerPointPresentationObject
powerPointObject.Add(/withWindow=true/) #
新建并返回文稿;false 为无窗口文稿。
powerPointObject.Alerts #
是否允许 PowerPoint 常规提示。
true 对应 DisplayAlerts=2,false 对应 1;不访问 ScreenUpdating。
不能保证抑制第三方加载项提示。
powerPointObject.Application #
原生 Application 对象。
powerPointObject.Caption #
原生窗口标题。
powerPointObject.CreateFile() #
返回对象:powerPointPresentationObject
powerPointObject.CreateFile(path,withWindow=true) #
存在则打开;否则新建并保存,返回文稿对象。
默认显示文稿窗口;false 为无窗口。不会自动创建父目录。
powerPointObject.DisplayAlerts #
原生 PpAlertLevel:1 不提示、2 显示提示。
powerPointObject.Name #
应用名称。
powerPointObject.Open() #
返回对象:powerPointPresentationObject
powerPointObject.Open(path,readOnly=false,untitled=false,withWindow=true) #
打开并返回文稿,自动转换完整路径。
参数顺序与原生 Presentations.Open 一致。
powerPointObject.Presentations #
原生演示文稿集合。
powerPointObject.Presentations.Add() #
返回对象:powerPointPresentationObject
powerPointObject.Presentations.Add(WithWindow) #
原生 Add 方法,默认有窗口,0 为无窗口。
powerPointObject.Presentations.Count #
打开的文稿数,包含无窗口文稿。
powerPointObject.Presentations.Item() #
返回对象:powerPointPresentationObject
powerPointObject.Presentations.Item(1) #
获取指定索引的文稿;索引从 1 开始。
powerPointObject.Presentations.Open #
原生参数为 FileName、ReadOnly、Untitled、WithWindow;文件名须用完整路径。
powerPointObject.Presentations.Open() #
返回对象:powerPointPresentationObject
powerPointObject.Quit() #
显式调用原生 Application.Quit,再释放包装器引用。
会退出整个应用,不只是当前文稿
注意 PowerPointer 始终保持单进程实例。
自动化程序原则上不应当调用 Quit 以避免误关用户打开的实例。
只有调用方确实允许退出整个应用时才调用;
不能用 Visible、ROT、创建成功或文稿数为零推断所有权。
默认清理请用 Release;本库绝不自动 Quit。
不替调用方保存文稿,不处理加载项/退出弹窗,不强制杀进程。可重复调用。
powerPointObject.Release() #
仅释放包装器及宏代理持有的引用,不退出应用、不关闭文稿、不强制失效外部持有的 COM 对象。
可以重复调用。释放最后一个引用后应用是否自行退出,由 COM 服务决定。
此后 Application/oPowerPoint 为空;其他仍被引用的原生对象不受本方法强制失效。
powerPointObject.Run(宏名称,其他参数...) #
原生 Application.Run,支持不定个参数。
powerPointObject.Save(可选文稿对象) #
保存指定文稿,省略则保存 ActivePresentation。
不自动保存其他文稿。无窗口文稿应显式指定参数。
powerPointObject.SaveAs(path,format,presentation) #
另存指定文稿,省略 presentation 则操作 ActivePresentation。
省略 format 则按后缀推断 PpSaveAsFileType;无后缀使用 ppSaveAsDefault。
未知后缀须显式传入格式常量;可使用 SaveAs(path,,presentation)。
行为与原生 SaveAs 一致,可能覆盖目标;图片格式可能输出为目录。
成功返回原生方法的返回值(通常为空)。
powerPointObject.Version #
应用版本。
powerPointObject.Visible #
原生可见性属性;可设为 true 显示应用。
PowerPoint 不允许设为 false;后台操作请使用 Add(false) 或 Open(path,false,false,false)。
powerPointObject.Wps() #
是否 WPS 演示;根据实际 ProgID 及应用名称判断,不检查文稿文件名。
powerPointObject.add() #
返回对象:powerPointPresentationObject
powerPointObject.eachPresentation() #
for i,presentation in powerPointObject.eachPresentation(){
\t/*遍历打开的文稿,包含无窗口文稿*/
}
powerPointObject.eachSlide(可选文稿对象) #
for i,slide in powerPointObject.eachSlide(/*省略则活动文稿*/){
\t
}
powerPointObject.jsa #
vba 的同一对象;仅适用于实际支持通过 Application.Run 调用 JSA 的 WPS 版本。
powerPointObject.jsa.* #
输入 WPS 支持的宏函数名。
powerPointObject.open() #
返回对象:powerPointPresentationObject
powerPointObject.progId #
实际成功连接或创建对象使用的 ProgID。
powerPointObject.vba #
通过成员函数调用 Application.Run。
宏是否可用取决于应用版本及宏安全设置;库不会降低宏安全级别。
powerPointObject.vba.* #
输入要运行的 VBA 宏函数名。
powerPointPresentationObject 成员列表 #
powerPointPresentationObject.* #
可输入原生 Presentation 对象的所有方法与属性。
powerPointPresentationObject.BuiltinDocumentProperties #
内置文档属性集合。
powerPointPresentationObject.Close() #
关闭此文稿,不退出整个应用。
powerPointPresentationObject.CreateVideo(filename,useTimingsAndNarrations,defaultSlideDuration,framesPerSecond,quality) #
生成视频。
filename 必须指定完整路径。
其他参数可选。
可使用 CreateVideoStatus 属性获取视频生态状态。
powerPointPresentationObject.CreateVideoStatus #
调用 CreateVideo 方法后可用此属性循环获取生成状态。
此属性的值为 _ppMediaTask 前缀的数值常量。
1/*_ppMediaTaskStatusInProgress*/ 表示转换正在进行中。
也可通过对象的 ppMediaTaskStatusInProgress 属性获取对象的常量值。
powerPointPresentationObject.Export(完整目录路径,过滤器名称,宽度,高度) #
导出所有页为图片,如过滤器 PNG;尺寸为像素。
powerPointPresentationObject.ExportAsFixedFormat(完整路径,格式常量) #
原生固定格式导出;PDF 格式常量为 2。
powerPointPresentationObject.FullName #
完整路径。
powerPointPresentationObject.Name #
文稿名称。
powerPointPresentationObject.NewWindow() #
为文稿新建窗口。
powerPointPresentationObject.ReadOnly #
是否只读。
powerPointPresentationObject.Save() #
保存此文稿。
powerPointPresentationObject.SaveAs(完整路径,格式常量) #
原生 SaveAs,路径请使用 io.fullpath 转为完整路径。
powerPointPresentationObject.Saved #
原生保存状态。设为 true 表示不再提示保存,并不写入磁盘。
powerPointPresentationObject.ppMediaTaskStatusInProgress #
值为 n1/*_ppMediaTaskStatusInProgress*/
powerPointPresentationObject.PageSetup 成员列表 #
powerPointPresentationObject.PageSetup.SlideHeight #
页面高度,单位 point。
powerPointPresentationObject.PageSetup.SlideWidth #
页面宽度,单位 point。
powerPointPresentationObject.SlideShowSettings 成员列表 #
powerPointPresentationObject.SlideShowSettings.Run() #
启动放映,返回 SlideShowWindow。
powerPointPresentationObject.Slides 成员列表 #
powerPointPresentationObject.Slides.Add() #
返回对象:powerPointSlideObject
powerPointPresentationObject.Slides.Add(位置,版式常量) #
添加幻灯片。空白版式为 12(ppLayoutBlank)。
powerPointPresentationObject.Slides.Count #
幻灯片数。
powerPointPresentationObject.Slides.Item() #
返回对象:powerPointSlideObject
powerPointPresentationObject.Slides.Item(1) #
指定索引的幻灯片。
powerPointPresentationObject.Windows 成员列表 #
powerPointPresentationObject.Windows.Count #
文稿窗口数;无窗口文稿为 0。
powerPointShapeObject 成员列表 #
powerPointShapeObject.* #
可输入原生 Shape 对象的所有方法与属性。
powerPointShapeObject.Delete() #
删除形状。
powerPointShapeObject.Height #
高度,单位 point。
powerPointShapeObject.Left #
左坐标,单位 point。
powerPointShapeObject.Name #
形状名称。
powerPointShapeObject.Top #
上坐标,单位 point。
powerPointShapeObject.Width #
宽度,单位 point。
powerPointShapeObject.Fill.ForeColor 成员列表 #
powerPointShapeObject.Fill.ForeColor.RGB #
填充颜色,使用 0xBBGGRR 格式。
powerPointShapeObject.Line.ForeColor 成员列表 #
powerPointShapeObject.Line.ForeColor.RGB #
边线颜色,使用 0xBBGGRR 格式。
powerPointShapeObject.TextFrame.TextRange 成员列表
powerPointShapeObject.TextFrame.TextRange.Text
文本内容。
powerPointShapeObject.TextFrame.TextRange.Font 成员列表
powerPointShapeObject.TextFrame.TextRange.Font.Bold
是否粗体,-1 是、0 否。
powerPointShapeObject.TextFrame.TextRange.Font.Name
字体名称。
powerPointShapeObject.TextFrame.TextRange.Font.Size
字号,单位 point。
powerPointShapeObject.TextFrame.TextRange.Font.Color 成员列表
powerPointShapeObject.TextFrame.TextRange.Font.Color.RGB
字体颜色,使用 0xBBGGRR 格式。
powerPointSlideObject 成员列表 #
powerPointSlideObject.* #
可输入原生 Slide 对象的所有方法与属性。
powerPointSlideObject.Delete() #
删除此页。
powerPointSlideObject.Duplicate() #
复制此页,返回 SlideRange。
powerPointSlideObject.Export(完整路径,过滤器名称,宽度,高度) #
导出此页为图片,如 PNG;尺寸为像素。
powerPointSlideObject.MoveTo(新位置) #
移动到指定页序。
powerPointSlideObject.Name #
幻灯片名称。
powerPointSlideObject.NotesPage #
原生备注页 SlideRange。
powerPointSlideObject.SlideID #
幻灯片 ID。
powerPointSlideObject.SlideIndex #
当前页序,起始为 1。
powerPointSlideObject.SlideShowTransition #
原生切换效果对象。
powerPointSlideObject.TimeLine #
原生动画时间线。
powerPointSlideObject.Shapes 成员列表 #
powerPointSlideObject.Shapes.AddPicture() #
返回对象:powerPointShapeObject
powerPointSlideObject.Shapes.AddPicture(完整图片路径,链接到文件,保存到文稿,left,top,width,height) #
添加图片。
powerPointSlideObject.Shapes.AddShape() #
返回对象:powerPointShapeObject
powerPointSlideObject.Shapes.AddShape(形状常量,left,top,width,height) #
添加自选图形。
powerPointSlideObject.Shapes.AddTextbox() #
返回对象:powerPointShapeObject
powerPointSlideObject.Shapes.AddTextbox(方向,left,top,width,height) #
添加文本框,水平方向为 1;坐标为 point。
powerPointSlideObject.Shapes.Count #
形状数量。
powerPointSlideObject.Shapes.Item() #
返回对象:powerPointShapeObject
自动完成常量
_ppMediaTaskStatusDone=3
_ppMediaTaskStatusFailed=4
_ppMediaTaskStatusInProgress=1
_ppMediaTaskStatusNone=0
_ppMediaTaskStatusQueued=2
Markdown 格式