Table of Contents

Class DefaultDrawingBackend

Namespace
SixLabors.ImageSharp.Drawing.Processing.Backends
Assembly
SixLabors.ImageSharp.Drawing.dll

CPU backend that executes path coverage rasterization and brush composition directly against a CPU region.

public sealed class DefaultDrawingBackend : IDrawingBackend
Inheritance
DefaultDrawingBackend
Implements
Inherited Members

Properties

Instance

Gets the default backend instance.

public static DefaultDrawingBackend Instance { get; }

Property Value

DefaultDrawingBackend

Methods

ComposeLayer<TPixel>(Configuration, ICanvasFrame<TPixel>, ICanvasFrame<TPixel>, Point, GraphicsOptions)

Composites one CPU-backed frame onto another using the supplied graphics options.

public static void ComposeLayer<TPixel>(Configuration configuration, ICanvasFrame<TPixel> source, ICanvasFrame<TPixel> destination, Point destinationOffset, GraphicsOptions options) where TPixel : unmanaged, IPixel<TPixel>

Parameters

configuration Configuration

The active processing configuration.

source ICanvasFrame<TPixel>

The source frame.

destination ICanvasFrame<TPixel>

The destination frame.

destinationOffset Point

The destination offset relative to destination.

options GraphicsOptions

The graphics options controlling composition.

Type Parameters

TPixel

The pixel format.

CreateScene(Configuration, Rectangle, DrawingCommandBatch, IReadOnlyList<IDisposable>?)

Creates a retained backend scene from a prepared command batch.

public DrawingBackendScene CreateScene(Configuration configuration, Rectangle targetBounds, DrawingCommandBatch commandBatch, IReadOnlyList<IDisposable>? ownedResources = null)

Parameters

configuration Configuration

The active processing configuration.

targetBounds Rectangle

The target bounds used for target-dependent scene data.

commandBatch DrawingCommandBatch

The scene commands in submission order.

ownedResources IReadOnlyList<IDisposable>

The resources that must stay alive for the returned scene.

Returns

DrawingBackendScene

A retained backend scene.

ReadRegion<TPixel>(Configuration, ICanvasFrame<TPixel>, Rectangle, Buffer2DRegion<TPixel>)

Reads source pixels from the target into the destination region.

public void ReadRegion<TPixel>(Configuration configuration, ICanvasFrame<TPixel> target, Rectangle sourceRectangle, Buffer2DRegion<TPixel> destination) where TPixel : unmanaged, IPixel<TPixel>

Parameters

configuration Configuration

The active processing configuration.

target ICanvasFrame<TPixel>

The target frame.

sourceRectangle Rectangle

The source rectangle in target-local coordinates.

destination Buffer2DRegion<TPixel>

The destination region that receives the copied pixels.

Type Parameters

TPixel

The pixel format.

RenderScene<TPixel>(Configuration, ICanvasFrame<TPixel>, DrawingBackendScene)

Renders a retained backend scene into the target.

public void RenderScene<TPixel>(Configuration configuration, ICanvasFrame<TPixel> target, DrawingBackendScene scene) where TPixel : unmanaged, IPixel<TPixel>

Parameters

configuration Configuration

The active processing configuration.

target ICanvasFrame<TPixel>

The target frame.

scene DrawingBackendScene

The retained backend scene to render.

Type Parameters

TPixel

The pixel format.