<!DOCTYPE html>
<title>Canvas test: 2d.pattern.basic.image</title>
<script src="../tests.js"></script>
<link rel="stylesheet" href="../tests.css">
<link rel="prev" href="2d.pattern.basic.type.html" title="2d.pattern.basic.type">
<link rel="next" href="2d.pattern.basic.canvas.html" title="2d.pattern.basic.canvas">
<body class="show_output">
<p>
 <a href="2d.pattern.basic.type.html" accesskey="p" title="[p] 2d.pattern.basic.type">&lt;</a>
 <a href="index.html">[index]</a>
 <a href="2d.pattern.basic.canvas.html" accesskey="n" title="[n] 2d.pattern.basic.canvas">&gt;</a>
<h1><a href="index.2d.html">2d</a>.<a href="index.2d.pattern.html">pattern</a>.<a href="index.2d.pattern.basic.html">basic</a>.image</h1>
<p class="desc"></p>
<div class="refs">References:
<ul>
<li><a href="spec.html#testrefs.2d.pattern.painting">2d.pattern.painting</a>

</ul>
</div>

<p class="output">Actual output:</p>
<canvas id="c" class="output" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
<p class="output expectedtext">Expected output:<p><img src="green-100x50.png" class="output expected" id="expected" alt="">
<ul id="d"></ul>
<script>
_addTest(function(canvas, ctx) {

ctx.fillStyle = '#f00';
ctx.fillRect(0, 0, 100, 50);
var img = document.getElementById('green.png');
var pattern = ctx.createPattern(img, 'no-repeat');
ctx.fillStyle = pattern;
ctx.fillRect(0, 0, 100, 50);

_assertPixel(canvas, 1,1, 0,255,0,255, "1,1", "0,255,0,255");
_assertPixel(canvas, 98,1, 0,255,0,255, "98,1", "0,255,0,255");
_assertPixel(canvas, 1,48, 0,255,0,255, "1,48", "0,255,0,255");
_assertPixel(canvas, 98,48, 0,255,0,255, "98,48", "0,255,0,255");


});
</script>
<img src="../images/green.png" id="green.png" class="resource">

