# Custom Font List

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

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

- Requested language: `en-US`

- Content language: `en-US`

- Documentation version: `1.0.0-rc.0`

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

---

Boards stores font choices in Board data. A Board theme can define `fontScheme.heading` and `fontScheme.body`, while individual text elements can override the family, size, and emphasis through `textStyle`.

## Set text element fonts

```ts
const board = univerAPI.getActiveBoard()
if (!board) throw new Error('No active Board')

const label = board.insertText({
  text: 'Milestone',
  left: 120,
  top: 96,
  width: 240,
  height: 64,
  textStyle: {
    fontFamily: 'Inter',
    fontSize: 18,
    bold: true,
  },
})
if (!label) throw new Error('Cannot insert label')
```

Board text editing uses the shared Docs UI text pipeline, which is a technical dependency of `@univerjs-pro/boards-ui`. Load any web font in the host page before rendering the Board; otherwise the browser substitutes an available font and text metrics may change.

Use [Themes and Dark Mode](https://docs.univer.ai/guides/fundamentals/ui/themes.md) for the shared application theme. Board document themes remain part of the Board snapshot.
