文件資料結構
IDocumentData
IDocumentData 是 Univer Docs 使用的快照格式。
它用於描述完整的文件單元,包括正文、文件級樣式、頁首頁尾、圖片、清單、表格以及插件資源。
屬性
| 屬性 | 類型 | 描述 |
|---|---|---|
| id | string | 文件單元的唯一 ID。 |
| rev? | number | 文件版本號,用於協同編輯。 |
| locale? | LocaleType | 文件語言環境。 |
| title? | string | 文件標題。 |
| body? | IDocumentBody | 正文富文字內容。詳情 |
| documentStyle | IDocumentStyle | 文件級頁面、排版、頁首頁尾和預設文字樣式設定。 |
| settings? | IDocumentSettings | 執行時設定,例如 zoomRatio。 |
| resources? | IResources | 插件資源。 |
| disabled? | boolean | 文件是否停用。 |
| headers? | IHeaders | 以頁首 ID 為 key 的頁首正文。 |
| footers? | IFooters | 以頁尾 ID 為 key 的頁尾正文。 |
| lists? | ILists | 段落項目符號使用的清單定義。 |
| drawings? | IDrawings | 圖片等繪圖物件。 |
| drawingsOrder? | string[] | 繪圖物件渲染順序。 |
| tableSource? | ITables | 被正文引用的表格定義。 |
範例
TypeScript
const documentData: IDocumentData = { id: 'doc-1', title: '範例文件', locale: LocaleType.ZH_TW, body: { dataStream: 'Hello Univer\r\n', textRuns: [ { st: 0, ed: 12, ts: { fs: 14 }, }, ], paragraphs: [ { startIndex: 12, paragraphId: 'paragraph-1', }, ], }, documentStyle: { pageSize: { width: 595, height: 842 }, marginTop: 72, marginBottom: 72, marginLeft: 72, marginRight: 72, },}使用場景
IDocumentData 主要用於:
- 建立 Univer Docs 文件
- 儲存 Univer Docs 快照
- 匯入或匯出
.docx檔案 - 透過
ICellData.p在 Sheets 儲存格中儲存富文字
快照是用於持久化的資料結構。文件執行後不要直接修改快照物件,請透過 Facade API 或命令修改文件內容。
你覺得這篇文檔如何?