Software:Comparison of browser engines (typography support)

From HandWiki
Short description: None

This article compares web typography support for several browser engines.

Explanation of the tables

Engine Status Embedded in
WebKit Active Safari browser, plus all browsers hosted on the iOS App Store.
Blink Active Google Chrome and other web browsers based on Chromium, such as Microsoft Edge, Opera, and Brave.
EdgeHTML Active Universal Windows Platform apps; formerly in the Edge browser[1].
Gecko Active Firefox browser and Thunderbird email client, plus forks like SeaMonkey and Waterfox.
KHTML Discontinued Konqueror browser
Presto Discontinued Formerly used as Opera's browser engine, prior to the migration to Chromium and Blink.
Trident Discontinued Internet Explorer and versions of Microsoft Outlook prior to Outlook 2007.

Values

These indicate the level of support for the given item in each engine. By default, the most recent version of the engine is implied. However, a specific version number can be listed; when this indicates full support, it's the initial version of the engine fully supporting the item.

Value Meaning
Yes Fully supported
No Has never been supported
Partial Only some values are supported
Incorrect Not implemented correctly in all cases
Experimental May be incomplete or buggy
Nightly build Currently in development; full support is expected
Depends Only supported for the specified conditions
Dropped No longer supported

Support for CSS font resources

CSS3 specified a mechanism for downloading and displaying fonts within a web page.[spec 1] This table compare support for that mechanism. Note that Embedded OpenType (EOT) font download does not bring in the entire OpenType font and therefore, the most prominent feature of Open Type, ligature support, does not come with EOT. MSHTML before version 5.0 supports only EOT. EOT is not sufficient for smartfonts that rely on ligatures.

MSHTML[m 1] Gecko[g 1] WebKit[w 1] Presto[p 1][p 2]
Grammar and rules
CSS3 @font-face <3.1[IE 4.0] 1.9.1 525[note 1] 2.2
Descriptors
CSS3 font-family <3.1[IE 4.0] 1.9.1 525 2.2
src Partial[note 2]
font-style <3.1[IE 4.0]
font-weight
font-stretch 5.0[m 3] 9.0[g 2] No[w 6] No
unicode-range Experimental[g 3] Partial[note 3]
font-variant No 24.0[g 4] No No
font-feature-settings 6.0[m 4] Experimental[g 5]

Support in HTML and XML documents

This table compares support for font formats applied with the @font-face rule in HTML and XML documents.

Format MSHTML/EdgeHTML Gecko WebKit Blink
EOT Embedded OpenType <3.1[m 5] No[g 6] No[w 8] No[b 1]
TTF TrueType 5.0[m 6] 1.9.1[g 7] 525.26[w 9] 537.36[w 9]
OTF OpenType
SVG Scalable Vector Graphics No[m 7] No[g 8] No[b 2]
WOFF Web Open Font Format 1.0 5.0[m 8] 1.9.2[g 9] 534.48.3[w 10] 537.36[w 10]
2.0 14.14316[m 9] 36[g 10] 602.1.50[w 11] 537.36[b 3]

Support in SVG documents

This table compares support for font formats applied with the @font-face rule in SVG documents.

Format MSHTML Gecko[g 11] WebKit Presto
Embedded OpenType (EOT) No No[g 6] No[w 8] No
TrueType (TTF) Yes Yes 2.2
OpenType (OTF) 18.0 No
Scalable Vector Graphics (SVG) No[g 8] 525
Web Open Font Format (WOFF) No No[w 10] 2.7.81

Smart font features support

Format MSHTML Gecko WebKit Presto
OpenType liga ligatures[spec 2] No 2.0 Partial[w 12] No
OpenType rlig ligatures[spec 3] No
ZWNJ and ZWJ (Unicode characters used for ligature control) Yes Yes No[p 3]

See also

Notes

  1. Prior to version 4.0, Google Chrome had font support disabled.[w 2][w 3][w 4][w 5]
  2. Doesn't understand the format() or local() identifiers.[m 2]
  3. Doesn't understand multiple, comma-separated ranges.[w 7]

References

Specifications
MSHTML/EdgeHTML
Gecko
WebKit
  1. Hyatt, Dave (2007-10-03), Downloadable Fonts, Apple, http://webkit.org/blog/124/downloadable-fonts/ 
  2. Issue 9633: Disable web fonts by default, Google, 2009-04-01, https://code.google.com/p/chromium/issues/detail?id=9633 
  3. Full pass of acid3 - Chromium-dev, Google, 2009-07-03, https://groups.google.com/group/chromium-dev/browse_thread/thread/c3b3db4339d3642c/c0040c5d39cfa1db?pli=1 
  4. Issue 17818: Enabled dynamic / web font support in a secure manner, Google, 2009-07-27, https://code.google.com/p/chromium/issues/detail?id=17818 
  5. Irish, Paul (2010-01-25), Chrome and @font-face: It's here!, http://paulirish.com/2009/chrome-and-font-face-a-summary/ 
  6. Bug 12530 - CSS3: Support the font-stretch property, WebKit, https://bugs.webkit.org/show_bug.cgi?id=12530 
  7. @font-face support in Safari, http://webfonts.info/wiki/index.php?title=@font-face_support_in_Safari, retrieved 2010-02-17 
  8. 8.0 8.1 Bug 20542 - Adding EOT Font Rendering capability, WebKit, https://bugs.webkit.org/show_bug.cgi?id=20542 
  9. 9.0 9.1 Changeset 29012 – WebKit, WebKit, https://trac.webkit.org/changeset/29012/webkit 
  10. 10.0 10.1 10.2 >31302 – Add WOFF support for @font-face, WebKit, https://bugs.webkit.org/show_bug.cgi?id=31302 
  11. Safari 10.0, Apple, https://developer.apple.com/library/archive/releasenotes/General/WhatsNewInSafari/Articles/Safari_10_0.html 
  12. On Safari, ligatures may be switched on with the CSS setting text-rendering, but then, they are used indiscriminately even when letter-spacing is increased (see Fraktur letterspacing); on Google Chrome, ligatures do not work.
Blink
Presto
  1. Mills, Chris (2008-12-04), Opera Presto 2.2 and Opera 10 — a first look, Opera, http://dev.opera.com/articles/view/presto-2-2-and-opera-10-a-first-look/, retrieved 2010-02-16 
  2. Seven Web Fonts showcases, Opera, 2009-09-01, http://dev.opera.com/articles/view/seven-web-fonts-showcases/, retrieved 2010-02-17 
  3. When letter-spacing is increased, these characters are spacing.