2d.reset.after-rasterization.w.html (1436B)
1 <!DOCTYPE html> 2 <!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. --> 3 <meta charset="UTF-8"> 4 <html class="reftest-wait"> 5 <link rel="match" href="2d.reset.after-rasterization-expected.html"> 6 <title>Canvas test: 2d.reset.after-rasterization</title> 7 <h1>2d.reset.after-rasterization</h1> 8 <p class="desc">Reset after rasterizing a frame discards frame content.</p> 9 <canvas id="canvas" width="100" height="50"> 10 <p class="fallback">FAIL (fallback content)</p> 11 </canvas> 12 <script id='myWorker' type='text/worker'> 13 self.onmessage = function(e) { 14 const canvas = new OffscreenCanvas(100, 50); 15 const ctx = canvas.getContext('2d'); 16 17 ctx.fillStyle = 'rgba(255, 0, 0, 1)'; 18 ctx.fillRect(0, 0, 100, 50); 19 20 ctx.getImageData(0, 0, 1, 1); // Force previous draw calls to be rendered. 21 ctx.reset(); 22 23 ctx.fillStyle = 'rgba(0, 255, 0, 0.5)'; 24 ctx.fillRect(0, 0, 100, 25); 25 26 const bitmap = canvas.transferToImageBitmap(); 27 self.postMessage(bitmap, bitmap); 28 }; 29 </script> 30 <script> 31 const blob = new Blob([document.getElementById('myWorker').textContent]); 32 const worker = new Worker(URL.createObjectURL(blob)); 33 worker.addEventListener('message', msg => { 34 const outputCtx = document.getElementById("canvas").getContext('2d'); 35 outputCtx.drawImage(msg.data, 0, 0); 36 document.documentElement.classList.remove("reftest-wait"); 37 }); 38 worker.postMessage(null); 39 </script> 40 </html>