Info
This site is generated using the static site generator developed by the Typst Community. Please adjust the text content of this banner according to your usage requirements. At Typst GmbH's request, when publishing documentation, you must clearly indicate that it is non-official and display the version of Typst being documented. For details, refer to Issue #874 on typst/typst.
TypstDocumentEnglish
v0.dev.2025-09-12

path
Element
Element
Element functions can be customized with set and show rules.

A path through a list of points, connected by Bézier curves.

Example

#path(
  fill: blue.lighten(80%),
  stroke: blue,
  closed: true,
  (0pt, 50pt),
  (100%, 50pt),
  ((50%, 0pt), (40pt, 0pt)),
)
Preview

Parameter
Parameter
Parameters are input values for functions. Specify them in parentheses after the function name.

fill
Settable
Settable
Settable parameters can be set using the set rule, changing the default value used thereafter.

How to fill the path.

When setting a fill, the default stroke disappears. To create a rectangle with both fill and stroke, you have to configure both.

Default value:

none

fill-rule
Settable
Settable
Settable parameters can be set using the set rule, changing the default value used thereafter.

The drawing rule used to fill the path.

Available string values:
  • non-zero

    Specifies that "inside" is computed by a non-zero sum of signed edge crossings.

  • even-odd

    Specifies that "inside" is computed by an odd number of edge crossings.

Default value:

"non-zero"

Show example
// We use `.with` to get a new
// function that has the common
// arguments pre-applied.
#let star = path.with(
  fill: red,
  closed: true,
  (25pt, 0pt),
  (10pt, 50pt),
  (50pt, 20pt),
  (0pt, 20pt),
  (40pt, 50pt),
)

#star(fill-rule: "non-zero")
#star(fill-rule: "even-odd")
Preview

stroke
Settable
Settable
Settable parameters can be set using the set rule, changing the default value used thereafter.

How to stroke the path.

Can be set to none to disable the stroke or to auto for a stroke of 1pt black if and only if no fill is given.

Default value:

auto

closed
Settable
Settable
Settable parameters can be set using the set rule, changing the default value used thereafter.

Whether to close this path with one last Bézier curve. This curve will take into account the adjacent control points. If you want to close with a straight line, simply add one last point that's the same as the start point.

Default value:

false

vertices
Required
Required
Required parameters must be specified when calling the function.
Positional
Positional
Positional parameters can be set by specifying them in order, omitting the parameter name.
Variadic
Variadic
Variadic parameters can be specified multiple times.

The vertices of the path.

Each vertex can be defined in 3 ways:

  • A regular point, as given to the line or polygon function.
  • An array of two points, the first being the vertex and the second being the control point. The control point is expressed relative to the vertex and is mirrored to get the second control point. The given control point is the one that affects the curve coming into this vertex (even for the first point). The mirrored control point affects the curve going out of this vertex.
  • An array of three points, the first being the vertex and the next being the control points (control point for curves coming in and out, respectively).
Open official docs

Search