path_parse


Description:


[ Version ( replacement = "Path.parse" , since = "4.14" ) ]
public Path? path_parse (string string)

This is a convenience function that constructs a `GskPath` from a serialized form.

The string is expected to be in (a superset of) SVG path syntax, as e.g. produced by [method@Gsk.Path.to_string].

A high-level summary of the syntax:

  • `M x y` Move to `(x, y)`
  • `L x y` Add a line from the current point to `(x, y)`
  • `Q x1 y1 x2 y2` Add a quadratic Bézier from the current point to `(x2, y2)`, with control point `(x1, y1)`
  • `C x1 y1 x2 y2 x3 y3` Add a cubic Bézier from the current point to `(x3, y3)`, with control points `(x1, y1)` and `(x2, y2)`
  • `Z` Close the contour by drawing a line back to the start point
  • `H x` Add a horizontal line from the current point to the given x value
  • `V y` Add a vertical line from the current point to the given y value
  • `T x2 y2` Add a quadratic Bézier, using the reflection of the previous segments' control point as control point
  • `S x2 y2 x3 y3` Add a cubic Bézier, using the reflection of the previous segments' second control point as first control point
  • `A rx ry r l s x y` Add an elliptical arc from the current point to `(x, y)` with radii rx and ry. See the SVG documentation for how the other parameters influence the arc.
  • `O x1 y1 x2 y2 w` Add a rational quadratic Bézier from the current point to `(x2, y2)` with control point `(x1, y1)` and weight `w`.

All the commands have lowercase variants that interpret coordinates relative to the current point.

The `O` command is an extension that is not supported in SVG.

Parameters:

string

a string

Returns:

a new `GskPath`, or `NULL` if string could not be parsed


Namespace: Gsk
Package: gtk4