2012-04-01 4 views
1

У меня возникла странная проблема с элементом DrawImage -Methode элемента Canvas. В следующем коде я создаю холст и прикрепляю его к div «rightcanvas».Canvas - DrawImage Method

var rightcanvas = document.getElementById('rightcanvas'); 
rcanvas = document.createElement('canvas'); 
rcanvas.setAttribute('width', canvasLength); 
rcanvas.setAttribute('height', canvasHeight); 
rcanvas.setAttribute('id', 'rcanvas'); 
rightcanvas.appendChild(rcanvas); 

И теперь я пытаюсь нарисовать кодированное изображение Base64.

var rcontext = rcanvas.getContext('2d'); 
var image = new Image(); 
image.src = 'data:image/png;base64,iVBOR....'; 
rcontext.drawImage(image,0,0); 

Холст будет создан и прикреплен. Но изображение не будет отображаться. Кто-нибудь знает, в чем проблема? = (

ответ

2

Вы должны ждать изображения для загрузки перед нанесением его на холст.

var image = new Image(); 
image.onload = function() { 
    rcontext.drawImage(image, 0, 0); 
} 
image.src = 'data:image/png;base64,iVBOR....'; 
+0

Ааа .. поблагодарить у очень и очень много =) – Chronnie

+0

Btw было бы лучше, чтобы избежать имен переменной ' образ'. – grc

Смежные вопросы