排版引擎比較 (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及開發者版126.0b2[5]在維基數據編輯(2024年4月17日)
Nightly127.0a1[6]在維基數據編輯(2024年4月15日)
所有Mozilla軟件,包括FirefoxSeaMonkeyGaleonCaminoK-MeleonFlock(至2.x版本);Debian IceWeaselGNU IceCat(前身為GNU IceWeasel);CyberfoxIcedoveIceapeIceowlFirefox for mobile("Fennec")
KHTML 4.12.3[7] 不適用 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瀏覽器、OWB英語Origyn Web BrowserSteamRekonqAroraFlock (版本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參考[編輯]

  1. ^ Introducing IE11: The Best Way to Experience the Web on Modern Touch Devices. Microsoft. [8 November 2013]. (原始內容存檔於2013-07-26). 
  2. ^ Internet Explorer Platform Preview Release Notes, (原始內容存檔於2010年4月19日) 

Gecko參考[編輯]

  1. ^ 存档副本. [2016-02-06]. (原始內容存檔於2012-05-02). 
  2. ^ WebGL - MDC, Mozilla, [2016-02-06], (原始內容存檔於2010-06-26) 
  3. ^ Canvas tutorial - MDC, [2016-02-06], (原始內容存檔於2012-08-03) 
  4. ^ Bug 310682 - Implement shadows for <html:canvas>, Mozilla, [2016-02-06], (原始內容存檔於2021-03-08) 
  5. ^ Bug 333613 – update canvas on branch, Mozilla, [2016-02-06], (原始內容存檔於2021-03-08) 
  6. ^ Bug 540456 - Support HTML5 canvas drawFocusRing(), Mozilla, [2016-02-06], (原始內容存檔於2021-03-08) 
  7. ^ Bug 436904 - implementing Canvas text spec, Mozilla, [2016-02-06], (原始內容存檔於2021-03-08) 
  8. ^ Bug 433004 - Support canvas.getContext("2d").createImageData(), Mozilla, [2016-02-06], (原始內容存檔於2021-03-09) 
  9. ^ 9.0 9.1 9.2 Pixel manipulation with canvas - MDC, [2016-02-06], (原始內容存檔於2012-05-01) 
  10. ^ Bug 498826 - canvas putImageData doesn't implement optional arguments, Mozilla, [2016-02-06], (原始內容存檔於2021-03-09) 

Webkit參考[編輯]

  1. ^ WebKit DOM Programming Topics: Using the Canvas, [2016-02-06], (原始內容存檔於2010-08-18) 
  2. ^ Marrin, Chris, WebGL Now Available in WebKit Nightlies, Surfin' Safari, 2009-10-19 [2016-02-06], (原始內容存檔於2017-02-22) 
  3. ^ WebKit DOM reference - CanvasRenderingContext2D, [2016-02-06], (原始內容存檔於2009-10-11) 

Presto參考[編輯]

  1. ^ Opera Desktop Team Blog, [2016-02-06], (原始內容存檔於2011-10-15) 
  2. ^ Opera 9 canvas support, [2016-02-06], (原始內容存檔於2016-01-31) 
  3. ^ Opera 9.5 canvas support, [2016-02-06], (原始內容存檔於2016-03-03) 
  4. ^ Presto 2.1.1 canvas support table, [2016-02-06], (原始內容存檔於2016-03-03) 
  5. ^ Presto 2.5 canvas support table, [2016-02-06], (原始內容存檔於2016-03-04) 
  6. ^ Presto 2.6 canvas support table, [2016-02-06], (原始內容存檔於2016-03-04) 
  7. ^ Web specifications support in Opera Presto 2.7 - Core Milestone additions since Opera Presto 2.6, [2016-02-06], (原始內容存檔於2011-02-13) 

其他參考[編輯]

  1. ^ Amaya Binary Releases, Most recent download link in stable
  2. ^ Change log between EdgeHTML 12.10240 and 13.10586
  3. ^ Firefox 77.0.1, See All New Features, Updates and Fixes. mozilla.org. Mozilla基金會. 2020-06-03. 
  4. ^ Firefox ESR 68.9.0, See All New Features, Updates and Fixes. mozilla.org. Mozilla基金會. 2020-06-02. 
  5. ^ Index of /pub/firefox/releases/126.0b2/. 2024年4月17日 [2024年4月18日] (英語). 
  6. ^ Firefox Nightly 127.0a1, See All New Features, Updates and Fixes. 2024年4月15日 [2024年4月16日] (英語). 
  7. ^ Download for kdelibs, Most recent download link in stable

外部連結[編輯]