Comparison of layout engines (HTML5 Canvas)

The following tables compare support for the drawing APIs of the Canvas element, a feature of HTML5. These tables compare native support by web browsers, without any plugins, add-ons or ECMAScript workarounds.

Canvas functions

|

Trident

Gecko

WebKit

Presto

getContext

rowspan="2"

toDataURL

Supported contexts

|

Trident

Gecko

WebKit

Presto

2d

WebGL

Canvas Rendering Context 2D

|

Trident

Gecko

WebKit

Presto

The canvas state

save

rowspan="2"

rowspan="2"

rowspan="2"

rowspan="2"

restore

Transformations

scale

rowspan="5"

rowspan="5"

rowspan="5"

rowspan="3"

rotate

translate

transform

setTransform

Compositing

globalAlpha

rowspan="2"

rowspan="2"

rowspan="2"

rowspan="2"

globalCompositeOperation

Colors and styles

strokeStyle

rowspan="5"

rowspan="5"

rowspan="5"

rowspan="5"

fillStyle

createLinearGradient

createRadialGradient

createPattern

Line styles

lineWidth

rowspan="4"

rowspan="4"

rowspan="4"

rowspan="4"

lineCap

lineJoin

miterLimit

Shadows

shadowOffsetX

rowspan="4"

rowspan="4"

rowspan="4"

rowspan="4"

shadowOffsetY

shadowBlur

shadowColor

Simple shapes

clearRect

rowspan="3"

rowspan="3"

rowspan="3"

rowspan="3"

fillRect

strokeRect

Complex shapes

beginPath

rowspan="13"

rowspan="4"

rowspan="13"

rowspan="13"

closePath

moveTo

lineTo

quadraticCurveTo

bezierCurveTo

arcTo

rect

rowspan="6"

arc

fill

stroke

clip

isPointInPath

Focus management

drawFocusRing

Text

font

rowspan="6"

rowspan="6" {{#tag:ref|Gecko had experimental support in version 1.9, with different names.|group=note}}

rowspan="6"

textAlign

rowspan="5"

textBaseline

fillText

strokeText

measureText

Images

drawImage

rowspan="4"

rowspan="4"

createImageData

getImageData

rowspan="2"

putImageData

Trident references

Gecko references

Webkit references

Presto references