{"ScriptPreparationCode":"const canvas = document.getElementById(\u0027canvas\u0027)\r\ncanvas.style.imageRendering = \u0027pixelated\u0027\r\ncanvas.style.backgroundColor = \u0027#000\u0027\r\ncanvas.style.outline = \u0027none\u0027\r\ncanvas.style.cursor = \u0027none\u0027\r\ncanvas.style.transform = \u0060scale(2)\u0060\r\ndocument.body.replaceChildren(canvas)\r\n\r\nconst ctx = canvas.getContext(\u00272d\u0027)\r\n\r\nfunction drawimgdata(img) {\r\n ctx.drawImage(img, 0, 0)\r\n img.close()\r\n}\r\n\r\nfunction drawpixels(pixels) {\r\n const imgdata = new ImageData(pixels, 320, 180)\r\n ctx.putImageData(imgdata, 0, 0)\r\n}\r\n\r\nfunction drawrandom() {\r\n // for (let n = 0; n \u003C 300; n\u002B\u002B)\r\n for (let y = 0; y \u003C 180; y\u002B\u002B) {\r\n for (let x = 0; x \u003C 320; x\u002B\u002B) {\r\n let i = y * 320 * 4 \u002B x * 4\r\n pixels[i \u002B 0] = Math.random() * 255\r\n pixels[i \u002B 1] = Math.random() * 255\r\n pixels[i \u002B 2] = Math.random() * 255\r\n pixels[i \u002B 3] = 255\r\n }\r\n }\r\n}\r\n\r\nconst c = new OffscreenCanvas(320, 180)\r\nconst ctx2 = c.getContext(\u00272d\u0027)\r\n\r\nconst pixels = new Uint8ClampedArray(320 * 180 * 4)\r\nconst imgdata = new ImageData(pixels, 320, 180)\r\n","TestCases":[{"Name":"imgdata","Code":"\r\ndrawrandom()\r\nctx2.putImageData(imgdata, 0, 0)\r\ndrawimgdata(c.transferToImageBitmap())\r\n","IsDeferred":false},{"Name":"pixels","Code":"\r\ndrawrandom()\r\ndrawpixels(pixels)\r\n","IsDeferred":false}]}