HTML canvas createPattern() 方法
<p>图片应用:</p> <img src="/examples/img_lamp.jpg" id="lamp"> <p>画布:</p> <button onclick="draw('repeat')">重复</button> <button onclick="draw('repeat-x')">重复-x</button> <button onclick="draw('repeat-y')">重复-y</button> <button onclick="draw('no-repeat')">不重复</button> <canvas id="myCanvas" width="300" height="150" style="border:1px solid #d3d3d3;"> 您的浏览器不支持 HTML5 canvas 标签。 </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, 220, 128); ctx.fillStyle = pat; ctx.fill(); } </script>
浏览器支持
Internet Explorer 9、Firefox、Opera、Chrome 和 Safari 支持 createPattern() 方法。
注意:Internet Explorer 8 及之前的版本不支持 <canvas> 元素。
定义和用法
createPattern() 方法在指定的方向内重复指定的元素。
元素可以是图片、视频,或者其他 <canvas> 元素。
被重复的元素可用于绘制/填充矩形、圆形或线条等等。
JavaScript 语法: | context.createPattern(image,"repeat|repeat-x|repeat-y|no-repeat"); |
---|
参数值
参数 | 描述 | |
---|---|---|
image | 规定要使用的模式的图片、画布或视频元素。 | |
repeat | 默认。该模式在水平和垂直方向重复。 | |
repeat-x | 该模式只在水平方向重复。 | |
repeat-y | 该模式只在垂直方向重复。 | |
no-repeat | 该模式只显示一次(不重复)。 |
HTML canvas 参考手册