Univer Slides API

Slides Facade 会在 FUniver 上扩展演示文稿和幻灯片对象。请在创建 API 对象前导入其副作用入口:

TypeScript
import { FUniver } from '@univerjs/core/facade'import '@univerjs-pro/slides/facade'const univerAPI = FUniver.newAPI(univer)

创建和查找演示文稿

TypeScript
const presentation = univerAPI.createPresentation({  id: 'quarterly-review',  name: 'Quarterly review',})const activePresentation = univerAPI.getActivePresentation()const samePresentation = univerAPI.getPresentation(presentation.getId())

createPresentation() 接受部分 ISlideData 快照。传入 save() 返回的快照可以恢复演示文稿。

操作演示文稿 Unit

FPresentation 提供 Unit 标识、名称、页面尺寸、幻灯片、当前幻灯片、切换效果、权限和独立快照:

TypeScript
presentation.setName('FY 2027 review')const opening = presentation.getSlideByIndex(0) ?? presentation.appendSlide({  name: 'Opening',})presentation.setActiveSlide(opening)const snapshot = presentation.save()

不要通过修改 snapshot 更新运行中的演示文稿。请使用 Facade 方法或命令,确保渲染和历史记录保持同步。

进入幻灯片

FSlide 是幻灯片背景、演讲者备注、切换效果和元素的操作入口:

TypeScript
const slide = presentation.getActiveSlide()if (slide) {  const elements = slide.getElements()  const notes = slide.getSpeakerNotes()}

具体操作请继续阅读幻灯片与版式形状与文本图片与组合

解析命令目标

命令事件参数可能包含演示文稿和幻灯片标识。无需依赖当前选择即可解析目标:

TypeScript
const listener = univerAPI.addEvent(  univerAPI.Event.CommandExecuted,  ({ params }) => {    const target = univerAPI.getSlideCommandTarget(params)    console.log(target?.presentation.getId(), target?.slide.getId())  })

宿主组件卸载时请释放监听器。

卸载演示文稿

不再需要某个 Slides 单元时,请按 ID 卸载。只有在销毁整个应用时,才应释放根 univer 实例。

TypeScript
const presentation = univerAPI.getActivePresentation()if (presentation) {  univerAPI.disposeUnit(presentation.getId())}

你觉得这篇文档如何?

© 2026 DreamNum Co., Ltd.