Source/core/html/canvas
Contains canvas-related support classes, including:
- the base class for all
CanvasRenderingContext
- the base class for all elements that can host a rendering context
(CanvasRenderingContextHost
), namelyHTMLCanvasElement
and
OffscreenCanvas
- canvas font cache
- canvas async blob creator
- base class for
CanvasImageSource
(used as source fordrawImage
) - base class for
ImageElements
(HTMLImageElement
andSVGImageElement
) that
can be both aCanvasImageSource
and aImageBitmapSource
For more information on the structure of canvas-related classes, check
Source/modules/canvas/README.md.
Source/modules/canvas
Contains canvas-related subdirectories.
Class structure of Canvas-related objects
The classes on this structure are divided between all subdirectories that are
used by canvas:
-
htmlcanvas
Contains context creation for HTML canvas element
-
canvas2d
Contains base class for 2D rendering contexts and
CanvasRenderingContext2D
related classes. -
offscreencanvas
Contains offscreencanvas object.
-
offscreencanvas2d
Contains offscreencanvas 2D rendering context.
-
imagebitmap
Contains ImageBitmap rendering context.
Canvas-related classes are also present in these directories in core
:
core/html/canvas
and core/html
.
There are also some other directories in modules
that are a bit related to
canvas: modules/webgl
, modules/imagebitmap
and modules/csspaint
.
Virtual classes
CanvasRenderingContextHost
: All elements that provides rendering contexts
(HTMLCanvasElement
and OffscreenCanvas
) This is the main interface that a
CanvasRenderingContext
uses.
CanvasRenderingContext
- Base class for everything that exposes a rendering
context API. This includes 2d
, webgl
, webgl2
, imagebitmap
contexts.
BaseRenderingContext2D
- Class for 2D
canvas contexts. Implements most 2D
rendering context API. Used by CanvasRenderingContext2D
,
OffscreenCanvasRenderingContext2D
and PaintRenderingContext2D
.
WebGLRenderingContextBase
- Base class for webgl
contexts.
Final classes
CanvasRenderingContext2D
- 2D context for HTML Canvas element. [spec]
OffscreenCanvasRenderingContext2D
- 2D context for OffscreenCanvas.
[spec]
WebGLRenderingContext
- WebGL context for both HTML and Offscreen canvas.
[spec]
WebGL2RenderingContext
- WebGL2 context for both HTML and Offscreen canvas.
[spec]
ImageBitmapRenderingContext
- The rendering context provided by ImageBitmap
.
[spec]
PaintRenderingContext2D
- Rendering context for CSS Painting.
[spec]