2010-07-20 13 views
6

que init mi lienzo como esto:cómo cambiar las dimensiones del canvas de HTML5 sin ella escalar contenido

<canvas id="canvasDiv" width="20" height="20"></canvas> 

y en algún lugar en el código Quiero cambiar su tamaño a su tamaño definitivo:

var canvas = document.getElementById("canvasDiv"); 
canvas.style.width = 200; 
canvas.style.height = 100; 

Sin embargo, cualquier píxel I trazado en mi lienzo se escala (por lo que ya no es 1 píxel).

¿Cómo se cambian las dimensiones de un lienzo sin este efecto de escala? (Así programación)

Respuesta

15

Creo que sólo tiene que configurar también sus propiedades anchura & altura:

canvas.width = 200; 
canvas.height = 100; 
+0

vaya ... Yo realmente analizó algunas referencias DOM en línea para ver los atributos de los elementos DOM y anchura y altura no estaban allí. Otros ejemplos usaron este truco de estilo. Es por eso que utilicé esa sintaxis – Toad

+0

¿Existe realmente una guía de referencia dom/css adecuada/oficial? Demandé este pero aparentemente no está completo: http://www.javascriptkit.com/domref/elementproperties.shtml – Toad

+0

La especificación oficial para la etiqueta del lienzo está en http://www.whatwg.org/specs/web- aplicaciones/current-work/multipage/the-canvas-element.html – sunetos