Relawan kami belum menerjemahkan artikel ini ke bahasa Bahasa Indonesia. Bergabunglah dan bantu kami menyelesaikannya!
Anda juga dapat membaca artikel ini dalam English (US).

The HTMLCanvasElement interface provides properties and methods for manipulating the layout and presentation of <canvas> elements. The HTMLCanvasElement interface also inherits the properties and methods of the HTMLElement interface.

Properties

Inherits properties from its parent, HTMLElement.

HTMLCanvasElement.height
Is a positive integer reflecting the height HTML attribute of the <canvas> element interpreted in CSS pixels. When the attribute is not specified, or if it is set to an invalid value, like a negative, the default value of 150 is used.
HTMLCanvasElement.width
Is a positive integer reflecting the width HTML attribute of the <canvas> element interpreted in CSS pixels. When the attribute is not specified, or if it is set to an invalid value, like a negative, the default value of 300 is used.
HTMLCanvasElement.mozOpaque
Is a Boolean reflecting the moz-opaque HTML attribute of the <canvas> element. It lets the canvas know whether or not translucency will be a factor. If the canvas knows there's no translucency, painting performance can be optimized. This is only supported in Mozilla-based browsers; use the standardized canvas.getContext('2d', { alpha: false }) instead.
HTMLCanvasElement.mozPrintCallback
Is a function that is Initially null. Web content can set this to a JavaScript function that will be called when the canvas is to be redrawn while the page is being printed. When called, the callback is passed a "printState" object that implements the MozCanvasPrintState interface. The callback can get the context to draw to from the printState object and must then call done() on it when finished. The purpose of mozPrintCallback is to obtain a higher resolution rendering of the canvas at the resolution of the printer being used. See this blog post.

Methods

Inherits methods from its parent, HTMLElement.

HTMLCanvasElement.captureStream()
Returns a CanvasCaptureMediaStream that is a real-time video capture of the surface of the canvas.
HTMLCanvasElement.getContext()
Returns a drawing context on the canvas, or null if the context ID is not supported. A drawing context lets you draw on the canvas. Calling getContext with "2d" returns a CanvasRenderingContext2D object, whereas calling it with "webgl" (or "experimental-webgl") returns a WebGLRenderingContext object. This context is only available on browsers that implement WebGL.
HTMLCanvasElement.toDataURL()
Returns a data-URL containing a representation of the image in the format specified by the type parameter (defaults to png). The returned image is in a resolution of 96dpi.
HTMLCanvasElement.toBlob()
Creates a Blob object representing the image contained in the canvas; this file may be cached on the disk or stored in memory at the discretion of the user agent.
HTMLCanvasElement.transferControlToOffscreen()
Transfers control to an OffscreenCanvas object, either on the main thread or on a worker.
HTMLCanvasElement.mozGetAsFile()
Returns a File object representing the image contained in the canvas; this file is a memory-based file, with the specified name. If type is not specified, the image type is image/png.

Events

Listen to these events using addEventListener().

webglcontextcreationerror
Fired if the user agent is unable to create a WebGLRenderingContext or WebGL2RenderingContext context.
webglcontextlost
Fired if the user agent detects that the drawing buffer associated with a WebGLRenderingContext or WebGL2RenderingContext object has been lost.
webglcontextrestored
Fired if the user agent restores the drawing buffer for a WebGLRenderingContext or WebGL2RenderingContext object.

Specifications

Specification Status Comment
Media Capture from DOM Elements
The definition of 'HTMLCanvasElement' in that specification.
Working Draft Adds the method captureStream().
HTML Living Standard
The definition of 'HTMLCanvasElement' in that specification.
Living Standard The method getContext() now returns a RenderingContext rather than an opaque object.
The transferControlToOffscreen()method has been added.
HTML 5.1
The definition of 'HTMLCanvasElement' in that specification.
Recommendation  
HTML5
The definition of 'HTMLCanvasElement' in that specification.
Recommendation Initial definition.

Browser compatibility

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidEdge MobileFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
HTMLCanvasElementChrome Full support 4Edge Full support YesFirefox Full support 3.6IE Full support 9Opera Full support 9
Notes
Full support 9
Notes
Notes Opera Mini 5.0 and later has partial support.
Safari Full support 3.1WebView Android Full support YesChrome Android Full support YesEdge Mobile Full support YesFirefox Android Full support YesOpera Android Full support 10.1
Notes
Full support 10.1
Notes
Notes Opera Mini 5.0 and later has partial support.
Safari iOS Full support 3.2Samsung Internet Android Full support Yes
captureStream
ExperimentalNon-standard
Chrome Full support 51Edge ? Firefox Full support 43IE No support NoOpera Full support 36Safari Full support YesWebView Android Full support 51Chrome Android Full support 51Edge Mobile ? Firefox Android Full support 43Opera Android Full support 36Safari iOS Full support YesSamsung Internet Android Full support 5.0
getContextChrome Full support YesEdge Full support 12Firefox Full support 3.6IE Full support 9Opera Full support 9Safari Full support 3.1WebView Android Full support YesChrome Android Full support YesEdge Mobile ? Firefox Android Full support 4Opera Android Full support YesSafari iOS Full support YesSamsung Internet Android Full support Yes
heightChrome Full support 4Edge Full support 12Firefox Full support 3.6IE Full support 9Opera Full support 9Safari Full support 3.1WebView Android Full support YesChrome Android Full support YesEdge Mobile Full support YesFirefox Android Full support 4Opera Android Full support YesSafari iOS Full support YesSamsung Internet Android Full support Yes
mozFetchAsStream
DeprecatedNon-standard
Chrome No support NoEdge No support NoFirefox No support 13 — 43IE No support NoOpera No support NoSafari No support NoWebView Android No support NoChrome Android No support NoEdge Mobile No support NoFirefox Android No support NoOpera Android No support NoSafari iOS No support NoSamsung Internet Android No support No
mozGetAsFile
DeprecatedNon-standard
Chrome No support NoEdge No support NoFirefox Full support 4IE No support NoOpera No support NoSafari No support NoWebView Android No support NoChrome Android No support NoEdge Mobile No support NoFirefox Android Full support 4Opera Android No support NoSafari iOS No support NoSamsung Internet Android No support No
mozOpaque
Non-standard
Chrome No support NoEdge No support NoFirefox Full support 3.6IE No support NoOpera No support NoSafari No support NoWebView Android No support NoChrome Android No support NoEdge Mobile No support NoFirefox Android Full support 4Opera Android No support NoSafari iOS No support NoSamsung Internet Android No support No
toBlobChrome Full support 50Edge No support NoFirefox Full support 19IE Full support 10
Prefixed
Full support 10
Prefixed
Prefixed Implemented with the vendor prefix: ms
Opera Full support 37Safari Full support 11WebView Android Full support 50Chrome Android Full support 50Edge Mobile No support NoFirefox Android Full support 4Opera Android Full support 37Safari iOS Full support 11Samsung Internet Android Full support 5.0
toDataURLChrome Full support 4Edge Full support 12Firefox Full support 3.6IE Full support 9Opera Full support 9Safari Full support 4WebView Android Full support YesChrome Android Full support 18Edge Mobile No support NoFirefox Android Full support 4Opera Android Full support 10.1Safari iOS Full support 3.2Samsung Internet Android Full support Yes
transferControlToOffscreen
ExperimentalNon-standard
Chrome Full support 69Edge No support NoFirefox Full support 44
Disabled
Full support 44
Disabled
Disabled From version 44: this feature is behind the gfx.offscreencanvas.enabled preference. To change preferences in Firefox, visit about:config.
IE No support NoOpera No support NoSafari No support NoWebView Android No support NoChrome Android Full support 69Edge Mobile No support NoFirefox Android Full support 44
Disabled
Full support 44
Disabled
Disabled From version 44: this feature is behind the gfx.offscreencanvas.enabled preference. To change preferences in Firefox, visit about:config.
Opera Android No support NoSafari iOS No support NoSamsung Internet Android No support No
webglcontextcreationerror eventChrome Full support 9Edge Full support 12Firefox Full support 49IE Full support 11Opera Full support 12Safari Full support 5.1WebView Android Full support YesChrome Android Full support 25Edge Mobile Full support 12Firefox Android Full support 49Opera Android Full support 12Safari iOS Full support 8Samsung Internet Android Full support Yes
webglcontextlost eventChrome Full support 9Edge Full support 12Firefox Full support 4IE Full support 11Opera Full support 12Safari Full support 5.1WebView Android Full support YesChrome Android Full support 25Edge Mobile Full support 12Firefox Android Full support 4Opera Android Full support 12Safari iOS Full support 8Samsung Internet Android Full support Yes
webglcontextrestored eventChrome Full support 9Edge Full support 12Firefox Full support 4IE Full support 11Opera Full support 12Safari Full support 5.1WebView Android Full support YesChrome Android Full support 25Edge Mobile Full support 12Firefox Android Full support 4Opera Android Full support 12Safari iOS Full support 8Samsung Internet Android Full support Yes
widthChrome Full support 4Edge Full support 12Firefox Full support 3.6IE Full support 9Opera Full support 9Safari Full support 3.1WebView Android Full support YesChrome Android Full support YesEdge Mobile Full support YesFirefox Android Full support 4Opera Android Full support YesSafari iOS Full support YesSamsung Internet Android Full support Yes

Legend

Full support  
Full support
No support  
No support
Compatibility unknown  
Compatibility unknown
Experimental. Expect behavior to change in the future.
Experimental. Expect behavior to change in the future.
Non-standard. Expect poor cross-browser support.
Non-standard. Expect poor cross-browser support.
Deprecated. Not for use in new websites.
Deprecated. Not for use in new websites.
See implementation notes.
See implementation notes.
User must explicitly enable this feature.
User must explicitly enable this feature.
Requires a vendor prefix or different name for use.
Requires a vendor prefix or different name for use.

See also

  • HTML element implementing this interface: <canvas>