> For the complete documentation index, see [llms.txt](https://plugin-everything.gitbook.io/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://plugin-everything.gitbook.io/docs/controls/pen-style/line-caps.md).

# Line Caps

`Line Cap` controls how open stroke ends are drawn. Caps appear at open path ends, trimmed segment ends, and dash segment ends.

<div data-with-frame="true"><figure><img src="https://749037855-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ftv64kPMoAtApBYU0Un9u%2Fuploads%2F02dC9YapTCmvQCdhyXeb%2Fpen%20styles.png?alt=media&amp;token=f35af07a-431e-4a2b-b6c6-3ba34f516fba" alt=""><figcaption><p><code>Pen Shape</code> and <code>Line Cap</code> combinations. <code>Gradient Blending</code> is set to 0% for demonstration purposes.</p></figcaption></figure></div>

{% columns %}
{% column %}

1. `Round` + `Round Cap`
2. `Round` + `Projecting Cap`
3. `Flat` + `Round Cap`
   {% endcolumn %}

{% column %}
4\. `Flat` + `Projecting Cap`
5\. `Flat` + `Butt Cap`
6\. `Sphere (3D)`
{% endcolumn %}
{% endcolumns %}

{% hint style="info" %}
If you have a closed path with no trim paths or dashes, `Line Caps` and `Cap Limits` don't apply.
{% endhint %}

## Controls

<details>

<summary>Round Cap</summary>

#### Round Cap

`Round Cap` creates a rounded end at each open stroke endpoint.

With `Pen Shape` set to `Round`, this is produced naturally by the circular brush sweep. The cap extent is fixed by the stroke radius, so `Cap Limit` is hidden.

With `Pen Shape` set to `Flat`, Thicc Pro generates rounded cap geometry at the open end. This can create pill-shaped strokes when paired with a straight path.

</details>

<details>

<summary>Projecting Cap</summary>

#### Projecting Cap

`Projecting Cap` extends the stroke past the endpoint.

Use it when open ends should feel slightly longer, when a stroke needs to cover the exact endpoint more generously, or when dashes should have a heavier mark than their raw `Dash` length.

`Cap Limit` is available for `Projecting Cap` because the cap extends beyond the endpoint.

</details>

<details>

<summary>Butt Cap</summary>

#### Butt Cap

`Butt Cap` ends exactly at the endpoint.

Use it for square-ended technical strokes, precise dashed lines, and designs where the stroke should not extend beyond the source path.

`Butt Cap` is only available with `Pen Shape` set to `Flat`. It is unavailable for `Round` because a circular brush tip cannot terminate as a flat edge.

</details>

<details>

<summary>Cap Limit</summary>

#### Cap Limit

`Cap Limit` controls the maximum extension of generated cap geometry beyond the stroke boundary. It is a multiplier relative to the stroke radius.

The default is `2.0`. Use it when animated paths, animated width, or very sharp width changes produce unwanted cap popping over time.

`Cap Limit` is hidden when the active cap has no adjustable extension.

</details>

## Interactions

{% hint style="info" %}
Use `Line Cap` with `Enable Dashes` to change each dash from a rounded dot, to an extended mark, to a precise square-ended segment.
{% endhint %}

<details>

<summary>Pen Shape</summary>

#### Pen Shape

`Round` supports `Round Cap` and `Projecting Cap`.

`Flat` supports `Round Cap`, `Projecting Cap`, and `Butt Cap`.

`Sphere (3D)` hides `Line Cap` because its dedicated 3D rendering pipeline creates rounded stroke ends.

See [Pen Shapes](/docs/controls/pen-style/pen-shapes.md) for more about each brush model.

</details>

<details>

<summary>Dashes</summary>

#### Dashes

Every visible dash segment has its own start and end. `Line Cap` controls those dash ends for `Round` and `Flat` pen shapes.

Use `Round Cap` with a short `Dash` value for dotted strokes. Use `Butt Cap` with `Flat` for precise square dashes.

</details>

<details>

<summary>Trim Paths</summary>

#### Trim Paths

Trimmed strokes create open segment ends. `Line Cap` controls those ends for `Round` and `Flat` pen shapes, even if the original source path is closed.

If a round cap creates an overlap where a trimmed closed path meets, see [Fixing a visible seam in a closed path](/docs/faq.md#why-do-i-have-a-visible-seam-in-my-closed-path).

</details>

## Interface Conditionals

<details>

<summary>Line Cap</summary>

| Condition                    | Result                                                      |
| ---------------------------- | ----------------------------------------------------------- |
| `Pen Shape` is `Round`       | `Round Cap` and `Projecting Cap` are available              |
| `Pen Shape` is `Round`       | `Butt Cap` is unavailable                                   |
| `Pen Shape` is `Flat`        | `Round Cap`, `Projecting Cap`, and `Butt Cap` are available |
| `Pen Shape` is `Sphere (3D)` | `Line Cap` is hidden                                        |

</details>

<details>

<summary>Cap Limit</summary>

`Cap Limit` is hidden when it would have no visible effect.

| Condition                                            | Result                 |
| ---------------------------------------------------- | ---------------------- |
| `Pen Shape` is `Round` and `Line Cap` is `Round Cap` | `Cap Limit` is hidden  |
| `Pen Shape` is `Flat` and `Line Cap` is `Butt Cap`   | `Cap Limit` is hidden  |
| `Pen Shape` is `Sphere (3D)`                         | `Cap Limit` is hidden  |
| `Line Cap` has adjustable extension                  | `Cap Limit` is visible |

</details>
