var canvas = document.getElementById("canvas");
var context = canvas.getContext('2d');
var img= new Image();
img.src='lamp.gif';
var pattern = context.createPattern(img,'repeat');
context.clearRect(0,0,canvas.width,canvas.height);
context.fillStyle = pattern;
context.fillRect(0,0,canvas.width,canvas.height);
context.fill();
结果是黑块,
createPattern直接写图片路径为啥不行
1
wovfeng 2015-02-25 08:20:48 +08:00 via iPhone
这里需要图片加载完的吧 把你下面的代码写到 img.onload 里面试试?
|
2
strom001 OP @wovfeng 不管用呢。昨天我在html里加了个<img>成功显示了 ,今天再试又不行了。
现在加了<img>,然后用complete?alert(“不行”):(img.onload的部分); 这样做还是不行,弹出不行。如果不加<img>,连弹都不弹 safari |
3
strom001 OP complete删了,这是现在的
var canvas = document.getElementById("canvas"); var context = canvas.getContext('2d'); var pattern = context.createPattern(img, 'repeat'); var img= new Image(); img.src='lamp.gif'; img.conload=function() { context.clearRect(0, 0, canvas.width, canvas.height); context.fillStyle = pattern; context.fillRect(0, 0, canvas.width, canvas.height); context.fill(); }; |