Crate plutovg_sys

Crate plutovg_sys 

Source

Re-exports§

pub use self::plutovg_path_command as plutovg_path_command_t;
pub use self::plutovg_text_encoding as plutovg_text_encoding_t;

Structs§

plutovg_canvas
plutovg_color
@brief Represents a color with red, green, blue, and alpha components.
plutovg_font_face
plutovg_font_face_cache
plutovg_gradient_stop_t
@brief Represents a gradient stop.
plutovg_matrix
@brief A structure representing a 2D transformation matrix.
plutovg_paint
plutovg_path
plutovg_path_element__bindgen_ty_1
plutovg_path_iterator
@brief Iterator for traversing path elements in a path.
plutovg_point
@brief A structure representing a point in 2D space.
plutovg_rect
@brief A structure representing a rectangle in 2D space.
plutovg_surface
plutovg_text_iterator
@brief Iterator for traversing code points in text data.

Constants§

PLUTOVG_HALF_PI
PLUTOVG_KAPPA
PLUTOVG_PI
PLUTOVG_SQRT2
PLUTOVG_TWO_PI
PLUTOVG_VERSION_MAJOR
PLUTOVG_VERSION_MICRO
PLUTOVG_VERSION_MINOR
__bool_true_false_are_defined
false_
plutovg_fill_rule_t_PLUTOVG_FILL_RULE_EVEN_ODD
< Even-odd fill rule.
plutovg_fill_rule_t_PLUTOVG_FILL_RULE_NON_ZERO
< Non-zero winding fill rule.
plutovg_line_cap_t_PLUTOVG_LINE_CAP_BUTT
< Flat edge at the end of the stroke.
plutovg_line_cap_t_PLUTOVG_LINE_CAP_ROUND
< Rounded ends at the end of the stroke.
plutovg_line_cap_t_PLUTOVG_LINE_CAP_SQUARE
< Square ends at the end of the stroke.
plutovg_line_join_t_PLUTOVG_LINE_JOIN_BEVEL
< Beveled join with a flattened corner.
plutovg_line_join_t_PLUTOVG_LINE_JOIN_MITER
< Miter join with sharp corners.
plutovg_line_join_t_PLUTOVG_LINE_JOIN_ROUND
< Rounded join.
plutovg_operator_t_PLUTOVG_OPERATOR_CLEAR
< Clears the destination (resulting in a fully transparent image).
plutovg_operator_t_PLUTOVG_OPERATOR_DST
< Destination is kept, source is ignored.
plutovg_operator_t_PLUTOVG_OPERATOR_DST_ATOP
< Destination atop source (destination shown over source but only in the source’s bounds).
plutovg_operator_t_PLUTOVG_OPERATOR_DST_IN
< Destination within source.
plutovg_operator_t_PLUTOVG_OPERATOR_DST_OUT
< Destination outside source.
plutovg_operator_t_PLUTOVG_OPERATOR_DST_OVER
< Destination is composited over source.
plutovg_operator_t_PLUTOVG_OPERATOR_SRC
< Source replaces destination.
plutovg_operator_t_PLUTOVG_OPERATOR_SRC_ATOP
< Source atop destination (source shown over destination but only in the destination’s bounds).
plutovg_operator_t_PLUTOVG_OPERATOR_SRC_IN
< Source within destination (only the overlapping part of source is shown).
plutovg_operator_t_PLUTOVG_OPERATOR_SRC_OUT
< Source outside destination (non-overlapping part of source is shown).
plutovg_operator_t_PLUTOVG_OPERATOR_SRC_OVER
< Source is composited over destination.
plutovg_operator_t_PLUTOVG_OPERATOR_XOR
< Source and destination are combined, but their overlapping regions are cleared.
plutovg_path_command_PLUTOVG_PATH_COMMAND_CLOSE
< Closes the current path by drawing a line to the starting point.
plutovg_path_command_PLUTOVG_PATH_COMMAND_CUBIC_TO
< Draws a cubic Bézier curve to a new point.
plutovg_path_command_PLUTOVG_PATH_COMMAND_LINE_TO
< Draws a straight line to a new point.
plutovg_path_command_PLUTOVG_PATH_COMMAND_MOVE_TO
< Moves the current point to a new position.
plutovg_spread_method_t_PLUTOVG_SPREAD_METHOD_PAD
< Pad the gradient’s edges.
plutovg_spread_method_t_PLUTOVG_SPREAD_METHOD_REFLECT
< Reflect the gradient beyond its bounds.
plutovg_spread_method_t_PLUTOVG_SPREAD_METHOD_REPEAT
< Repeat the gradient pattern.
plutovg_text_encoding_PLUTOVG_TEXT_ENCODING_LATIN1
< Latin-1 encoding
plutovg_text_encoding_PLUTOVG_TEXT_ENCODING_UTF8
< UTF-8 encoding
plutovg_text_encoding_PLUTOVG_TEXT_ENCODING_UTF16
< UTF-16 encoding
plutovg_text_encoding_PLUTOVG_TEXT_ENCODING_UTF32
< UTF-32 encoding
plutovg_texture_type_t_PLUTOVG_TEXTURE_TYPE_PLAIN
< Plain texture.
plutovg_texture_type_t_PLUTOVG_TEXTURE_TYPE_TILED
< Tiled texture.
true_

Functions§

plutovg_canvas_add_font_face
@brief Add a font face to the canvas using the specified family and style.
plutovg_canvas_add_font_file
@brief Load a font face from a file and add it to the canvas using the specified family and style.
plutovg_canvas_add_glyph
@brief Adds a glyph to the current path at the specified origin.
plutovg_canvas_add_path
@brief Adds a path to the current path.
plutovg_canvas_add_text
@brief Adds text to the current path at the specified origin.
plutovg_canvas_arc
@brief Adds an arc to the current path.
plutovg_canvas_arc_to
@brief Adds an elliptical arc to the current path.
plutovg_canvas_circle
@brief Adds a circle to the current path.
plutovg_canvas_clip
@brief A drawing operator that intersects the current clipping region with the current path according to the current fill rule.
plutovg_canvas_clip_contains
@brief Tests whether a point lies within the current clipping region.
plutovg_canvas_clip_extents
@brief Gets the bounding box of the current clipping region.
plutovg_canvas_clip_path
@brief Intersects the current clipping region with a path according to the current fill rule.
plutovg_canvas_clip_preserve
@brief A drawing operator that intersects the current clipping region with the current path according to the current fill rule.
plutovg_canvas_clip_rect
@brief Intersects the current clipping region with a rectangle according to the current fill rule.
plutovg_canvas_clip_text
@brief Intersects the current clipping region with text at the specified origin.
plutovg_canvas_close_path
@brief Closes the current path.
plutovg_canvas_create
@brief Creates a drawing context on a surface.
plutovg_canvas_cubic_to
@brief Adds a cubic Bézier curve to the current path.
plutovg_canvas_destroy
@brief Decreases the reference count and destroys the canvas when it reaches zero.
plutovg_canvas_ellipse
@brief Adds an ellipse to the current path.
plutovg_canvas_fill
@brief A drawing operator that fills the current path according to the current fill rule.
plutovg_canvas_fill_contains
@brief Tests whether a point lies within the current fill region.
plutovg_canvas_fill_extents
@brief Computes the bounding box of the area that would be affected by a fill operation.
plutovg_canvas_fill_path
@brief Fills a path according to the current fill rule.
plutovg_canvas_fill_preserve
@brief A drawing operator that fills the current path according to the current fill rule.
plutovg_canvas_fill_rect
@brief Fills a rectangle according to the current fill rule.
plutovg_canvas_fill_text
@brief Fills a text at the specified origin.
plutovg_canvas_font_metrics
@brief Retrieves font metrics for the current font.
plutovg_canvas_get_current_point
@brief Retrieves the current point of the canvas.
plutovg_canvas_get_dash_array
@brief Retrieves the current dash pattern.
plutovg_canvas_get_dash_offset
@brief Retrieves the current dash offset.
plutovg_canvas_get_fill_rule
@brief Retrieves the current fill rule.
plutovg_canvas_get_font_face
@brief Retrieves the current font face used for text rendering on the canvas.
plutovg_canvas_get_font_face_cache
@brief Returns the font-face cache associated with the canvas.
plutovg_canvas_get_font_size
@brief Retrieves the current font size used for text rendering on the canvas.
plutovg_canvas_get_line_cap
@brief Retrieves the current line cap style.
plutovg_canvas_get_line_join
@brief Retrieves the current line join style.
plutovg_canvas_get_line_width
@brief Retrieves the current line width.
plutovg_canvas_get_matrix
@brief Stores the current transformation matrix in matrix. @param canvas A pointer to a plutovg_canvas_t object. @param A pointer to the plutovg_matrix_t to store the matrix.
plutovg_canvas_get_miter_limit
@brief Retrieves the current miter limit.
plutovg_canvas_get_opacity
@brief Retrieves the current global opacity.
plutovg_canvas_get_operator
@brief Retrieves the current compositing operator.
plutovg_canvas_get_paint
@brief Retrieves the current paint.
plutovg_canvas_get_path
@brief Gets the current path from the canvas.
plutovg_canvas_get_reference_count
@brief Retrieves the reference count of the canvas.
plutovg_canvas_get_surface
@brief Gets the surface associated with the canvas.
plutovg_canvas_glyph_metrics
@brief Retrieves metrics for a specific glyph.
plutovg_canvas_line_to
@brief Adds a straight line segment to the current path.
plutovg_canvas_map
@brief Transforms the point (x, y) using the current transformation matrix and stores the result in (xx, yy). @param canvas A pointer to a plutovg_canvas_t object. @param x The x-coordinate of the point to transform. @param y The y-coordinate of the point to transform. @param xx A pointer to store the transformed x-coordinate. @param yy A pointer to store the transformed y-coordinate.
plutovg_canvas_map_point
@brief Transforms the src point using the current transformation matrix and stores the result in dst. @note src and dst can be identical. @param canvas A pointer to a plutovg_canvas_t object. @param src A pointer to the plutovg_point_t point to transform. @param dst A pointer to the plutovg_point_t to store the transformed point.
plutovg_canvas_map_rect
@brief Transforms the src rectangle using the current transformation matrix and stores the result in dst. @note src and dst can be identical. @param canvas A pointer to a plutovg_canvas_t object. @param src A pointer to the plutovg_rect_t rectangle to transform. @param dst A pointer to the plutovg_rect_t to store the transformed rectangle.
plutovg_canvas_move_to
@brief Moves the current point to a new position.
plutovg_canvas_new_path
@brief Starts a new path on the canvas.
plutovg_canvas_paint
@brief A drawing operator that paints the current clipping region using the current paint.
plutovg_canvas_quad_to
@brief Adds a quadratic Bézier curve to the current path.
plutovg_canvas_rect
@brief Adds a rectangle to the current path.
plutovg_canvas_reference
@brief Increases the reference count of the canvas.
plutovg_canvas_reset_matrix
@brief Resets the current transformation matrix to the identity matrix. @param canvas A pointer to a plutovg_canvas_t object.
plutovg_canvas_restore
@brief Restores the canvas to the most recently saved state.
plutovg_canvas_rotate
@brief Rotates the current transformation matrix by the specified angle (in radians). @param canvas A pointer to a plutovg_canvas_t object. @param angle The rotation angle in radians.
plutovg_canvas_round_rect
@brief Adds a rounded rectangle to the current path.
plutovg_canvas_save
@brief Saves the current state of the canvas.
plutovg_canvas_scale
@brief Scales the current transformation matrix by factors sx and sy. @param canvas A pointer to a plutovg_canvas_t object. @param sx The scaling factor in the x-direction. @param sy The scaling factor in the y-direction.
plutovg_canvas_select_font_face
@brief Selects and sets the current font face on the canvas.
plutovg_canvas_set_color
@brief Sets the current paint to a solid color.
plutovg_canvas_set_dash
@brief Sets the dash pattern.
plutovg_canvas_set_dash_array
@brief Sets the dash pattern.
plutovg_canvas_set_dash_offset
@brief Sets the dash offset.
plutovg_canvas_set_fill_rule
@brief Sets the fill rule.
plutovg_canvas_set_font
@brief Sets the font face and size for text rendering on the canvas.
plutovg_canvas_set_font_face
@brief Sets the font face for text rendering on the canvas.
plutovg_canvas_set_font_face_cache
@brief Assigns a font-face cache to the canvas for font management.
plutovg_canvas_set_font_size
@brief Sets the font size for text rendering on the canvas.
plutovg_canvas_set_line_cap
@brief Sets the line cap style.
plutovg_canvas_set_line_join
@brief Sets the line join style.
plutovg_canvas_set_line_width
@brief Sets the line width.
plutovg_canvas_set_linear_gradient
@brief Sets the current paint to a linear gradient.
plutovg_canvas_set_matrix
@brief Resets the current transformation matrix to the specified matrix. @param canvas A pointer to a plutovg_canvas_t object. @param matrix A pointer to the plutovg_matrix_t object.
plutovg_canvas_set_miter_limit
@brief Sets the miter limit.
plutovg_canvas_set_opacity
@brief Sets the global opacity.
plutovg_canvas_set_operator
@brief Sets the compositing operator.
plutovg_canvas_set_paint
@brief Sets the current paint.
plutovg_canvas_set_radial_gradient
@brief Sets the current paint to a radial gradient.
plutovg_canvas_set_rgb
@brief Sets the current paint to a solid color.
plutovg_canvas_set_rgba
@brief Sets the current paint to a solid color.
plutovg_canvas_set_texture
@brief Sets the current paint to a texture.
plutovg_canvas_shear
@brief Shears the current transformation matrix by factors shx and shy. @param canvas A pointer to a plutovg_canvas_t object. @param shx The shearing factor in the x-direction. @param shy The shearing factor in the y-direction.
plutovg_canvas_stroke
@brief A drawing operator that strokes the current path according to the current stroke settings.
plutovg_canvas_stroke_contains
@brief Tests whether a point lies within the current stroke region.
plutovg_canvas_stroke_extents
@brief Computes the bounding box of the area that would be affected by a stroke operation.
plutovg_canvas_stroke_path
@brief Strokes a path with the current stroke settings.
plutovg_canvas_stroke_preserve
@brief A drawing operator that strokes the current path according to the current stroke settings.
plutovg_canvas_stroke_rect
@brief Strokes a rectangle with the current stroke settings.
plutovg_canvas_stroke_text
@brief Strokes a text at the specified origin.
plutovg_canvas_text_extents
@brief Retrieves the extents of a text.
plutovg_canvas_transform
@brief Multiplies the current transformation matrix with the specified matrix. @param canvas A pointer to a plutovg_canvas_t object. @param matrix A pointer to the plutovg_matrix_t object.
plutovg_canvas_translate
@brief Translates the current transformation matrix by offsets tx and ty. @param canvas A pointer to a plutovg_canvas_t object. @param tx The translation offset in the x-direction. @param ty The translation offset in the y-direction.
plutovg_color_init_argb32
@brief Initializes a color from a 32-bit unsigned ARGB value.
plutovg_color_init_hsl
@brief Initializes a color with the specified HSL color values.
plutovg_color_init_hsla
@brief Initializes a color with the specified HSLA color values.
plutovg_color_init_rgb
@brief Initializes a color using RGB components in the 0-1 range.
plutovg_color_init_rgb8
@brief Initializes a color using RGB components in the 0-255 range.
plutovg_color_init_rgba
@brief Initializes a color using RGBA components in the 0-1 range.
plutovg_color_init_rgba8
@brief Initializes a color using RGBA components in the 0-255 range.
plutovg_color_init_rgba32
@brief Initializes a color from a 32-bit unsigned RGBA value.
plutovg_color_parse
@brief Parses a color from a string using CSS color syntax.
plutovg_color_to_argb32
@brief Converts a color to a 32-bit unsigned ARGB value.
plutovg_color_to_rgba32
@brief Converts a color to a 32-bit unsigned RGBA value.
plutovg_convert_argb_to_rgba
@brief Converts pixel data from premultiplied ARGB to RGBA format.
plutovg_convert_rgba_to_argb
@brief Converts pixel data from RGBA to premultiplied ARGB format.
plutovg_font_face_cache_add
@brief Add a font face to the cache with the specified family and style.
plutovg_font_face_cache_add_file
@brief Load a font face from a file and add it to the cache with the specified family and style.
plutovg_font_face_cache_create
@brief Create a new, empty font‐face cache.
plutovg_font_face_cache_destroy
@brief Decrement the reference count of a font‐face cache and destroy it when it reaches zero.
plutovg_font_face_cache_get
@brief Retrieve a font face from the cache by family and style.
plutovg_font_face_cache_load_dir
@brief Load all font faces from files in a directory recursively and add them to the cache.
plutovg_font_face_cache_load_file
@brief Load all font faces from a file and add them to the cache.
plutovg_font_face_cache_load_sys
@brief Load all available system font faces and add them to the cache.
plutovg_font_face_cache_reference
@brief Increments the reference count of a font‐face cache.
plutovg_font_face_cache_reference_count
@brief Retrieve the current reference count of a font‐face cache.
plutovg_font_face_cache_reset
@brief Remove all entries from a font‐face cache.
plutovg_font_face_destroy
@brief Decrements the reference count and potentially destroys the font face.
plutovg_font_face_get_glyph_metrics
@brief Retrieves metrics for a specified glyph at a given size.
plutovg_font_face_get_glyph_path
@brief Retrieves the path of a glyph and its advance width.
plutovg_font_face_get_metrics
@brief Retrieves metrics for a font face at a specified size.
plutovg_font_face_get_reference_count
@brief Retrieves the current reference count of a font face.
plutovg_font_face_load_from_data
@brief Loads a font face from memory.
plutovg_font_face_load_from_file
@brief Loads a font face from a file.
plutovg_font_face_reference
@brief Increments the reference count of a font face.
plutovg_font_face_text_extents
@brief Computes the bounding box of a text string and its advance width.
plutovg_font_face_traverse_glyph_path
@brief Traverses the path of a glyph and calls a callback for each path element.
plutovg_matrix_init
@brief Initializes a 2D transformation matrix. @param matrix A pointer to the plutovg_matrix_t object to be initialized. @param a The horizontal scaling factor. @param b The vertical shearing factor. @param c The horizontal shearing factor. @param d The vertical scaling factor. @param e The horizontal translation offset. @param f The vertical translation offset.
plutovg_matrix_init_identity
@brief Initializes a 2D transformation matrix to the identity matrix. @param matrix A pointer to the plutovg_matrix_t object to be initialized.
plutovg_matrix_init_rotate
@brief Initializes a 2D transformation matrix for rotation. @param matrix A pointer to the plutovg_matrix_t object to be initialized. @param angle The rotation angle in radians.
plutovg_matrix_init_scale
@brief Initializes a 2D transformation matrix for scaling. @param matrix A pointer to the plutovg_matrix_t object to be initialized. @param sx The scaling factor in the x-direction. @param sy The scaling factor in the y-direction.
plutovg_matrix_init_shear
@brief Initializes a 2D transformation matrix for shearing. @param matrix A pointer to the plutovg_matrix_t object to be initialized. @param shx The shearing factor in the x-direction. @param shy The shearing factor in the y-direction.
plutovg_matrix_init_translate
@brief Initializes a 2D transformation matrix for translation. @param matrix A pointer to the plutovg_matrix_t object to be initialized. @param tx The translation offset in the x-direction. @param ty The translation offset in the y-direction.
plutovg_matrix_invert
@brief Calculates the inverse of matrix and stores it in inverse.
plutovg_matrix_map
@brief Transforms the point (x, y) using matrix and stores the result in (xx, yy). @param matrix A pointer to a plutovg_matrix_t object. @param x The x-coordinate of the point to transform. @param y The y-coordinate of the point to transform. @param xx A pointer to store the transformed x-coordinate. @param yy A pointer to store the transformed y-coordinate.
plutovg_matrix_map_point
@brief Transforms the src point using matrix and stores the result in dst. @note src and dst can be identical. @param matrix A pointer to a plutovg_matrix_t object. @param src A pointer to the plutovg_point_t object to transform. @param dst A pointer to the plutovg_point_t to store the transformed point.
plutovg_matrix_map_points
@brief Transforms an array of src points using matrix and stores the results in dst. @note src and dst can be identical. @param matrix A pointer to a plutovg_matrix_t object. @param src A pointer to the array of plutovg_point_t objects to transform. @param dst A pointer to the array of plutovg_point_t to store the transformed points. @param count The number of points to transform.
plutovg_matrix_map_rect
@brief Transforms the src rectangle using matrix and stores the result in dst. @note src and dst can be identical. @param matrix A pointer to a plutovg_matrix_t object. @param src A pointer to the plutovg_rect_t object to transform. @param dst A pointer to the plutovg_rect_t to store the transformed rectangle.
plutovg_matrix_multiply
@brief Multiplies left and right matrices and stores the result in matrix. @note matrix can be identical to either left or right. @param matrix A pointer to the plutovg_matrix_t object to store the result. @param left A pointer to the first plutovg_matrix_t matrix. @param right A pointer to the second plutovg_matrix_t matrix.
plutovg_matrix_parse
@brief Parses an SVG transform string into a matrix.
plutovg_matrix_rotate
@brief Rotates the matrix by the specified angle (in radians). @param matrix A pointer to the plutovg_matrix_t object to be modified. @param angle The rotation angle in radians.
plutovg_matrix_scale
@brief Scales the matrix by factors sx and sy @param matrix A pointer to the plutovg_matrix_t object to be modified. @param sx The scaling factor in the x-direction. @param sy The scaling factor in the y-direction.
plutovg_matrix_shear
@brief Shears the matrix by factors shx and shy. @param matrix A pointer to the plutovg_matrix_t object to be modified. @param shx The shearing factor in the x-direction. @param shy The shearing factor in the y-direction.
plutovg_matrix_translate
@brief Adds a translation with offsets tx and ty to the matrix. @param matrix A pointer to the plutovg_matrix_t object to be modified. @param tx The translation offset in the x-direction. @param ty The translation offset in the y-direction.
plutovg_paint_create_color
@brief Creates a solid color paint.
plutovg_paint_create_linear_gradient
@brief Creates a linear gradient paint.
plutovg_paint_create_radial_gradient
@brief Creates a radial gradient paint.
plutovg_paint_create_rgb
@brief Creates a solid RGB paint.
plutovg_paint_create_rgba
@brief Creates a solid RGBA paint.
plutovg_paint_create_texture
@brief Creates a texture paint from a surface.
plutovg_paint_destroy
@brief Decrements the reference count and destroys the paint if the count reaches zero.
plutovg_paint_get_reference_count
@brief Retrieves the reference count of a paint object.
plutovg_paint_reference
@brief Increments the reference count of a paint object.
plutovg_path_add_arc
@brief Adds an arc to the path.
plutovg_path_add_circle
@brief Adds a circle to the path.
plutovg_path_add_ellipse
@brief Adds an ellipse to the path.
plutovg_path_add_path
@brief Adds a sub-path to the path.
plutovg_path_add_rect
@brief Adds a rectangle to the path.
plutovg_path_add_round_rect
@brief Adds a rounded rectangle to the path.
plutovg_path_arc_to
@brief Adds an elliptical arc to the path.
plutovg_path_clone
@brief Creates a copy of the path.
plutovg_path_clone_dashed
@brief Creates a copy of the path with a dashed pattern applied.
plutovg_path_clone_flatten
@brief Creates a copy of the path with Bézier curves flattened to line segments.
plutovg_path_close
@brief Closes the current sub-path.
plutovg_path_create
@brief Creates a new path object.
plutovg_path_cubic_to
@brief Adds a cubic Bézier curve to the path.
plutovg_path_destroy
@brief Decreases the reference count of a path object.
plutovg_path_extents
@brief Computes the bounding box and total length of the path.
plutovg_path_get_current_point
@brief Retrieves the current point of the path.
plutovg_path_get_elements
@brief Retrieves the elements of a path.
plutovg_path_get_reference_count
@brief Retrieves the reference count of a path object.
plutovg_path_iterator_has_next
@brief Checks if there are more elements to iterate over.
plutovg_path_iterator_init
@brief Initializes a path iterator for a given path.
plutovg_path_iterator_next
@brief Retrieves the current command and its associated points, then advances the iterator.
plutovg_path_length
@brief Calculates the total length of the path.
plutovg_path_line_to
@brief Adds a straight line segment to the path.
plutovg_path_move_to
@brief Moves the current point to a new position.
plutovg_path_parse
@brief Parses SVG path data into a plutovg_path_t object.
plutovg_path_quad_to
@brief Adds a quadratic Bézier curve to the path.
plutovg_path_reference
@brief Increases the reference count of a path object.
plutovg_path_reserve
@brief Reserves space for path elements.
plutovg_path_reset
@brief Resets the path.
plutovg_path_transform
@brief Applies a transformation matrix to the path.
plutovg_path_traverse
@brief Traverses the path and calls the callback for each element.
plutovg_path_traverse_dashed
@brief Traverses the path with a dashed pattern and calls the callback for each segment.
plutovg_path_traverse_flatten
@brief Traverses the path with Bézier curves flattened to line segments.
plutovg_surface_clear
@brief Clears the entire surface with the specified color.
plutovg_surface_create
@brief Creates a new image surface with the specified dimensions.
plutovg_surface_create_for_data
@brief Creates an image surface using existing pixel data.
plutovg_surface_destroy
@brief Decrements the reference count and destroys the surface if the count reaches zero.
plutovg_surface_get_data
@brief Gets the pixel data of the surface.
plutovg_surface_get_height
@brief Gets the height of the surface.
plutovg_surface_get_reference_count
@brief Gets the current reference count of a surface.
plutovg_surface_get_stride
@brief Gets the stride of the surface.
plutovg_surface_get_width
@brief Gets the width of the surface.
plutovg_surface_load_from_image_base64
@brief Loads an image surface from base64-encoded data.
plutovg_surface_load_from_image_data
@brief Loads an image surface from raw image data.
plutovg_surface_load_from_image_file
@brief Loads an image surface from a file.
plutovg_surface_reference
@brief Increments the reference count for a surface.
plutovg_surface_write_to_jpg
@brief Writes the surface to a JPEG file.
plutovg_surface_write_to_jpg_stream
@brief Writes the surface to a JPEG stream.
plutovg_surface_write_to_png
@brief Writes the surface to a PNG file.
plutovg_surface_write_to_png_stream
@brief Writes the surface to a PNG stream.
plutovg_text_iterator_has_next
@brief Checks if there are more code points to iterate.
plutovg_text_iterator_init
@brief Initializes a text iterator.
plutovg_text_iterator_next
@brief Retrieves the next code point and advances the iterator.
plutovg_version
@brief Gets the version of the plutovg library. @return An integer representing the version of the plutovg library.
plutovg_version_string
@brief Gets the version of the plutovg library as a string. @return A string representing the version of the plutovg library.

Type Aliases§

plutovg_canvas_t
@brief Represents a drawing context.
plutovg_codepoint_t
@brief Represents a Unicode code point.
plutovg_color_t
@brief Represents a color with red, green, blue, and alpha components.
plutovg_destroy_func_t
@brief A function pointer type for a cleanup callback. @param closure A pointer to the resource to be cleaned up.
plutovg_fill_rule_t
@brief Defines fill rule types for filling paths.
plutovg_font_face_cache_t
@brief Represents a cache of loaded font faces.
plutovg_font_face_t
@brief Represents a font face.
plutovg_line_cap_t
@brief Defines the shape used at the ends of open subpaths.
plutovg_line_join_t
@brief Defines the shape used at the corners of paths.
plutovg_matrix_t
@brief A structure representing a 2D transformation matrix.
plutovg_operator_t
@brief Defines compositing operations.
plutovg_paint_t
@brief Represents a paint object used for drawing operations.
plutovg_path_command
@brief Enumeration defining path commands.
plutovg_path_element_t
@brief Union representing a path element.
plutovg_path_iterator_t
@brief Iterator for traversing path elements in a path.
plutovg_path_t
@brief Represents a 2D path for drawing operations.
plutovg_path_traverse_func_t
@brief Callback function type for traversing a path.
plutovg_point_t
@brief A structure representing a point in 2D space.
plutovg_rect_t
@brief A structure representing a rectangle in 2D space.
plutovg_spread_method_t
@brief Defines the spread method for gradients.
plutovg_surface_t
@brief Represents an image surface for drawing operations.
plutovg_text_encoding
@brief Text encodings used for converting text data to code points.
plutovg_text_iterator_t
@brief Iterator for traversing code points in text data.
plutovg_texture_type_t
@brief Defines the type of texture, either plain or tiled.
plutovg_write_func_t
@brief A function pointer type for a write callback. @param closure A pointer to user-defined data or context. @param data A pointer to the data to be written. @param size The size of the data in bytes.

Unions§

plutovg_path_element
@brief Union representing a path element.