HTML canvas fillStyle Property with image pattern

Introduction

Use an image to fill the drawing:

View in separate window

<!DOCTYPE html>
<html>
<body>

<p>Image to use:</p>
<img src="image4.png" id="lamp" width="32" height="32">
<p>Canvas:</p>

<button onclick="draw('repeat')">Repeat</button>
<button onclick="draw('repeat-x')">Repeat-x</button>
<button onclick="draw('repeat-y')">Repeat-y</button>
<button onclick="draw('no-repeat')">No-repeat</button>

<canvas id="myCanvas" width="300" height="180" style="border:1px solid #d3d3d3;">
Your browser does not support the HTML5 canvas tag.</canvas>

<script>
function draw(direction) {
  var c = document.getElementById("myCanvas");
  var ctx = c.getContext("2d");
  ctx.clearRect(0, 0, c.width, c.height);
  var img = document.getElementById("lamp")
  var pat = ctx.createPattern(img, direction);
  ctx.rect(0, 0, 150, 100);//from  ww w  . j  a  va  2s  .  c  o  m
  ctx.fillStyle = pat;
  ctx.fill();
}
</script>

</body>
</html>



PreviousNext

Related