Skip to content

Interface: CanvasRenderingContext2D ​

Defined in: types/desktop-engine.d.ts:1059

2D rendering context (Canvas2DRenderingContext); largely the same interface as on the web; Path2D isn't supported

Properties ​

canvas ​

ts
readonly canvas: Canvas | null;

Defined in: types/desktop-engine.d.ts:1061

The owning canvas


fillStyle ​

ts
fillStyle: 
  | string
  | CanvasGradient
  | CanvasPattern;

Defined in: types/desktop-engine.d.ts:1077

Fill style. Colors: #rgb, #rgba, #rrggbb, #rrggbbaa, rgb()/rgba() and hsl()/hsla() with commas or spaces (rgb(255 0 0 / 50%)), or a CSS color name; invalid colors are ignored, like on the web. Colors read back as an rgba(r,g,b,a) string


font ​

ts
font: string;

Defined in: types/desktop-engine.d.ts:1098

Font, the CSS font shorthand: [italic] [weight] size[/line-height] family[, family…], such as "600 14px system-ui" or "bold 16px 'Avenir Next', Helvetica"; defaults to 10px Helvetica.

  • weight: normal, bold or 1–1000 (400 normal, 700 bold)
  • size: px or pt; the line height is ignored
  • family: the first installed one of the list. system-ui (also -apple-system, BlinkMacSystemFont, ui-sans-serif) is the system font, San Francisco with PingFang for Chinese; ui-rounded, ui-monospace and ui-serif are its rounded, monospaced and serif (New York) designs; sans-serif, serif and monospace are Helvetica, Times and Courier. Without an installed family the font keeps its family

An invalid value is ignored. Reads back as [italic ][weight ]<size>px <family>, e.g. 600 14px system-ui


globalAlpha ​

ts
globalAlpha: number;

Defined in: types/desktop-engine.d.ts:1081

Global alpha


globalCompositeOperation ​

ts
globalCompositeOperation: GlobalCompositeOperation;

Defined in: types/desktop-engine.d.ts:1063

Compositing mode


imageSmoothingEnabled ​

ts
imageSmoothingEnabled: boolean;

Defined in: types/desktop-engine.d.ts:1100

Whether images are smoothed when scaled


lineCap ​

ts
lineCap: CanvasLineCap;

Defined in: types/desktop-engine.d.ts:1065

Line cap


lineDashOffset ​

ts
lineDashOffset: number;

Defined in: types/desktop-engine.d.ts:1102

Line dash offset


lineJoin ​

ts
lineJoin: CanvasLineJoin;

Defined in: types/desktop-engine.d.ts:1067

Line join


lineWidth ​

ts
lineWidth: number;

Defined in: types/desktop-engine.d.ts:1083

Line width


miterLimit ​

ts
miterLimit: number;

Defined in: types/desktop-engine.d.ts:1085

Miter limit


shadowBlur ​

ts
shadowBlur: number;

Defined in: types/desktop-engine.d.ts:1106

Shadow blur


shadowColor ​

ts
shadowColor: string;

Defined in: types/desktop-engine.d.ts:1104

Shadow color, as for fillStyle (reads back as an rgba() string)


shadowOffsetX ​

ts
shadowOffsetX: number;

Defined in: types/desktop-engine.d.ts:1108

Shadow x offset


shadowOffsetY ​

ts
shadowOffsetY: number;

Defined in: types/desktop-engine.d.ts:1110

Shadow y offset


strokeStyle ​

ts
strokeStyle: 
  | string
  | CanvasGradient
  | CanvasPattern;

Defined in: types/desktop-engine.d.ts:1079

Stroke style, colors as for fillStyle; colors read back as an rgba(r,g,b,a) string


textAlign ​

ts
textAlign: CanvasTextAlign;

Defined in: types/desktop-engine.d.ts:1069

Text alignment


textBaseline ​

ts
textBaseline: CanvasTextBaseline;

Defined in: types/desktop-engine.d.ts:1071

Text baseline

Methods ​

arc() ​

ts
arc(
   x, 
   y, 
   radius, 
   startAngle, 
   endAngle, 
   counterclockwise?
): void;

Defined in: types/desktop-engine.d.ts:1177

Arc

Parameters ​

ParameterType
xnumber
ynumber
radiusnumber
startAnglenumber
endAnglenumber
counterclockwise?boolean

Returns ​

void


arcTo() ​

ts
arcTo(
   x1, 
   y1, 
   x2, 
   y2, 
   radius
): void;

Defined in: types/desktop-engine.d.ts:1175

Arc tangent to two lines

Parameters ​

ParameterType
x1number
y1number
x2number
y2number
radiusnumber

Returns ​

void


beginPath() ​

ts
beginPath(): void;

Defined in: types/desktop-engine.d.ts:1157

Begins a path

Returns ​

void


bezierCurveTo() ​

ts
bezierCurveTo(
   cp1x, 
   cp1y, 
   cp2x, 
   cp2y, 
   x, 
   y
): void;

Defined in: types/desktop-engine.d.ts:1171

Cubic Bézier curve

Parameters ​

ParameterType
cp1xnumber
cp1ynumber
cp2xnumber
cp2ynumber
xnumber
ynumber

Returns ​

void


clearRect() ​

ts
clearRect(
   x, 
   y, 
   w, 
   h
): void;

Defined in: types/desktop-engine.d.ts:1143

Clears a rectangle

Parameters ​

ParameterType
xnumber
ynumber
wnumber
hnumber

Returns ​

void


clip() ​

ts
clip(fillRule?): void;

Defined in: types/desktop-engine.d.ts:1185

Clips to the current path

Parameters ​

ParameterType
fillRule?CanvasFillRule

Returns ​

void


closePath() ​

ts
closePath(): void;

Defined in: types/desktop-engine.d.ts:1159

Closes the path

Returns ​

void


createImageData() ​

ts
createImageData(
   sw, 
   sh, 
   data?
): ImageData;

Defined in: types/desktop-engine.d.ts:1147

Creates pixel data, optionally initialized from a Uint8ClampedArray (non-standard third argument)

Parameters ​

ParameterType
swnumber
shnumber
data?Uint8ClampedArray<ArrayBufferLike>

Returns ​

ImageData


createLinearGradient() ​

ts
createLinearGradient(
   x0, 
   y0, 
   x1, 
   y1
): CanvasGradient;

Defined in: types/desktop-engine.d.ts:1151

Creates a linear gradient

Parameters ​

ParameterType
x0number
y0number
x1number
y1number

Returns ​

CanvasGradient


createPattern() ​

ts
createPattern(image, repetition?): CanvasPattern | undefined;

Defined in: types/desktop-engine.d.ts:1155

Creates a pattern; defaults to repeat

Parameters ​

ParameterType
imageCanvasDrawable
repetition?CanvasPatternRepetition

Returns ​

CanvasPattern | undefined


createRadialGradient() ​

ts
createRadialGradient(
   x0, 
   y0, 
   r0, 
   x1, 
   y1, 
   r1
): CanvasGradient;

Defined in: types/desktop-engine.d.ts:1153

Creates a radial gradient

Parameters ​

ParameterType
x0number
y0number
r0number
x1number
y1number
r1number

Returns ​

CanvasGradient


drawImage() ​

Call Signature ​

ts
drawImage(
   image, 
   dx, 
   dy
): void;

Defined in: types/desktop-engine.d.ts:1133

Draws an image at (dx, dy)

Parameters ​
ParameterType
imageCanvasDrawable
dxnumber
dynumber
Returns ​

void

Call Signature ​

ts
drawImage(
   image, 
   dx, 
   dy, 
   dw, 
   dh
): void;

Defined in: types/desktop-engine.d.ts:1135

Draws an image into the given rectangle

Parameters ​
ParameterType
imageCanvasDrawable
dxnumber
dynumber
dwnumber
dhnumber
Returns ​

void

Call Signature ​

ts
drawImage(
   image, 
   sx, 
   sy, 
   sw, 
   sh, 
   dx, 
   dy, 
   dw, 
   dh
): void;

Defined in: types/desktop-engine.d.ts:1137

Crops the source rectangle and draws it into the destination rectangle

Parameters ​
ParameterType
imageCanvasDrawable
sxnumber
synumber
swnumber
shnumber
dxnumber
dynumber
dwnumber
dhnumber
Returns ​

void


fill() ​

ts
fill(fillRule?): void;

Defined in: types/desktop-engine.d.ts:1161

Fills the path

Parameters ​

ParameterType
fillRule?CanvasFillRule

Returns ​

void


fillRect() ​

ts
fillRect(
   x, 
   y, 
   w, 
   h
): void;

Defined in: types/desktop-engine.d.ts:1139

Fills a rectangle

Parameters ​

ParameterType
xnumber
ynumber
wnumber
hnumber

Returns ​

void


fillText() ​

ts
fillText(
   text, 
   x, 
   y, 
   maxWidth?
): void;

Defined in: types/desktop-engine.d.ts:1181

Fills text

Parameters ​

ParameterType
textstring
xnumber
ynumber
maxWidth?number

Returns ​

void


getImageData() ​

ts
getImageData(
   sx, 
   sy, 
   sw, 
   sh
): ImageData;

Defined in: types/desktop-engine.d.ts:1145

Reads pixels

Parameters ​

ParameterType
sxnumber
synumber
swnumber
shnumber

Returns ​

ImageData


getLineDash() ​

ts
getLineDash(): number[];

Defined in: types/desktop-engine.d.ts:1189

Gets the line dash pattern

Returns ​

number[]


isContextLost() ​

ts
isContextLost(): boolean;

Defined in: types/desktop-engine.d.ts:1113

Whether the context was lost: the GPU stopped its work (see the canvas' contextlost event). It isn't restored

Returns ​

boolean


isPointInPath() ​

ts
isPointInPath(...args): undefined;

Defined in: types/desktop-engine.d.ts:1193

Not implemented; calling it only logs a warning

Parameters ​

ParameterType
...argsunknown[]

Returns ​

undefined


lineTo() ​

ts
lineTo(x, y): void;

Defined in: types/desktop-engine.d.ts:1167

Draws a straight line

Parameters ​

ParameterType
xnumber
ynumber

Returns ​

void


measureText() ​

ts
measureText(text): TextMetrics;

Defined in: types/desktop-engine.d.ts:1179

Measures text

Parameters ​

ParameterType
textstring

Returns ​

TextMetrics


moveTo() ​

ts
moveTo(x, y): void;

Defined in: types/desktop-engine.d.ts:1165

Moves the pen

Parameters ​

ParameterType
xnumber
ynumber

Returns ​

void


putImageData() ​

ts
putImageData(
   imageData, 
   dx, 
   dy
): void;

Defined in: types/desktop-engine.d.ts:1149

Writes pixels

Parameters ​

ParameterType
imageDataImageData
dxnumber
dynumber

Returns ​

void


quadraticCurveTo() ​

ts
quadraticCurveTo(
   cpx, 
   cpy, 
   x, 
   y
): void;

Defined in: types/desktop-engine.d.ts:1173

Quadratic Bézier curve

Parameters ​

ParameterType
cpxnumber
cpynumber
xnumber
ynumber

Returns ​

void


rect() ​

ts
rect(
   x, 
   y, 
   w, 
   h
): void;

Defined in: types/desktop-engine.d.ts:1169

Adds a rectangle to the path

Parameters ​

ParameterType
xnumber
ynumber
wnumber
hnumber

Returns ​

void


resetClip() ​

ts
resetClip(): void;

Defined in: types/desktop-engine.d.ts:1187

Clears the clip (non-standard)

Returns ​

void


resetCurrentState() ​

ts
resetCurrentState(): void;

Defined in: types/desktop-engine.d.ts:1119

Resets the current state (non-standard)

Returns ​

void


resetTransform() ​

ts
resetTransform(): void;

Defined in: types/desktop-engine.d.ts:1131

Resets the transform matrix to the identity

Returns ​

void


restore() ​

ts
restore(): void;

Defined in: types/desktop-engine.d.ts:1117

Restores the state

Returns ​

void


rotate() ​

ts
rotate(angle): void;

Defined in: types/desktop-engine.d.ts:1121

Rotates (radians)

Parameters ​

ParameterType
anglenumber

Returns ​

void


save() ​

ts
save(): void;

Defined in: types/desktop-engine.d.ts:1115

Saves the state

Returns ​

void


scale() ​

ts
scale(x, y): void;

Defined in: types/desktop-engine.d.ts:1125

Scales

Parameters ​

ParameterType
xnumber
ynumber

Returns ​

void


setLineDash() ​

ts
setLineDash(segments): void;

Defined in: types/desktop-engine.d.ts:1191

Sets the line dash pattern

Parameters ​

ParameterType
segments(string | number)[]

Returns ​

void


setTransform() ​

ts
setTransform(
   a, 
   b, 
   c, 
   d, 
   e, 
   f
): void;

Defined in: types/desktop-engine.d.ts:1129

Sets the transform matrix

Parameters ​

ParameterType
anumber
bnumber
cnumber
dnumber
enumber
fnumber

Returns ​

void


stroke() ​

ts
stroke(): void;

Defined in: types/desktop-engine.d.ts:1163

Strokes the path

Returns ​

void


strokeRect() ​

ts
strokeRect(
   x, 
   y, 
   w, 
   h
): void;

Defined in: types/desktop-engine.d.ts:1141

Strokes a rectangle

Parameters ​

ParameterType
xnumber
ynumber
wnumber
hnumber

Returns ​

void


strokeText() ​

ts
strokeText(
   text, 
   x, 
   y, 
   maxWidth?
): void;

Defined in: types/desktop-engine.d.ts:1183

Strokes text

Parameters ​

ParameterType
textstring
xnumber
ynumber
maxWidth?number

Returns ​

void


transform() ​

ts
transform(
   a, 
   b, 
   c, 
   d, 
   e, 
   f
): void;

Defined in: types/desktop-engine.d.ts:1127

Multiplies the current transform matrix

Parameters ​

ParameterType
anumber
bnumber
cnumber
dnumber
enumber
fnumber

Returns ​

void


translate() ​

ts
translate(x, y): void;

Defined in: types/desktop-engine.d.ts:1123

Translates

Parameters ​

ParameterType
xnumber
ynumber

Returns ​

void

The SDK is released under the Apache License 2.0