| <!doctype html> |
| <meta charset=utf-8> |
| <title>Load a 100x100 image to a SVG image and draw it to a 100x100 canvas.</title> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <script src="/html/canvas/resources/canvas-tests.js"></script> |
| <div id="log"></div> |
| <canvas id="dest" height="100" width="100"></canvas> |
| <script> |
| async_test(t => { |
| var sourceImg = document.createElementNS('http://www.w3.org/2000/svg', 'image'); |
| sourceImg.setAttributeNS('http://www.w3.org/1999/xlink', 'href', '/html/canvas/resources/2x2.png'); |
| sourceImg.width = 100; |
| sourceImg.height = 100; |
| |
| window.onload = t.step_func_done(() => { |
| var destCanvas = document.getElementById('dest'); |
| var destCtx = destCanvas.getContext('2d'); |
| destCtx.fillStyle = "#FF0000"; |
| destCtx.fillRect(0, 0, destCanvas.width, destCanvas.height); |
| destCtx.imageSmoothingEnabled = false; |
| // 2 arguments, the dest origin is 0,0 |
| // The source canvas will copied to the 0,0 position of the destination canvas |
| destCtx.drawImage(sourceImg, 0, 0); |
| _assertPixel(destCanvas, 0, 0, 253, 140, 245, 255); |
| _assertPixel(destCanvas, 0, 99, 253, 140, 245, 255); |
| _assertPixel(destCanvas, 99, 0, 253, 140, 245, 255); |
| _assertPixel(destCanvas, 99, 99, 253, 140, 245, 255); |
| }); |
| }); |
| </script> |