---
title: "All features — Svelte"
description: "Everything the viewer can do, how to leave a feature out, who the user is, and where each feature's settings go."
integration: "Svelte"
source: "https://www.embedpdf.com/docs/viewer/svelte/features"
---

# All features

Every feature is on from the start. Leave out the ones you don't need with `disable`, by the name
in the first column:

```js
{ disable: ['forms', 'redaction', 'measurement'] }
```

| Feature       | What people can do                                                                   | Settings                                                                                     |
| :------------ | :----------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------- |
| `annotations` | Highlight, underline and strike out text; draw; add notes, text boxes and callouts   | [Annotations](features/annotations)                                                          |
| `shapes`      | Draw rectangles, circles, lines, arrows and polygons                                 | [Annotations](features/annotations#the-tools)                                                |
| `comments`    | Comment on annotations and reply, in a panel with every thread                       | [Annotations](features/annotations#comments)                                                 |
| `stamps`      | Place stamps: the standard ones, their own, or images                                | [Annotations](features/annotations#stamps)                                                   |
| `signatures`  | Draw, type or upload a signature; sign fields; check signatures                      | [Forms & signatures](features/forms-and-signatures#signatures)                               |
| `forms`       | Fill in forms; build them in the Form mode                                           | [Forms & signatures](features/forms-and-signatures)                                          |
| `redaction`   | Mark text and areas, then remove them from the file for good                         | [Annotations](features/annotations#redaction)                                                |
| `measurement` | Measure distances, perimeters and areas at the drawing's scale                       | [Annotations](features/annotations#measurements)                                             |
| `pages`       | Rotate, move, insert and delete pages                                                | [`plugins.pageEdit`](https://www.embedpdf.com/docs/headless/svelte/documents/pages)          |
| `attachments` | See, open and add files inside the PDF                                               | [Panels](customize/panels)                                                                   |
| `search`      | Find text, with every match highlighted and listed                                   | [`plugins.search`](https://www.embedpdf.com/docs/headless/svelte/text/search#settings)       |
| `text`        | Select and copy text                                                                 | [`plugins.selection`](https://www.embedpdf.com/docs/headless/svelte/text/selection#settings) |
| `thumbnails`  | A picture of every page, to jump around                                              | [Panels](customize/panels)                                                                   |
| `outline`     | The document's table of contents                                                     | [Panels](customize/panels)                                                                   |
| `documents`   | Open other files (with the local engine), download, print, several documents in tabs | [Documents](documents)                                                                       |

## Leave features out

A feature in `disable` is gone everywhere at once: its buttons, its mode tab, its panel, its menu
rows and its shortcuts. Annotations already in the document still show; people just can't add new
ones. Most features have parts you can turn off on their own, such as `forms.building` or
`documents.download`, and one button goes by its command's name, such as `tool:highlight`.

`disable` follows its prop, so a feature can come and go while the viewer runs, for example when
a user's plan changes.

[Turn features off](features/turning-off) has every name, read-only, and what to use when: the
layout for where something goes, `disable` for whether the viewer has it, and the scope for what a
user may do.

## Who the user is

The user's name becomes the author of the annotations and comments they make:

```js
{ identity: { displayName: 'Ada Lovelace' } }
```

## Each feature's settings

Every feature is a headless plugin, and `plugins` takes its settings by the plugin's name, exactly
as the plugin's page lists them:

```js
{
  plugins: {
    stage: { spread: 'odd', zoom: { mode: 'fit-width' } },
    search: { highlight: { color: '#a7f3d0' } },
    annotation: { tools: [{ id: 'highlight', defaults: { color: '#fde047' } }] },
  },
}
```

That opens documents as two-page spreads at the page's width, with green search matches and
yellow highlights. See [Plugins](code/plugins) for every plugin and how to change its settings
while the viewer runs.

## Good to know

### What loads when

A feature you disable is still in the viewer's code: `disable` changes what people see, not what
you ship. The first load stays small another way. Each feature's panels and dialogs are files of
their own, which the viewer fetches in the background once the document shows, so they open at
once. The heavier parts wait until they're used: the signature checks until a signature is
checked, the standard stamps until Stamps opens, the handwriting fonts until someone types a
signature, and each language until it's chosen. [How it works](concepts/how-it-works#what-loads-when)
has the whole order.
