HTMLCanvasElement.getContext()
Baseline
Widely available
*
This feature is well established and works across many devices and browser versions. Itâs been available across browsers since 2015ë 7ì.
* Some parts of this feature may have varying levels of support.
HTMLCanvasElement.getContext() ë©ìëë ìºë²ì¤ì ëë¡ì 컨í
ì¤í¸ë¥¼ ë°íí©ëë¤. 컨í
ì¤í¸ ìë³ìê° ì§ìëì§ ìì ê²½ì° nullì ë°íí©ëë¤.
ëì¼í ìºë²ì¤ ì리먼í¸ìì ëì¤ì ì´ ë©ìë를 í¸ì¶íë©´ ëì¼í contextType ì¸ìì í¨ê» ë©ìëê° ë§ì§ë§ì¼ë¡ í¸ì¶ëìì ë ë°íë ê²ê³¼ ê°ì´ ëì¼í ëë¡ì 컨í
ì¤í¸ ì¸ì¤í´ì¤ë¥¼ ë°íí©ëë¤. ë¤ë¥¸ ëë¡ì 컨í
ì¤í¸ ê°ì²´ë¥¼ ì»ì¼ë ¤ë©´ ë¤ë¥¸ contextTypeì ì ë¬íê±°ë ë¤ë¥¸ ìºë²ì¤ ì리먼í¸ìì ë©ìë를 í¸ì¶í´ì¼ í©ëë¤.
구문
var ctx = canvas.getContext(contextType);
var ctx = canvas.getContext(contextType, contextAttributes);
íë¼ë¯¸í°
contextType-
ìºë²ì¤ì ì°ê´ë ëë¡ì 컨í ì¤í¸ë¥¼ ì ìíë 컨í ì¤í¸ ìë³ì를 ê°ë
DOMStringì ëë¤. ê°ë¥í ê°ì ë¤ìê³¼ ê°ìµëë¤.*"2d", 2ì°¨ì ë ëë§ ì»¨í ì¤í¸ë¥¼ ëíë´ëCanvasRenderingContext2Dê°ì²´ë¥¼ ìì±íê² í©ëë¤."webgl"(ëë"experimental-webgl"), 3ì°¨ì ë ëë§ ì»¨í ì¤í¸ë¥¼ ëíë´ëWebGLRenderingContextê°ì²´ë¥¼ ìì±í©ëë¤. ì´ ì»¨í ì¤í¸ë WebGL ë²ì 1 (OpenGL ES 2.0)ì 구ííë ë¸ë¼ì°ì ììë§ ì¬ì©ê°ë¥í©ëë¤."webgl2", 3ì°¨ì ë ëë§ ì»¨í ì¤í¸ë¥¼ ëíë´ëWebGL2RenderingContextê°ì²´ë¥¼ ìì±í©ëë¤. ì´ ì»¨í ì¤í¸ë WebGL ë²ì 2 (OpenGL ES 3.0)를 구ííë ë¸ë¼ì°ì ììë§ ì¬ì©ê°ë¥í©ëë¤."bitmaprenderer", ìºë²ì¤ì 컨í ì¸ ë¥¼ 주ì´ì§ImageBitmapì¼ë¡ ëì²´í기ìí 기ë¥ë§ì ì ê³µíëImageBitmapRenderingContext를 ìì±í©ëë¤.ì°¸ê³ : ìë³ì
"experimental-webgl"ì WebGLì ìë¡ì´ 구íìì ì¬ì©ë©ëë¤. ì´ë¬í 구íì í ì¤í¸ ì¤ìí¸ ì í©ì±ì ìì§ ë§ì¡±íì§ ëª»íë©°, íë«í¼ ìì ê·¸ëí½ ëë¼ì´ë²ë ìì§ ë¶ìì í©ëë¤. Khronos Groupì í¹ì ì í©ì± ê·ì¹ì ë°ë¼ WebGL 구íì ì¸ì¦í©ëë¤.
contextAttributes-
ë ëë§ ì»¨í ì¤í¸ë¥¼ ìì±í ë ëª ê°ì§ 컨í ì¤í¸ ìì±ì ì¬ì©í ì ììµëë¤. ì를 ë¤ë©´:
js const gl = canvas.getContext('webgl', { antialias: false, depth: false });2d 컨í ì¤í¸ ìì±:-
alpha: ìºë²ì¤ê° ìí ì±ëì í¬í¨íëì§ë¥¼ ëíë´ë ë¶ë¦¬ì¸ì ëë¤.falseë¡ ì¤ì í ê²½ì°, ë¸ë¼ì°ì ë ì´ì ë°°ê²½ì´ íì í¬ëª íë¤ë ê²ì ì기ë문ì í¬ëª í 컨í ì¸ ë ì´ë¯¸ì§ë¥¼ 그리ë ìë를 ëì¼ì ììµëë¤. -
(Gecko ì ì©)
willReadFrequently: ë§ì ë¤ì ì½ê¸° ìì ì´ ê³íëì´ìëì§ ì¬ë¶ë¥¼ ëíë´ë ë¶ë¦¬ì¸ì ëë¤. ì´ë ìíí¸ì¨ì´(íëì¨ì´ ê°ì ëì ) 2D ìºë²ì¤ì ì¬ì©ì ê°ì íë©°getImageData()í¸ì¶ì´ ë¹ë²í ë ë©ëª¨ë¦¬ë¥¼ ì ì½í ì ììµëë¤. ì´ ìµì ìgfx.canvas.willReadFrequently.enableíëê·¸ê°true(기본 ê°ì´ë©°, B2G/Firefox OSìë§ í´ë¹) ì¤ì ëìì ê²½ì°ìë§ ì¬ì©ê°ë¥í©ëë¤. -
(Blink only)
storage: ì´ë¤ ì¤í 리ì§ê° ì¬ì©ëìëì§ë¥¼ ëíë´ë 문ìì´ì ëë¤(기본ê°ì "persistent").WebGL 컨í ì¤í¸ ìì±:*alpha: ìºë²ì¤ê° ìí ë²í¼ë¥¼ í¬í¨íëì§ ì¬ë¶ë¥¼ ëíë´ë ë¶ë¦¬ì¸ì ëë¤. -
antialias: ìí° ì¨ë¦¬ì´ì±ì ìíí ì§ ì¬ë¶ë¥¼ ëíë´ë ë¶ë¦¬ì¸ì ëë¤. -
depth: ëë¡ì ë²í¼ê° ìµì 16 ë¹í¸ì ê¹ì´ ë²í¼ë¥¼ ê°ëì§ ì¬ë¶ë¥¼ ëíë´ë ë¶ë¦¬ì¸ì ëë¤. -
failIfMajorPerformanceCaveat: ìì¤í ì±ë¥ì´ ë®ì ê²½ì°ì 컨í ì¤í¸ë¥¼ ìì±í ì§ ì¬ë¶ë¥¼ ëíë´ë ë¶ë¦¬ì¸ì ëë¤. -
powerPreference: WebGL 컨í ì¤í¸ì ëí´ ì í©í GPU 구ì±ì´ 무ìì¸ì§ë¥¼ ëíë´ë ì ì ìì´ì í¸ì ëí íí¸ì ëë¤. ê°ë¥í ê°ì ë¤ìê³¼ ê°ìµëë¤."default": ì ì ìì´ì í¸ê° ê°ì¥ ì í©í GPU 구ì±ì ê²°ì íëë¡ í©ëë¤. 기본 ê°ì ëë¤."high-performance": ì ë ¥ ìë¹ë³´ë¤ ë ëë§ ì±ë¥ì ì°ì ìí©ëë¤."low-power": ë ëë§ ì±ë¥ë³´ë¤ ì ë ¥ ì ì½ì ì°ì ìí©ëë¤.
-
premultipliedAlpha: íì´ì§ ì»´í¬ì§í°ê° 미리 ê³±í´ì§ ìí를 ê°ë 컬ë¬ë¥¼ í¬í¨íë ëë¡ì ë²í¼ë¥¼ ê°ì í ê²ì¸ì§ ì¬ë¶ë¥¼ ëíë´ë ë¶ë¦¬ì¸ì ëë¤. -
preserveDrawingBuffer: ê°ì´ trueì¼ ê²½ì° ë²í¼ë ì ê±°ëì§ ìì¼ë©° ê°ì´ ì ê±°ëê±°ë ë®ì´ì°ì¬ì§ê¸° ì ê¹ì§ ì ì§ë©ëë¤. -
stencil: ëë¡ì ë²í¼ê° ìµì 8 ë¹í¸ì ì¤í ì¤ ë²í¼ë¥¼ ê°ëì§ ì¬ë¶ë¥¼ ëíë´ë ë¶ë¦¬ì¸ì ëë¤.
-
ë°í ê°
RenderingContextë ë¤ì ì¤ íëì
ëë¤.
"2d"ì©CanvasRenderingContext2D,"webgl"ë°"experimental-webgl"ì©WebGLRenderingContext,"webgl2"ì©WebGL2RenderingContext"bitmaprenderer"ì©ImageBitmapRenderingContext.
contextTypeì´ ê°ë¥í ëë¡ì 컨í
ì¤í¸ì ì¼ì¹íì§ ìì¼ë©´, nullì´ ë°íë©ëë¤.
ìì
ë¤ì <canvas> ì리먼í¸ë¥¼ ê³ ë ¤í´ë³¼ ë:
<canvas id="canvas" width="300" height="300"></canvas>
ë¤ì ì½ë를 ì¬ì©í´ ìºë²ì¤ì 2d 컨í
ì¤í¸ë¥¼ ì»ì ì ììµëë¤.
var canvas = document.getElementById("canvas");
var ctx = canvas.getContext("2d");
console.log(ctx); // CanvasRenderingContext2D { ... }
ì´ì ìºë²ì¤ì ëí 2D ë ëë§ ì»¨í ì¤í¸ë¥¼ ê°ê³ ìì¼ë©° ì´ ìì 그릴 ì ììµëë¤.
ëª ì¸
| Specification |
|---|
| HTML > # dom-canvas-getcontext-dev > |
ë¸ë¼ì°ì í¸íì±
í¨ê» 보기
- ì´ë¥¼ ì ìíë ì¸í°íì´ì¤
HTMLCanvasElement. OffscreenCanvas.getContext()- ì¬ì© ê°ë¥í ë ëë§ ì»¨í
ì¤í¸:
CanvasRenderingContext2D,WebGLRenderingContext,WebGL2RenderingContext,ImageBitmapRenderingContext.