Software:Comparison of browser engines (typography support)
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
References
- Specifications
- ↑ CSS Fonts Module Level 3 - Font resources, W3C, http://www.w3.org/TR/css3-fonts/#font-resources
- ↑ OpenType Layout tag registry, Tag: 'liga', Microsoft, http://www.microsoft.com/typography/otspec/features_ko.htm#liga
- ↑ OpenType Layout tag registry, Tag: 'rlig', Microsoft, http://www.microsoft.com/typography/otspec/features_pt.htm#rlig
- MSHTML/EdgeHTML
- ↑ About Font Embedding, Microsoft, http://msdn.microsoft.com/en-us/library/ms530303(VS.85).aspx
- ↑ @font-face support in Internet Explorer, archived from the original on 2010-07-19, https://web.archive.org/web/20100719075930/http://webfonts.info/wiki/index.php?title=%40font-face_support_in_Internet_Explorer
- ↑ Internet Explorer Platform Preview Guide for Developers, Microsoft, http://msdn.microsoft.com/en-us/ie/ff468705.aspx
- ↑ "font-feature-settings property". Microsoft. http://msdn.microsoft.com/en-us/library/ie/hh869409. Retrieved 8 November 2013.
- ↑ About Font Embedding (Internet Explorer), Microsoft, https://msdn.microsoft.com/en-us/library/ms533034(v=vs.85).aspx
- ↑ Internet Explorer Platform Preview Guide for Developers, Microsoft, http://msdn.microsoft.com/en-us/ie/ff468705.aspx
- ↑ Best Practices for Getting Started with SVG – IEBlog, Microsoft, https://blogs.msdn.microsoft.com/ie/2011/10/27/best-practices-for-getting-started-with-svg/
- ↑ Galineau, Sylvain (2010-04-23), Meet WOFF, The Standard Web Font Format, Microsoft, http://blogs.msdn.com/ie/archive/2010/04/23/meet-woff-the-standard-web-font-format.aspx
- ↑ Olivier, Frank (2016-05-03), Speed up page load with WOFF 2.0 fonts in Microsoft Edge - Microsoft Edge Dev BlogMicrosoft Edge Dev Blog, Microsoft, https://blogs.windows.com/msedgedev/2016/05/03/woff2-fonts-in-microsoft-edge/
- Gecko
- ↑ @font-face, Mozilla, https://developer.mozilla.org/en/CSS/@font-face
- ↑ Bug 3512 - (font-stretch) Implement font-stretch property, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=3512
- ↑ Bug 475891 - implement unicode-range support in user font set, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=475891
- ↑ Bug 549861 - (font-variant) implement parsing of font feature properties, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=549861
- ↑ Bug 511339 - implement experimental support for -moz-font-feature-settings, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=511339
- ↑ 6.0 6.1 Bug 520357 - support new web font format (EOT Lite) in @font-face, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=520357
- ↑ 70132 - Support @font-face, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=70132
- ↑ 8.0 8.1 Bug 119490 - Implement SVG fonts, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=119490
- ↑ Mozilla Supports Web Open Font Format - The Mozilla Blog, Mozilla, https://blog.mozilla.org/blog/2009/10/20/mozilla-supports-web-open-font-format/
- ↑ Firefox 35 for developers - Mozilla | MDN, Mozilla, https://developer.mozilla.org/en-US/docs/Mozilla/Firefox/Releases/35
- ↑ Bug 468237 - SVG image using a font specified via @font-face doesn't use the font after it loads, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=468237
- WebKit
- ↑ Hyatt, Dave (2007-10-03), Downloadable Fonts, Apple, http://webkit.org/blog/124/downloadable-fonts/
- ↑ Issue 9633: Disable web fonts by default, Google, 2009-04-01, https://code.google.com/p/chromium/issues/detail?id=9633
- ↑ Full pass of acid3 - Chromium-dev, Google, 2009-07-03, https://groups.google.com/group/chromium-dev/browse_thread/thread/c3b3db4339d3642c/c0040c5d39cfa1db?pli=1
- ↑ 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
- ↑ Irish, Paul (2010-01-25), Chrome and @font-face: It's here!, http://paulirish.com/2009/chrome-and-font-face-a-summary/
- ↑ Bug 12530 - CSS3: Support the font-stretch property, WebKit, https://bugs.webkit.org/show_bug.cgi?id=12530
- ↑ @font-face support in Safari, http://webfonts.info/wiki/index.php?title=@font-face_support_in_Safari, retrieved 2010-02-17
- ↑ 8.0 8.1 Bug 20542 - Adding EOT Font Rendering capability, WebKit, https://bugs.webkit.org/show_bug.cgi?id=20542
- ↑ 9.0 9.1 Changeset 29012 – WebKit, WebKit, https://trac.webkit.org/changeset/29012/webkit
- ↑ 10.0 10.1 10.2 >31302 – Add WOFF support for @font-face, WebKit, https://bugs.webkit.org/show_bug.cgi?id=31302
- ↑ Safari 10.0, Apple, https://developer.apple.com/library/archive/releasenotes/General/WhatsNewInSafari/Articles/Safari_10_0.html
- ↑ 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
- ↑ 14948 - Support sites using EOT fonts and font encoding with the on-the-fly transformation to Unicode with an extension - chromium - Monorail, Chromium, https://bugs.chromium.org/p/chromium/issues/detail?id=14948
- ↑ SVG (1.1) Fonts - Chrome Platform Status, Google, https://www.chromestatus.com/feature/5930075908210688
- ↑ Chromium Blog: Chrome 36 Beta: element.animate(), HTML Imports, and Object.observe(), Chromium, https://blog.chromium.org/2014/05/chrome-36-beta-elementanimate-html.html
- Presto
- ↑ 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
- ↑ Seven Web Fonts showcases, Opera, 2009-09-01, http://dev.opera.com/articles/view/seven-web-fonts-showcases/, retrieved 2010-02-17
- ↑ When letter-spacing is increased, these characters are spacing.
- ↑ Mackie, Kurt (10 December 2018). "Microsoft Edge Browser To Get New Rendering Engine but EdgeHTML Continues". https://redmondmag.com/articles/2018/12/10/edgehtml-continues.aspx. Retrieved 21 December 2019.