| <!DOCTYPE html> |
| <!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. --> |
| <title>OffscreenCanvas test: 2d.drawImage.9arg.sourcesize</title> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <script src="/html/canvas/resources/canvas-tests.js"></script> |
| |
| <h1>2d.drawImage.9arg.sourcesize</h1> |
| <p class="desc"></p> |
| |
| |
| <script> |
| promise_test(async t => { |
| |
| var canvas = new OffscreenCanvas(100, 50); |
| var ctx = canvas.getContext('2d'); |
| |
| ctx.fillStyle = '#f00'; |
| ctx.fillRect(0, 0, 100, 50); |
| const response = await fetch('/images/rgrg-256x256.png'); |
| const blob = await response.blob(); |
| const bitmap = await createImageBitmap(blob); |
| ctx.drawImage(bitmap, 0, 0, 256, 256, 0, 0, 100, 50); |
| ctx.fillStyle = '#0f0'; |
| ctx.fillRect(0, 0, 51, 26); |
| ctx.fillRect(49, 24, 51, 26); |
| _assertPixelApprox(canvas, 0,0, 0,255,0,255, 2); |
| _assertPixelApprox(canvas, 99,0, 0,255,0,255, 2); |
| _assertPixelApprox(canvas, 0,49, 0,255,0,255, 2); |
| _assertPixelApprox(canvas, 99,49, 0,255,0,255, 2); |
| _assertPixelApprox(canvas, 20,20, 0,255,0,255, 2); |
| _assertPixelApprox(canvas, 80,20, 0,255,0,255, 2); |
| _assertPixelApprox(canvas, 20,30, 0,255,0,255, 2); |
| _assertPixelApprox(canvas, 80,30, 0,255,0,255, 2); |
| |
| }, ""); |
| </script> |