Не работает цикл рисования canvas
Мне необходимо заполнить изображениями canvas. Однако он пуст.
Код:
document.body.innerHTML += "<canvas id='canvas' width=100 height=40></canvas>";
var cnv = document.getElementById("canvas");
var ctx = cnv.getContext("2d");
var pic = [
["test.png","test1.png","test2.png","test.png","test3.png"],
["test6.png","test7.png","test4.png","test.png","test1.png"],
];
var size = 20;
for(var i = 0; i < cnv.width / size; i++){
for(var j = 0; j < cnv.height / size; j++){
var img = new Image();
img.src = pic[i][j];
ctx.drawImage(img, i * size, j * size, size, size);
}
}
Ответы (1 шт):
Автор решения: Проста Miha
→ Ссылка
Надеюсь помог, удачки
document.body.innerHTML += "<canvas id='canvas' width=300 height=200></canvas>";
var cnv = document.getElementById("canvas");
var ctx = cnv.getContext("2d");
var pic = "http://31.media.tumblr.com/tumblr_mdmeux7p191r4ugi5o1_250.gif",
size = 20;
var img = new Image();
img.src = pic;
img.onload = drawImageActualSize;
function drawImageActualSize() {
for (var i = 0; i < (cnv.width / size); i++) {
for (var j = 0; j < (cnv.height / size); j++) {
ctx.drawImage(img, i * size, j * size, size, size);
}
}
}