2011-03-15 7 views
35

컨텍스트를 사용하는 캔버스를 구할 수있는 방법이 있습니까?컨텍스트에서 캔버스 가져 오기

내가 묻는 이유는 캔버스 요소의 너비/높이가 필요한 CanvasRenderingContext2D의 프로토 타입 함수를 만들기 때문입니다.

예컨대 :

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

답변

52

ctx.canvas은 높이와 너비를 얻을 수있는 캔버스 DOM 노드를 반환해야합니다.

은 나뿐만 아니라 ctx.canvas.width 및 ctx.canvas.height로, https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API/Tutorial/Basic_usage

파이어 폭스 ctx.canvas를 반환 할 수 있었다 그것을 시도했다. Chrome에서도 확인되었습니다.

+12

[일부 사양] (http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html#dom-context-2d-canvas) . – Phrogz

+0

링크 부패. 이것은 링크를 제공하지 말고 요약하는 이유입니다. – v010dya

+3

@Volodya -'ctx.canvas는 캔버스 DOM 노드를 리턴해야합니다''is is the summary. –

0

직접 확인이 시도 :

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

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

Here's the above in a jsFiddle합니다.

관련 문제