# 自定义字体列表

- Human documentation: [https://docs.univer.ai/zh-CN/guides/slides/ui/fonts](https://docs.univer.ai/zh-CN/guides/slides/ui/fonts)

- Agent Markdown: [https://docs.univer.ai/zh-CN/guides/slides/ui/fonts.md](https://docs.univer.ai/zh-CN/guides/slides/ui/fonts.md)

- Requested language: `zh-CN`

- Content language: `zh-CN`

- Documentation version: `1.0.0-rc.0`

- Source: [slides/ui/fonts.zh-CN.mdx](https://github.com/dream-num/documentation/blob/dev/content/guides/slides/ui/fonts.zh-CN.mdx)

---

Slides 文本编辑器的字体下拉框使用 Univer 共享字体列表。请在 `UniverUIPlugin` 上配置这项应用级列表。

## 配置字体选项

```ts
import { UniverUIPlugin } from '@univerjs/ui'

univer.registerPlugin(UniverUIPlugin, {
  container: 'app',
  customFontFamily: {
    list: [
      {
        value: 'Inter',
        label: 'Inter',
        category: 'sans-serif',
      },
      {
        value: 'Noto Serif',
        label: 'Noto Serif',
        category: 'serif',
      },
    ],
    override: false,
  },
})
```

`value` 会作为文本片段的字体族写入；`label` 是显示文本或国际化键；`category` 可用于对选项分组。

请通过 `@font-face` 或样式表自行加载浏览器字体。向列表添加名称不会下载字体文件；字体族不可用时，浏览器会使用回退字体。

## Facade API

加载 UI Facade 后，可以用 `addFonts` 在运行时追加字体选项：

```ts
univerAPI.addFonts([
  {
    value: 'Inter',
    label: 'Inter',
    category: 'sans-serif',
  },
])
```

此方法会立即更新共享下拉框，但不会加载对应的字体二进制。
