本文介绍演示幻灯片高级接口,包含幻灯片对象、全屏、动画、播放、幻灯片播放状态、打开关闭播放缩略图的方法以及插入新的幻灯片。
幻灯片对象
语法
表达式.ActivePresentation.Slides
表达式:文档类型应用对象
示例
async function example() { await instance.ready(); const app = instance.Application; //演示文稿对象 const presentation = await app.ActivePresentation; //幻灯片对象 const view = await presentation.Slides; }
全屏
进入全屏
切换到PPT全屏播放状态。
语法
表达式.ActivePresentation.SlideShowSettings.Run()
表达式:文档类型应用对象
示例
async function example() { await instance.ready(); const app = instance.Application; //Slide设置对象 const SlideShowSettings = await app.ActivePresentation.SlideShowSettings; //进入幻灯片播放模式 await SlideShowSettings.Run(); }
监听进入全屏
监听进入幻灯片全屏播放。
语法
表达式.Sub.SlideShowBegin = Function
表达式:文档类型应用对象
示例
async function example() { await instance.ready(); const app = instance.Application; //监听进入幻灯片全屏播放 app.Sub.SlideShowBegin = async () => { console.log('进入'); }; setTimeout( async () => { //切换到PPT全屏播放状态 await app.ActivePresentation.SlideShowSettings.Run(); }, 2000); }
退出全屏
退出PPT全屏播放状态。
语法
表达式.ActivePresentation.SlideShowWindow.View.Exit()
表达式:文档类型应用对象
示例
async function example() { await instance.ready(); const app = instance.Application; //切换到幻灯片全屏播放状态 await app.ActivePresentation.SlideShowSettings.Run(); //退出PPT全屏播放状态 setTimeout( async () => { await app.ActivePresentation.SlideShowWindow.View.Exit(); }, 5000); }
监听退出全屏
监听退出幻灯片全屏播放。
语法
表达式.Sub.SlideShowEnd = Function
表达式:文档类型应用对象
示例
async function example() { await instance.ready(); const app = instance.Application; //切换到PPT全屏播放状态 await app.ActivePresentation.SlideShowSettings.Run(); //监听退出幻灯片全屏播放 app.Sub.SlideShowEnd = async () => { console.log('退出',); }; //3000 ms后退出全屏播放 setTimeout( async () => { await app.ActivePresentation.SlideShowWindow.View.Exit(); }, 3000); }
动画
动画总数量
获取当前页幻灯片动画的个数。
语法
表达式.ActivePresentation.SlideShowWindow.View.GetClickCount()
表达式:文档类型应用对象
返回值
返回
Number
类型的值表示当前幻灯片对应的动画数。示例
async function example() { await instance.ready(); const app = instance.Application; //切换到PPT全屏播放状态 await app.ActivePresentation.SlideShowSettings.Run(); //获取当前页幻灯片动画的个数 const clickCount = await app.ActivePresentation.SlideShowWindow.View.GetClickCount(); console.log(clickCount); }
当前页数量
获取鼠标单击的正在幻灯片上播放或刚刚播放完成的动画的索引号。
语法
表达式.ActivePresentation.SlideShowWindow.View.GetClickIndex()
表达式:文档类型应用对象
返回值
返回
Number
类型的值,表示当前鼠标单击动画的索引号。示例
async function example() { await instance.ready(); const app = instance.Application; //切换到PPT全屏播放状态 await app.ActivePresentation.SlideShowSettings.Run(); //获取当前鼠标单击动画的索引号 const clickCount = await app.ActivePresentation.SlideShowWindow.View.GetClickIndex(); console.log(clickCount); }
下一步动画
切换到下一步动画。
语法
表达式.ActivePresentation.SlideShowWindow.View.GotoNextClick()
表达式:文档类型应用对象
示例
async function example() { await instance.ready(); const app = instance.Application; //切换到PPT全屏播放状态 await app.ActivePresentation.SlideShowSettings.Run(); //切换到下一步动画 setTimeout( async () => { await app.ActivePresentation.SlideShowWindow.View.GotoNextClick(); }, 2000); }
监听下一步动画
监听下一步动画操作。
语法
表达式.Sub.SlideShowOnNext = Function
表达式:文档类型应用对象
示例
async function example() { await instance.ready(); const app = instance.Application; //切换到PPT全屏播放状态 await app.ActivePresentation.SlideShowSettings.Run(); //监听下一步动画操作 app.Sub.SlideShowOnNext = async () => { console.log('下一步'); }; //3000 ms后执行下一步操作 setTimeout( async () => { await app.ActivePresentation.SlideShowWindow.View.GotoNextClick(); }, 3000); }
上一步动画
切换到上一步动画。
语法
表达式.ActivePresentation.SlideShowWindow.View.GotoPreClick()
表达式:文档类型应用对象
示例
async function example() { await instance.ready(); const app = instance.Application; //切换到PPT全屏播放状态 await app.ActivePresentation.SlideShowSettings.Run(); //切换到上一步动画 setTimeout( async () => { await app.ActivePresentation.SlideShowWindow.View.GotoPreClick(); }, 2000); }
监听上一步动画
监听上一步动画操作。
语法
表达式.Sub.SlideShowOnPrevious = Function
表达式:文档类型应用对象
示例
async function example() { await instance.ready(); const app = instance.Application; //切换到PPT全屏播放状态 await app.ActivePresentation.SlideShowSettings.Run(); //监听上一步动画操作 app.Sub.SlideShowOnPrevious = async () => { console.log('上一步'); }; //3000 ms后执行下一步 setTimeout( async () => { await app.ActivePresentation.SlideShowWindow.View.GotoNextClick(); }, 3000); //5000 ms后执行上一步 setTimeout( async () => { await app.ActivePresentation.SlideShowWindow.View.GotoPreClick(); }, 5000); }
播放
JS-SDK V1.1.15及以上版本支持该功能。
显示或隐藏页码(PC端)
语法
表达式.ActivePresentation.SlideShowWindow.View.ShowPage
表达式:文档类型应用对象
示例
async function example() { await instance.ready(); const app = instance.Application; //窗口对象 const SlideShowWindow = await app.ActivePresentation.SlideShowWindow; //视图对象 const view = await SlideShowWindow.View; //播放模式下显示页码 view.ShowPage = true; }
显示或隐藏工具栏
语法
表达式.ActivePresentation.SlideShowSettings.ShowPlayToolbar
表达式:文档类型应用对象
示例
async function example() { await instance.ready(); const app = instance.Application; //显示隐藏工具栏 app.ActivePresentation.SlideShowSettings.ShowPlayToolbar = false; }
修改工具栏样式
该高级接口自由度很高,为了避免样式的修改影响功能使用,请尽量使用top
、left
、right
、bottom
、translate
修改样式。
语法
表达式.ActivePresentation.SlideShowSettings.SetPlayToolbarPosition({ Style })
表达式:文档类型应用对象
参数
传入一个布尔值,打开或者关闭缩略图。
属性
数据类型
是否必填
描述
Style
Object
是
样式。
Style说明
属性
数据类型
描述
Show
Object
显示时的样式,传入参数类似为
{ left: '100px' }
。Hidden
Object
隐藏时的样式。
示例
async function example() { await instance.ready(); const app = instance.Application; //Slide设置对象 const SlideShowSettings = await app.ActivePresentation.SlideShowSettings; //进入幻灯片播放模式 await SlideShowSettings.Run(); //修改工具栏样式 await SlideShowSettings.SetPlayToolbarPosition({ Style: { Show: { top: '10px' }, //style样式,工具栏显示时的位置 Hidden: { top: '-100px' }, //style样式,工具栏隐藏时的位置 }, }); }
修改画笔工具样式
语法
表达式.ActivePresentation.SlideShowSettings.SetPlayInkPosition({ Style })
表达式:文档类型应用对象
参数
传入一个布尔值,表明打开或者关闭缩略图。
属性
数据类型
是否必填
描述
Style
Object
是
样式,传入参数类似为
{ left: '100px' }
。示例
async function example() { await instance.ready(); const app = instance.Application; //Slide设置对象 const SlideShowSettings = await app.ActivePresentation.SlideShowSettings; //进入幻灯片播放模式 await SlideShowSettings.Run(); //修改画笔工具样式 await SlideShowSettings.SetPlayInkPosition({ Style: { background: 'deepskyblue' }, //画笔工具样式 }); }
打开或关闭画笔
语法
表达式.ActivePresentation.SetOpenMarkerInkEdit({ Open })
表达式:文档类型应用对象
参数
属性
数据类型
是否必填
描述
Open
Boolean
否
打开或保存画笔并退出。
true(默认):开启画笔。
false:保存画笔并关闭。
示例
async function example() { await instance.ready(); const app = instance.Application; //开启画笔 await app.ActivePresentation.SetOpenMarkerInkEdit(true); setTimeout(async () => { //保存画笔并关闭 await app.ActivePresentation.SetOpenMarkerInkEdit(false); }, 5000); }
打开备注视图
语法
表达式.ActivePresentation.SlideShowSettings.OpenRemarkSpeaker()
表达式:文档类型应用对象
示例
async function example() { await instance.ready(); const app = instance.Application; //Slide设置对象 const SlideShowSettings = await app.ActivePresentation.SlideShowSettings; //进入幻灯片播放模式 await SlideShowSettings.Run(); //打开备注视图 await SlideShowSettings.OpenRemarkSpeaker(); }
打开倒计时
语法
表达式.ActivePresentation.SlideShowSettings.SetCountDown()
表达式:文档类型应用对象
示例
async function example() { await instance.ready(); const app = instance.Application; //Slide设置对象 const SlideShowSettings = await app.ActivePresentation.SlideShowSettings; //进入幻灯片播放模式 await SlideShowSettings.Run(); //打开倒计时 await SlideShowSettings.SetCountDown(); }
开启自动播放
语法
表达式.ActivePresentation.SlideShowSettings.StartAutoPlay()
表达式:文档类型应用对象
示例
async function example() { await instance.ready(); const app = instance.Application; //Slide设置对象 const SlideShowSettings = await app.ActivePresentation.SlideShowSettings; //进入幻灯片播放模式 await SlideShowSettings.Run(); //开启自动播放 await SlideShowSettings.StartAutoPlay(); }
幻灯片播放状态
获取当前幻灯片播放状态。
语法
表达式.ActivePresentation.SlideShowWindow.View.State
表达式:文档类型应用对象
返回值
属性
数据类型
描述
state
String
幻灯片状态。
edit:编辑。
play:播放。
masterView:母版视图。
示例:
async function example() { await instance.ready(); const app = instance.Application; //获取状态 const getState = () => { return app.ActivePresentation.SlideShowWindow.View.State; }; //获取当前幻灯片播放状态 let currentState = await getState(); console.log(currentState); // 'edit' //切换到PPT全屏播放状态 await app.ActivePresentation.SlideShowSettings.Run(); currentState = await getState(); console.log(currentState); // 'play' }
打开或关闭播放缩略图
语法
表达式.ActivePresentation.SlideShowSettings.SetMiniThumbnailVisible()
表达式:文档类型应用对象
参数
传入一个布尔值,表示打开或者关闭缩略图。
属性
数据类型
是否必填
描述
Visible
Boolean
是
是否打开缩略图。
false(默认):关闭。
true:打开。
示例
async function example() { await instance.ready(); const app = instance.Application; //打开缩略图 await app.ActivePresentation.SlideShowSettings.SetMiniThumbnailVisible(true); }
插入新的幻灯片
语法
表达式.ActivePresentation.Slides.AddSlide()
表达式:文档类型应用对象
参数
属性
数据类型
是否必填
描述
Index
number
否
新幻灯片插入的位置。不传或参数小于0时插入到当前幻灯片的后面。
CustomLayout
object
否
本地版式的类型。不传时默认插入空白幻灯片。
LayoutUrl
string
否
在线PPT文件的链接。如果传递了该参数,layoutType会被忽略,优先使用在线PPT文件内的版式,并返回一个promise通知结果。
LayoutIndex
number
否
新建幻灯片时需要使用在线文件的第几个版式,layoutUrl不传时,该参数无效。