# 投影片與版面配置

- Human documentation: [https://docs.univer.ai/zh-TW/guides/slides/features/core/slides-and-layouts](https://docs.univer.ai/zh-TW/guides/slides/features/core/slides-and-layouts)

- Agent Markdown: [https://docs.univer.ai/zh-TW/guides/slides/features/core/slides-and-layouts.md](https://docs.univer.ai/zh-TW/guides/slides/features/core/slides-and-layouts.md)

- Requested language: `zh-TW`

- Content language: `zh-TW`

- Documentation version: `1.2.0`

- Source: [slides/features/core/slides-and-layouts.zh-TW.mdx](https://github.com/dream-num/documentation/blob/dev/content/guides/slides/features/core/slides-and-layouts.zh-TW.mdx)

---

`FPresentation` 管理投影片順序和共用頁面尺寸。`FSlide` 提供單張投影片解析後的頁面配置和背景。

## 管理投影片順序

```ts
const presentation = univerAPI.getActivePresentation()

if (!presentation) {
  throw new Error('No active presentation')
}

const agenda = presentation.appendSlide({ name: 'Agenda' })
const summary = presentation.insertSlide(1, { name: 'Summary' })

presentation.moveSlide(summary, 0)
presentation.setActiveSlide(agenda)
```

使用 `getSlides()`、`getSlideById()` 和 `getSlideByIndex()` 讀取目前順序。`deleteSlide()` 會透過命令管線刪除投影片。

## 設定頁面尺寸

```ts
presentation.setPageSize({
  preset: univerAPI.Enum.SlidePageSizePresetEnum.WideScreen16By9,
})
```

`slide.getPageLayout()` 傳回解析後的頁面尺寸，以及元素邊界和順序。座標使用 Slides 模型座標系。

## 設定投影片背景

```ts
agenda.setBackground({
  type: univerAPI.Enum.SlideBackgroundTypeEnum.Solid,
  color: '#1d4ed8',
})
```

傳入 `undefined` 可移除明確背景。`setShowMasterBackground(false)` 會隱藏該頁繼承的母片背景圖形，而不會從快照中刪除它們。
