Canvas2DBackend
Generated TypeScript API reference for the public mcut SDK.
mcut SDK / compositor/src / Canvas2DBackend
Class: Canvas2DBackend
Defined in: packages/compositor/src/backend.ts:131
The canvas2d backend: draws straight into the target context.
Implements
Constructors
Constructor
new Canvas2DBackend(
ctx,
width,
height): Canvas2DBackend;Defined in: packages/compositor/src/backend.ts:134
Parameters
ctx
width
number
height
number
Returns
Canvas2DBackend
Properties
height
readonly height: number;Defined in: packages/compositor/src/backend.ts:137
Implementation of
kind
readonly kind: "canvas2d" = 'canvas2d';Defined in: packages/compositor/src/backend.ts:132
Implementation of
width
readonly width: number;Defined in: packages/compositor/src/backend.ts:136
Implementation of
Methods
acquireRaster()
acquireRaster(): Canvas2D;Defined in: packages/compositor/src/backend.ts:150
The frame-space canvas2d context for raster content. Acquiring it marks the raster surface dirty so the backend composites it in z-order; renderers that only need it for text measurement still go through here (text rasterizes anyway).
Returns
Implementation of
beginFrame()
beginFrame(backgroundColor): void;Defined in: packages/compositor/src/backend.ts:140
Parameters
backgroundColor
string
Returns
void
Implementation of
drawImageQuad()
drawImageQuad(quad, chrome): void;Defined in: packages/compositor/src/backend.ts:154
Composite a media quad with chrome — the GPU fast path. Backends without
one (or layers a backend cannot run, e.g. raw css filters on WebGPU)
draw it through the raster context instead.
Parameters
quad
chrome
Returns
void
Implementation of
endFrame()
endFrame(): void;Defined in: packages/compositor/src/backend.ts:146
Returns
void
Implementation of
popRasterScope()
popRasterScope(): void;Defined in: packages/compositor/src/backend.ts:159
Returns
void
Implementation of
pushRasterScope()
pushRasterScope(): void;Defined in: packages/compositor/src/backend.ts:158
While a raster scope is open, every draw — including image quads — lands on the raster context, so canvas2d state (clips, alpha, transforms) set by the caller applies. Transition mixes and motion-blur accumulation need this. Scopes nest.
Returns
void