Table of Contents

Class InkCanvasOptions

Namespace
Egami.Drawing
Assembly
Egami.Drawing.dll

How an InkCanvas turns colours that are not inks into its process inks.

public sealed record InkCanvasOptions : IEquatable<InkCanvasOptions>
Inheritance
InkCanvasOptions
Implements
Inherited Members

Examples

// Plates for CMYK and a spot; an RGB photo converts through FOGRA39, the logo prints on its own plate.
Egami.Colors.InkSet inks = Egami.Colors.InkSet.FromProfile(Egami.Colors.ColorProfile.Fogra39)
    .WithSpot("PANTONE 186 C", Egami.Colors.InkAppearance.Cmyk(0, 1, 0.81f, 0.04f));
using InkRaster page = new(inks, 300, 200);
using (InkCanvas canvas = new(page))
{
    canvas.Clear(Egami.Colors.InkColor.None);                                   // paper
    canvas.FillRect(new RectF(0, 0, 300, 120), new Rgba8(80, 140, 200, 255));   // RGB: converted to CMYK
    canvas.FillCircle(new Vector2(150, 100), 40, new SolidPaint(Egami.Colors.InkColor.Spot(inks[4], 1)));
}

Properties

BlackPointCompensation

Gets a value indicating whether conversions into the process inks use black point compensation. Defaults to true.

public bool BlackPointCompensation { get; init; }

Property Value

bool

Default

Gets the default options: sRGB colours, relative colorimetric with black point compensation.

public static InkCanvasOptions Default { get; }

Property Value

InkCanvasOptions

Drawing

Gets the drawing settings shared with RasterCanvas<TPixel>: curve tolerance and colour glyphs.

public CanvasOptions Drawing { get; init; }

Property Value

CanvasOptions

Exceptions

ArgumentNullException

The value is null.

Intent

Gets the rendering intent of conversions into the process inks. Defaults to relative colorimetric.

public RenderingIntent Intent { get; init; }

Property Value

RenderingIntent

RgbSource

Gets what RGB colours and images without a profile mean. Defaults to Srgb.

public ColorProfile RgbSource { get; init; }

Property Value

ColorProfile

Exceptions

ArgumentException

The profile is not an RGB encoding.