4 <meta charset=
"utf-8"/>
7 const spriteSheet
= 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAALBAMAAACEzBAKAAAAFVBMVEUAAADMr3z///8PDw9AQEC/v7/w8PCtfkxVAAAAA3RSTlMAAAD6dsTeAAAAQ0lEQVQIWy3IQRGAIAAEwJ1zCEAFLEAUK5iPClaggj9rMH7Y57prrR0pOJB1kU58OIldsSt2BQVHaIN3Rnt4p2SwJj863A7yxMyt/AAAAABJRU5ErkJggg=='
9 const loadImage
= (src
) => {
10 return new Promise((resolve
, reject
) => {
12 img
.onload
= () => resolve(img
)
13 img
.onerror
= () => reject(false)
20 function drawTestImage(canvasID
, alphaValue
) {
21 const ctx
= document
.getElementById(canvasID
).getContext("2d", { alpha
: alphaValue
})
23 ctx
.fillStyle
= "#808080" // For contrast
24 ctx
.fillRect(0, 0, 30, 30)
26 createImageBitmap(cursorImage
, 0, 0, 8, 11, { premultiplyAlpha
: "none" }).then(image
=> {
27 ctx
.drawImage(image
, 10, 10)
31 window
.addEventListener("DOMContentLoaded", () => {
32 loadImage(spriteSheet
).then(img
=> {
34 drawTestImage("c1", true)
41 <canvas id=
"c1" width=
"30" height=
"30"></canvas>