tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

imageBitmapRendering-transferFromImageBitmap-webgl.html (1136B)


      1 <!DOCTYPE html>
      2 <link rel="match" href="imageBitmapRendering-transferFromImageBitmap-webgl-expected.html" />
      3 
      4 <body>
      5  <p>
      6    Test creating an ImageBitmap from the transferToImageBitmap of a webgl OffscreenCanvas, and then
      7    transferred to an ImageBitmapRenderingContext.
      8  </p>
      9  <canvas id="canvas" width="300" height="300"></canvas>
     10 </body>
     11 <script>
     12 
     13  function drawSquares(ctx) {
     14    ctx.enable(ctx.SCISSOR_TEST);
     15    ctx.scissor(0, 150, 150, 150);
     16    ctx.clearColor(1, 0, 0, 1);
     17    ctx.clear(ctx.COLOR_BUFFER_BIT);
     18    ctx.scissor(150, 150, 300, 150);
     19    ctx.clearColor(0, 1, 0, 1);
     20    ctx.clear(ctx.COLOR_BUFFER_BIT);
     21    ctx.scissor(0, 0, 150, 150);
     22    ctx.clearColor(0, 0, 1, 1);
     23    ctx.clear(ctx.COLOR_BUFFER_BIT);
     24  }
     25 
     26  async function runTest() {
     27    const offscreen = new OffscreenCanvas(300, 300);
     28    const ctxOffscreen = offscreen.getContext('webgl');
     29    drawSquares(ctxOffscreen);
     30    const image = offscreen.transferToImageBitmap();
     31    const canvas = document.getElementById('canvas');
     32    const ctx = canvas.getContext('bitmaprenderer');
     33    ctx.transferFromImageBitmap(image);
     34  }
     35 
     36  runTest();
     37 
     38 </script>