排版引擎比较(HTML5画布)

本页使用了标题或全文手工转换,现处于中国大陆简体模式
求闻百科,共笔求闻

下表比较了HTML5画布元素对绘图API的支持及网页浏览器的原生支持程度,无任何插件、附加组件或ECMAScript工作区。

表格说明

引擎命名

这里使用后端的引擎名而不是浏览器的名称。使用各浏览器引擎的浏览器如下表所示。

排版引擎 发行版本 预览版本 使用
Amaya 11.4.7[1] 不适用 停止开发;Amaya
Blink 537.36 源代码[注 1] Chromium/Chrome(28+)、Opera(15+)、YandexMicrosoft Edge(新版)
EdgeHTML 13.10586 [2] 不适用 Microsoft Edge(旧版)、通用Windows平台 (UWP)JavaScript应用
Gecko
标准版77.0.1(2018年8月8日,​5年前​(2018-08-08[3]
延长支持版(ESR)68.9.0(2018年6月26日,​5年前​(2018-06-26[4]


Beta & Developer Edition62.0beta(2018年6月26日,​5年前​(2018-06-26[5][6]
Nightly63.0a1(2018年6月26日,​5年前​(2018-06-26[7][8]
所有Mozilla软件,包括FirefoxSeaMonkeyGaleonCaminoK-MeleonFlock(至2.x版本);Debian IceWeaselGNU IceCat(前身为GNU IceWeasel);CyberfoxIcedoveIceapeIceowlFirefox for mobile("Fennec")
KHTML 4.12.3[9] 不适用 Konqueror[注 2]
Presto 2.12.388 不适用 停止开发;OperaOpera Mobile现在使用Blink;任天堂DS & DSi浏览器Internet Channel
Tasman (Mac版IE 5.2.3) 不适用 2003年停止开发;Mac OS XInternet Explorer 5以上
Trident 7.0(IE 11) 不适用 Internet Explorer与其他Internet Explorer shellMaxthon(仅限Microsoft Windows操作系统)、Windows Phone 8
WebKit 534.20 每日构建[注 3] Tizen(OS与浏览器)、Safari(桌面与移动版)、Google Chrome(28版本之前)、Maxthon 3Shiira, iCab 4OmniWeb 5.5+、WebAdobe AIRMidori, Adobe Dreamweaver CS4CS5Android浏览器、Palm webOS浏览器、Symbian S60浏览器、OWBSteamRekonqAroraFlock (版本3以上)、RockMelt海豚浏览器SleipnirKonqueror[注 2]
  1. chromium / chromium/blink. chromium.googlesource.com. Google. [2014-05-27]. 
  2. 2.0 2.1 在Konqueror中,用户可以切换排版引擎。
  3. WebKit Nightly Builds. webkit.org. [2014-05-27]. 


取值

以下各格的颜色表示该排版引擎的最新版本或指定版本(如果给出版本号的话)对该功能的支持程度。没有取值的版本号表示该排版引擎首次完全支持该功能。

取值 含义
表示该排版引擎完全地支持该功能或元素。
表示该功能或元素尚未有支持。
部分 表示该功能或元素有实现进展,但并不支持所有取值,对于已支持的取值,该实现是正确的。
不正确 表示该功能或元素有实现进展,但是实现并非在所有情况都是正确无误的。
实验性质 表示该功能或元素有实现进展,但是使用另外的属性或元素名(浏览器前辍)。多半是不完全实现或是有过多的漏洞
抛弃 表示该属性/元素不再受到支持。
每日构建 表示该功能或元素在未发布的版本有某种程度的支持。预期将有完整支持。
依情况 表示该属性/元素仅在某些平台支持或设定在某些配置后支持。

画布功能

Trident Gecko WebKit Presto
getContext 5.0 1.8 2.0
toDataURL 1.8[g 1] [w 1] 2.1[注 1]

支持的上下文

Trident Gecko WebKit Presto
2d 5.0 1.9.1 部分 2.6
WebGL 7.0[t 1] 依情况[g 2] 依情况[w 2] 2.9.220[p 1]

画布2D渲染上下文

Trident[t 2] Gecko[g 3] WebKit[w 3] Presto[p 2][p 3]
画布状态
save 5.0 1.8 2.0
restore
转换
scale 5.0 1.8 2.0
rotate
translate
transform 2.6[注 2][p 4][p 5][p 6]
setTransform 2.6[注 2]
合成
globalAlpha 5.0 1.8 2.0
globalCompositeOperation
颜色与样式
strokeStyle 5.0 1.8 2.0
fillStyle
createLinearGradient
createRadialGradient
createPattern
线条样式
lineWidth 5.0 1.8 2.0
lineCap
lineJoin
miterLimit
阴影
shadowOffsetX 5.0 1.9.1[g 4] 2.4[注 3]
shadowOffsetY
shadowBlur
shadowColor
简单形状
clearRect 5.0 1.8 2.0
fillRect
strokeRect
复杂形状
beginPath 5.0 1.8 2.0
closePath
moveTo
lineTo
quadraticCurveTo 1.8.1[注 4]
bezierCurveTo 1.8
arcTo 1.8.1[g 5]
rect 1.8
arc
fill
stroke
clip
isPointInPath
集中管理
drawFocusRing 28.0[g 6]
文本
font 5.0 1.9.1[注 5]
textAlign 2.6
textBaseline
fillText
strokeText
measureText
图像
drawImage 5.0 1.8 2.0
createImageData 1.9.1[g 8][g 9] 2.7[p 7]
getImageData 1.9[g 9] 2.6[注 2]
putImageData 2.0[g 10][g 9]

注释

  1. Presto 2.0部分支持此属性。
  2. 2.0 2.1 2.2 Opera 9.5(Presto 2.1)支持此功能,但Presto 2.1.1至2.5的支持表格表明该属性不被支持。
  3. Presto 2.4之前仅部分支持此属性。
  4. 在Gecko 1.8中显示不正确。
  5. Gecko在1.9中以不同的名字加入了实验性支持。[g 7]

参考文献

Trident参考

Gecko参考

Webkit参考

  1. WebKit DOM Programming Topics: Using the Canvas, [2016-02-06] 
  2. Marrin, Chris, WebGL Now Available in WebKit Nightlies, Surfin' Safari, 2009-10-19 [2016-02-06] 
  3. WebKit DOM reference - CanvasRenderingContext2D, [2016-02-06] 

Presto参考

其他参考

外部链接