Documentation Index
Fetch the complete documentation index at: https://uat.rive.app/docs/llms.txt
Use this file to discover all available pages before exploring further.
Describes how shapes are drawn, including fill or stroke style, thickness,
color, gradient, and blending behavior.
Fields
style
Painting style of type PaintStyle.
self.paint = Paint.with({
color = Color.rgb(255, 100, 50),
style = 'stroke',
})
join
Stroke join behavior for corners. See StrokeJoin.
self.paint = Paint.with({
color = Color.rgb(255, 100, 50),
cap = 'round',
style = 'stroke',
})
cap
Stroke cap used for line endings. See StrokeCap.
self.paint = Paint.with({
color = Color.rgb(255, 100, 50),
join = 'round',
style = 'stroke',
})
thickness
Thickness of the stroked path.
self.paint = Paint.with({
color = Color.rgb(255, 100, 50),
thickness = 4,
style = 'stroke',
})
blendMode
Blending mode used when compositing. See BlendMode.
-- Create a new paint with a color and multiply blend mode
self.paint = Paint.with({
color = Color.rgb(255, 100, 50),
blendMode = 'multiply',
style = 'fill',
})
feather
Feathering amount.
self.paint = Paint.with({
color = Color.rgb(255, 100, 50),
feather = 4,
style = 'stroke',
})
gradient
Gradient applied to fill (if present).
local g = Gradient.linear(Vector.xy(0, 0), Vector.xy(10, 0), {
{ position = 0, color = Color.rgb(255, 0, 0) },
{ position = 1, color = Color.rgb(0, 0, 255) },
})
self.paint = Paint.with({
color = Color.rgb(255, 100, 50),
gradient = g,
style = 'fill',
})
color
Color. See Color.
self.paint = Paint.with({
color = Color.rgb(255, 100, 50),
style = 'fill',
})
Constructors
new
Creates a new Paint object with default settings.
local paint = Paint.new()
paint.style = 'fill'
paint.color = Color.rgb(255, 200, 80)
with
with(values: PaintDefinition) -> Paint
Creates a new Paint initialized from the provided PaintDefinition.
local strokePaint = Paint.with({
style = 'stroke',
thickness = 3,
color = Color.hex('#FF0066'),
join = 'round',
cap = 'round',
})
Methods
copy
copy(values: PaintDefinition?) -> Paint
Returns a new Paint that copies this one, optionally overriding selected
properties with values from the provided PaintDefinition.
Returns a new Paint instance.
local base = Paint.with({
style = 'fill',
color = Color.rgb(255, 0, 0),
})
local outline = base:copy({
style = 'stroke',
thickness = 4,
})