| <!DOCTYPE html> |
| <!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. --> |
| <meta charset="UTF-8"> |
| <title>OffscreenCanvas test: 2d.composite.uncovered.pattern.source-in</title> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <script src="/html/canvas/resources/canvas-tests.js"></script> |
| |
| <h1>2d.composite.uncovered.pattern.source-in</h1> |
| <p class="desc">Pattern fill() draws pixels not covered by the source object as (0,0,0,0), and does not leave the pixels unchanged.</p> |
| |
| |
| <script> |
| promise_test(async t => { |
| |
| var canvas = new OffscreenCanvas(100, 50); |
| var ctx = canvas.getContext('2d'); |
| |
| ctx.fillStyle = 'rgba(0, 255, 255, 0.5)'; |
| ctx.fillRect(0, 0, 100, 50); |
| ctx.globalCompositeOperation = 'source-in'; |
| const response = await fetch('/images/yellow.png') |
| const blob = await response.blob(); |
| const bitmap = await createImageBitmap(blob); |
| ctx.fillStyle = ctx.createPattern(bitmap, 'no-repeat'); |
| ctx.fillRect(0, 50, 100, 50); |
| _assertPixelApprox(canvas, 50,25, 0,0,0,0, 5); |
| |
| }, "Pattern fill() draws pixels not covered by the source object as (0,0,0,0), and does not leave the pixels unchanged."); |
| </script> |