Table of Contents

Class ColorSweepGradientPaint

Namespace
Egami.Fonts
Assembly
Egami.Fonts.dll

A gradient around a center filling the clip, angles in degrees counter-clockwise from the x axis (y up).

public sealed record ColorSweepGradientPaint : ColorPaint, IEquatable<ColorPaint>, IEquatable<ColorSweepGradientPaint>
Inheritance
ColorSweepGradientPaint
Implements
Inherited Members

Examples

// Color glyphs draw in color by themselves: COLR (layers and gradients), sbix and CBDT (images), per glyph.
using (RasterCanvas<Rgba8> canvas = image.CreateCanvas())
{
    canvas.DrawText("Ship it", new Vector2(8, 40), new Font(text, 24), Rgba8.Black);
    canvas.DrawText("\U0001F680\U0001F389", new Vector2(100, 42), new Font(emoji, 32), Rgba8.Black);
}

// The palette is a font setting; the paint's color fills a glyph's foreground parts and its alpha the whole glyph.
var darkMode = new Font(emoji, 32) { Palette = FontPalette.Dark };
ColorGlyphFormats formats = emoji.ColorFormats;

// The paint graph is there to walk, for writers that draw color glyphs their own way.
emoji.TryGetColorGlyph(emoji.GetGlyph(0x1F680), darkMode.Palette, out ColorGlyph? rocket);

Constructors

ColorSweepGradientPaint(Vector2, float, float, ColorLine)

A gradient around a center filling the clip, angles in degrees counter-clockwise from the x axis (y up).

public ColorSweepGradientPaint(Vector2 Center, float StartAngle, float EndAngle, ColorLine Line)

Parameters

Center Vector2

The center.

StartAngle float

Where the color line starts.

EndAngle float

Where the color line ends.

Line ColorLine

The color line.

Examples

// Color glyphs draw in color by themselves: COLR (layers and gradients), sbix and CBDT (images), per glyph.
using (RasterCanvas<Rgba8> canvas = image.CreateCanvas())
{
    canvas.DrawText("Ship it", new Vector2(8, 40), new Font(text, 24), Rgba8.Black);
    canvas.DrawText("\U0001F680\U0001F389", new Vector2(100, 42), new Font(emoji, 32), Rgba8.Black);
}

// The palette is a font setting; the paint's color fills a glyph's foreground parts and its alpha the whole glyph.
var darkMode = new Font(emoji, 32) { Palette = FontPalette.Dark };
ColorGlyphFormats formats = emoji.ColorFormats;

// The paint graph is there to walk, for writers that draw color glyphs their own way.
emoji.TryGetColorGlyph(emoji.GetGlyph(0x1F680), darkMode.Palette, out ColorGlyph? rocket);

Properties

Center

The center.

public Vector2 Center { get; init; }

Property Value

Vector2

EndAngle

Where the color line ends.

public float EndAngle { get; init; }

Property Value

float

Line

The color line.

public ColorLine Line { get; init; }

Property Value

ColorLine

StartAngle

Where the color line starts.

public float StartAngle { get; init; }

Property Value

float

Methods

Accept(IColorPaintVisitor)

Calls the visitor's method for this kind of node.

public override void Accept(IColorPaintVisitor visitor)

Parameters

visitor IColorPaintVisitor

The visitor.