Подтвердить что ты не робот

Получить холст из контекста

Есть ли способ получить холст, для которого используется контекст?

Почему я спрашиваю, потому что я создаю прототип функции для CanvasRenderingContext2D, в которой мне нужна ширина/высота элемента canvas.

например:.

var cv = document.getElementById('canvas');
var ctx = cv.getContext('2d');
// Using only 'ctx', how to get 'cv'?
4b9b3361

Ответ 1

ctx.canvas должен возвращать холст DOM node, из которого вы можете получить высоту и ширину.

Я попробовал это с https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API/Tutorial/Basic_usage

Firefox смог вернуть ctx.canvas, а также ctx.canvas.width и ctx.canvas.height. Также подтверждено в Chrome.

Ответ 2

Попробуйте это, чтобы убедиться сами:

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

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