javascript dibujar una imagen en lienzo
Intento crear un código javascript para dibujar una imagen en un lienzo, pero no sé dónde está mal. Ese es mi código:
<body>
<canvas id = "my_canvas"></canvas>
<script>
function setup(){
var canvas = document.getElementById('my_canvas');
var ctx = canvas.getContext('2d');
canvas.width = 800;
canvas.height = 600;
var image = new Image();
image.src = 'a.png';
ctx.drawImage(image,5,5);
};
window.onload = setup;
setup();
</script>
La pregunta es, si pongo una línea de código.setup();
Al final, entonces la imagen se dibuja correctamente, no sé por qué.
Gracias.