页面与元素结构
ISlidePage
ISlidePage 描述 Univer Slides 中的单个页面对象。普通幻灯片、母版、版式、讲义母版和备注母版都使用这个结构,并通过 pageType 和可选属性块区分。
页面属性
| 属性 | 类型 | 描述 |
|---|---|---|
| id | string | 页面唯一 ID。 |
| pageType | PageType | 页面类型,例如 SLIDE、MASTER 或 LAYOUT。 |
| zIndex | number | 页面的渲染顺序。 |
| title | string | 页面标题。 |
| description | string | 页面描述。 |
| pageBackgroundFill | IColorStyle | 页面背景填充。 |
| colorScheme? | ThemeColorType | 页面使用的主题色方案。 |
| pageElements | { [elementId: string]: IPageElement } | 页面上的元素,以元素 ID 为 key。 |
| slideProperties? | ISlideProperties | 普通幻灯片页面的属性。 |
| layoutProperties? | ILayoutProperties | 版式页面的属性。 |
| masterProperties? | IMasterProperties | 母版页面的属性。 |
IPageElement
IPageElement 是页面元素的通用容器。每个元素都有 left、top、width、height、angle、scaleX、scaleY、flipX、flipY 等变换字段,并根据 type 选择一个内容载荷。
| 元素类型 | 载荷 | 描述 |
|---|---|---|
PageElementType.SHAPE | shape | 预设或自定义形状,包括形状文本和形状属性。 |
PageElementType.IMAGE | image | 图片属性,以及可选的占位符和链接信息。 |
PageElementType.TEXT | richText | 富文本元素。rich 字段可以存储 IDocumentData。 |
PageElementType.SPREADSHEET | spreadsheet | 已废弃的嵌入式工作表载荷。 |
PageElementType.DOCUMENT | document | 已废弃的嵌入式文档载荷。 |
PageElementType.SLIDE | slide | 已废弃的嵌入式幻灯片载荷。 |
示例
TypeScript
const page: ISlidePage = { id: 'slide-1', pageType: PageType.SLIDE, zIndex: 10, title: '议程', description: '', pageBackgroundFill: { rgb: 'rgb(255,255,255)' }, pageElements: { title: { id: 'title', zIndex: 1, left: 72, top: 64, width: 600, height: 80, title: 'Title', description: '', type: PageElementType.TEXT, richText: { text: '季度复盘', }, }, },}注意事项
pageOrder控制可见幻灯片顺序,zIndex控制绘制顺序。- 文本元素可以通过
richText.text存储纯文本,也可以通过richText.rich存储更完整的文档数据。 - 插件自有的元素载荷应使用
customBlock,不要继续复用已废弃的嵌入式载荷字段。
你觉得这篇文档如何?