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.
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.
Inherits properties from its parent, HTMLElement
.
HTMLCanvasElement.height
The height
HTML attribute of the <canvas>
element is a non-negative integer
reflecting the number of logical pixels (or RGBA values) going down one column of the canvas. 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. If no [separate] CSS height is assigned to the <canvas>
, then this value will also be used as the height of the canvas in the length-unit CSS Pixel.
HTMLCanvasElement.width
The width
HTML attribute of the <canvas>
element is a non-negative integer
reflecting the number of logical pixels (or RGBA values) going across one row of the canvas. 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. If no [separate] CSS width is assigned to the <canvas>
, then this value will also be used as the width of the canvas in the length-unit CSS Pixel.
HTMLCanvasElement.mozOpaque
Non-standard Deprecated
A boolean value 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
Non-standard
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.
Inherits methods from its parent, HTMLElement
.
HTMLCanvasElement.captureStream()
Returns a CanvasCaptureMediaStreamTrack
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.
Listen to these events using addEventListener()
.
contextlost
Experimental
Fired if the user agent detects that the backing storage associated with a CanvasRenderingContext2D
or an OffscreenCanvasRenderingContext2D
context has been lost.
contextrestored
Experimental
Fired if the user agent successfully restores a CanvasRenderingContext2D
or an OffscreenCanvasRenderingContext2D
context.
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.
Specification |
---|
HTML Standard # htmlcanvaselement |
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | |
HTMLCanvasElement |
1 | 12 | 1.5 | 9 | 9 | 2 | 4.4 | 18 | 4 | 10.1 | 1 | 1.0 |
captureStream |
51 | 79 | 43 | No | 36 | 11 | 51 | 51 | 43 | 36 | 11 | 5.0 |
contextlost_event |
98 | 98 | No | No | 84 | No | 98 | 98 | No | 68 | No | 18.0 |
contextrestored_event |
98 | 98 | No | No | 84 | No | 98 | 98 | No | 68 | No | 18.0 |
getContext |
1 | 12 | 1.5 | 9 | 9 | 2 | 4.4 | 18 | 4 | 10.1 | 1 | 1.0 |
height |
1 | 12 | 1.5 | 9 | 9 | 3 | 4.4 | 18 | 4 | 10.1 | 1 | 1.0 |
mozOpaque |
No | No | 3.5 | No | No | No | No | No | 4 | No | No | No |
toBlob |
50 | 7912–79 | 18 | 10 | 37 | 11 | 50 | 50 | 18 | 37 | 11 | 5.0 |
toDataURL |
2 | 12 | 2 | 9 | 9 | 4 | ≤37 | 18 | 4 | 10.1 | 3 | 1.0 |
transferControlToOffscreen |
69 | 79 | 105 | No | 56 | 16.4 | 69 | 69 | 105 | 48 | 16.4 | 10.0 |
webglcontextcreationerror_event |
9 | 12 | 49 | 11 | 12 | 5.1 | 4.4 | 25 | 49 | 12 | 8 | 1.5 |
webglcontextlost_event |
9 | 12 | 4 | 11 | 12 | 5.1 | 4.4 | 25 | 4 | 12 | 8 | 1.5 |
webglcontextrestored_event |
9 | 12 | 4 | 11 | 12 | 5.1 | 4.4 | 25 | 4 | 12 | 8 | 1.5 |
width |
1 | 12 | 1.5 | 9 | 9 | 3 | 4.4 | 18 | 4 | 10.1 | 1 | 1.0 |
<canvas>
© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/HTMLCanvasElement