Pregunta

¿Hay alguna forma de obtener el lienzo para el que se usa un contexto?

Por qué pregunto es porque estoy creando una función prototipo para CanvasRenderingContext2D en el que necesito el ancho/altura del elemento de lienzo.

P.ej:

var cv = document.getElementById('canvas');
var ctx = cv.getContext('2d');
// Using only 'ctx', how to get 'cv'?
¿Fue útil?

Solución

ctx.canvas Debería devolver el nodo DOM de lienzo, desde el cual puede obtener altura y ancho.

Lo probé con https://developer.mozilla.org/en-us/docs/web/api/canvas_api/tutorial/basic_usage

Firefox pudo devolver ctx.canvas, así como ctx.canvas.width y ctx.canvas.height. También confirmado en Chrome.

Otros consejos

Intenta esto para verificar por ti mismo:

var canvas = document.createElement('canvas');
var context = canvas.getContext('2d');
var isSameObject = canvas === context.canvas;

alert(isSameObject
    ? 'context.canvas gives expected result'
    : 'unexpected result');

Aquí está lo anterior en un jsfiddle.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top