У меня возникла проблема с загрузкой большого массива изображений в элемент холста html. В основном то, что я пытаюсь сделать, это получить небольшую часть каждого изображения в массиве (1px w, 256px h) и составить новое изображение на холсте со всеми этими меньшими изображениями.Рисование большого массива изображений в html5 холст
Когда я запускаю этот код, я получаю все изображения на экране. Однако, когда я запускаю его с помощью цикла for, изображение остается белым.
function addToCanvas()
{
drawingCanvas = document.getElementById('myDrawingCanvas');
context = drawingCanvas.getContext('2d');
//for(imgNo=0;imgNo<256;imgNo++){
var imgObj = new Image();
imgObj.onload = function() {
context.drawImage(imgObj, 0, 0, 1, 256, 0+(imgNo), 0, 1, 256);
}
imgObj.src = imgs[imgNo];
imgNo++;
//}
}
Спасибо! Это (почти) работает. Я читаю о закрытии и для циклов в JavaScript сейчас, надеюсь, что я найду решение. Но проблема, с которой я сталкиваюсь сейчас, заключается в том, что код не печатает следующую картинку на экране. Он копирует данные с первых 1x256 px. (см. http://imageupload.org/?d=4DA6AD391 и http://imageupload.org/?d=4DA6AD3A1) – user706723
К сожалению, это работает, неважно, мой пост. большое спасибо! – user706723