Technologie · Fontdarstellung

Fonts auf Websites

Geschichte

Browser mit Webfont-Unterstüzung

  • Chrome 4.0+
  • Internet Explorer 4+
  • Firefox 3.5+
  • Safari 3.1+
  • Opera 10+

Quelle: Web typography - Wikipedia

Seit Computer eine Darstellung an einem Bildschirm aufweisen, wurde immer wieder nach technischen und gestalterischen Möglichkeiten gesucht, Schriften möglichst den Wünschen des Gestalters entsprechend dar zu stellen. Als das World Wide Web 1993 durch das CERN frei gegeben wird, war die Formatierung noch nicht durch einen Gestalter zu beeinflussen. Lediglich der Browser bestimmte das aussehen. Mit der Einführung von CSS im Jahre 1996 wurde dann die Möglichkeit geschaffen, Schriften einem Inhalt zu zuweisen. Allerdings musste der entsprechende Font bereits auf dem Zielgerät installiert sein. Bereits 1997 ermöglichte Microsoft mit damaliger Technologie in Ihrem Browser das Laden von Fonts über das Internet. Somit wurde es möglich, eigene Schriften einzusetzen. Doch diese Technologie war nur auf Internet Explorer (Windows) verfügbar und auch von den Font-Anbietern sehr schlecht akzeptiert. Erst im Jahre 2009 wurde auf Grundlage von OpenType ein neues Format namens «WOFF» (Web Open Font Format) entwickelt. Dieses Format wurde sehr schnell von Browser-Herstellern und von Font-Anbietern akzeptiert, so dass heute Problemlos auf allen wichtigen Browsern der vom Gestalter gewünschte Font dynamisch in die Seite geladen werden kann.

Web Safe Fonts (Systemfonts)

Unter Systemfonts wird häufig eine Auswahl an Schriften verstanden, die zu einer sehr hohen Wahrscheinlichkeit auf dem Betriebssystem installiert sind, auf dem ein Browser eine Website darstellt. Somit ist der Browser in der Lage diesen Font zu verwenden und es muss kein zusätzlicher Font übertragen werden. Die Auswahl dieser Fonts ist sehr beschränkt und variiert stark von Betriebssystem zu Betriebssystem. Um dennoch die Gestaltung mehr oder weniger unter Kontrolle zu behalten, werden in einem CSS sogenannte Fallbacks angegeben. Das heisst, wenn eine Schrift nicht vorhanden ist, so kommt eine andere zum Einsatz.

Beispiel

CSS-Definition mit Font-Fallbacks:

p {
  font-family: Arial, Helvetica, sans-serif;
}

Es wird versucht zuerst Arial einzusetzen. Wenn keine Arial vorhanden ist, soll Helvetica zum Einsatz kommen und sonst eine beliebige Serifenlose.

Verbreitung und Vorteile von Webfonts

Meist kommt bei Webfonts das WOFF (Web Open Font Format) zum Einsatz. Seit 2014 sind auch die besser komprimierten WOFF 2.0 Dateien im Gebrauch, die heute von allen modernen Browsern unterstützt werden. Auch ältere Browser können mit älteren Font-Formaten (EOT) Schriften einbinden. Verfügt man über eine Lizenz eines Webfonts, so kann diese Schrift dynamisch zur Seite hinzugeladen werden. Der Gestalter weiss somit, wie seine Seite aussehen wird und kann die Typografie vollständig kontrollieren.

Darstellung von Fonts

Vektor zu Pixel

Heutige Fonts bestehen meist aus Vektor-Daten, die dann für die Anzeige an einem Ausgabegerät in eine Pixel-Matrix umgesetzt werden müssen. Diese Umrechnung von Vektoren zu Pixel kann auf verschiedene Arten geschehen. Die dafür zuständige Software wird Renderer genannt und ist je nach Hersteller unterschiedlich und liefert für die selben Vektoren unterschiedliche Ergebnisse.




Buchstabe a als Outline

Font als Outline

Microsoft Arial Unicode

Buchstabe a als Pixel ohne Hinting

12 Pixel Höhe (PPM) – S/W

Gerendert werden alle Pixel die zu mindestens 50% innerhalb der Kontur liegen (ohne Hinting).



Auflösung

Je höher die Auflösung eines Buchstaben ist, um so klarer nähert sich die Pixel-Darstellung an die Vektorform an. Eine höhere Auflösung pro Buchstabe kann erreicht werden, indem die Grösse des Buchstabens oder die Auflösung des Ausgabegeräts erhöht wird.



Arial as in s/w gerendert

MS-Renderer – S/W 8 bis 48 Pixel Höhe (PPM)

Microsoft Arial Unicode (mit Hinting)

Darstellung ohne Graustufen

Textworte in Arial als s/w in 8–18px mit Microsoft Renderer

8 bis 18 Pixel Höhe (PPM)

MS-Renderer – S/W
Microsoft Arial Unicode

Bei kleinen Schriften oder aber bei gewissen Display-Technologien kann es sinnvoll sein, Schrift nur mit S/W darzustellen.




Textwort in Arial als s/w in 8px mit Microsoft Renderer

8 Pixel Höhe (PPM)

Microsoft Arial Unicode – MS-Renderer – S/W




Textwort in Arial als s/w in 24px mit Microsoft Renderer

24 Pixel Höhe (PPM)

Microsoft Arial Unicode – MS-Renderer – S/W

Unterschiede im Rendering

Bei der S/W-Darstellung von Schrift sind die Unterschiede zwischen verschiedenen Renderern viel weniger stark erkennbar als bei einer Darstellung mit Graustufen.




a in Arial als s/w in 13px mit FreeType Renderer – 2014

FreeType-Renderer – S/W

13 Pixel Höhe (PPM) – Microsoft Arial Unicode

a in Arial als s/w in 13px mit Microsoft Renderer – 2014

MS-Renderer – S/W

13 Pixel Höhe (PPM) – Microsoft Arial Unicode

a in Arial als s/w in 13px mit Apple Renderer – 2014

Apple-Renderer – S/W

13 Pixel Höhe (PPM) – Microsoft Arial Unicode

Hinting

Über spezielle Instruktionen wird die Kontur einer Schrift so verformt, dass die Darstellung besser auf ein Pixel-Grid passt. Danach wird diese neue Kontur vom Renderer gerastert. Die Verformung ist auch so optimiert, dass zum Beispiel die x-Höhe über einen ganzen Font hinweg in allen Zeichen gleich hoch erscheint.



Font als Outline

Microsoft Arial Unicode

Buchstabe a als Outline

Buchstabe a als Pixel ohne Hinting




Hinting – 12 Pixel Höhe (PPM)

Konturen werden optimiert für Rasterung.

Buchstabe a als Outline mit Hinting

Buchstabe a als Pixel mit Hinting

TrueType vs. PostScript

Da der Aufwand einen Font mit guten Hints (Anweisungen) zu versehen sehr gross ist, sind nicht alle Fonts gleich gut optimiert und somit auch in der Qualität der Anzeige extrem verschieden. Häufig werden Schriften, die vorwiedgend für den Druck gezeichnet wurden, lediglich über eine automatische Hinting-Funktion optimiert. Dies führt nicht zu der selben Qualität in der Anzeige, wie wenn die Instruktionen von Hand eingefügt wurden. PostScript basierte Schriften (OpenType PS & PostScript Type 1) ermöglichen weniger genaues Hintig wie TrueType basierte Schriften (OpenType TT & TrueType).



TrueType mit von Hand eingefügten Hints

Microsoft Arial Unicode

TrueType a in Microsoft Arial 5 – 48 Die Stammstärken des Buchstaben wachsen gleichmässig an.




Autohints in PostScript

AMB Newut Medium

PostScript a in AMB Newut Medium 5 – 48 Stammstärken und Schriftlinie wirken nicht durchgehend.

Darstellung mit Graustufen

Textworte in Arial als Graustufe in 8–18px mit Microsoft Renderer

8 bis 18 Pixel Höhe (PPM)

MS-Renderer – Graustufen
Microsoft Arial Unicode

Oft wird im Web und bei eBooks eine Darstellung der Schrift mit Schriftglättung gewählt. Die Schrift erscheint weicher aber auch besser lesbar. Charaktereigenschaften in Zeichen können mit Graustufen auch in einem Pixel-Raster mit wenig Auflösung relativ gut erahnt werden.




Textwort in Arial als Graustufe in 8px mit Microsoft Renderer

8 Pixel Höhe (PPM)

Microsoft Arial Unicode – MS-Renderer – Graustufen




Textwort in Arial als Graustufe in 24px mit Microsoft Renderer

24 Pixel Höhe (PPM)

Microsoft Arial Unicode – MS-Renderer – Graustufen

Unterschiede im Rendering

Bei der Darstellung von Zeichen mit Graustufen wird je nach eingesetztem Renderer der Unterschied zwischen den einzelnen Technologien sehr deutlich sichtbar.




a in Arial als s/w in 13px mit FreeType Renderer – 2014

FreeType-Renderer – Graustufen

13 Pixel Höhe (PPM) – Microsoft Arial Unicode

a in Arial als s/w in 13px mit Microsoft Renderer – 2014

MS-Renderer – Graustufen

13 Pixel Höhe (PPM) – Microsoft Arial Unicode

a in Arial als s/w in 13px mit Apple Renderer – 2014

Apple-Renderer – Graustufen

13 Pixel Höhe (PPM) – Microsoft Arial Unicode

Darstellung mit Subpixel-Rendering

Bei der Darstellung mit Subpixeln wird die Schrftglättung nicht nur über verschiedene Graustufen erzeugt, sondern auch noch der Vorteil ausgenutzt, dass ein Bildschirm in horizontaler Richtung eine dreifach grössere Auflösung besitzt, da die RGB-Darstellung über drei Farb-Zustände in horizontaler Richtung geschieht. Dadurch wird die Darstellungsqualität wesentlich verbessert.

Ohne Subpixel-Rendering Schematische Darstellung ohne Glättung

Mit Subpixel-Rendering Schematische Darstellung mit Subpixel-Rendering

Apple-Renderer – S/W

Microsoft Arial Unicode – 12 Pixel Höhe (PPM)

Testwort ohne Subpixel-Darstellung


Apple-Renderer – Subpixel

Microsoft Arial Unicode – 12 Pixel Höhe (PPM)

Testwort mit Subpixel-Darstellung

Farbige Fonts

Es gibt vier verschiedene Möglichkeiten, wie in einem OpenType-Font farbige Elemente definiert werden können. Abweichende «Standards» wurden jeweils separat von folgenden Parteien entwickelt;

  • Microsoft (COLR/CPAL)
  • Apple (SBIX)
  • Google (CBDT/CBLC)
  • Adobe/Mozilla (SVG)

Da es somit technisch kompliziert ist für einen Renderer alle vier Definitionen zu unterstützen, ist die Verbreitung von farbigen Fonts sehr gering. Betriebsysteme bieten üblicherweise einen farbigen Emoji-Font, passend auf das jeweilige Betriebsystem, an. Jedoch gibt es darüber hinau wenige Fonts, die diese Technologie nutzen, da es auch für Schriftgestalter technisch mühsam ist alle Standards zu unterstützen.

Einfärben


Emoji-Font und die verschiedenen Layer

Einige Technologien unterstützen auch das Einfärben einzelner Layer oder Teile.

Bildquelle: Typography.Guru – Color Emoji

Fallback

Farbiger Font gerendert auf einem Renderer, der dies nicht unterstützt

Farbige Fonts können nur von wenigen Programmen angezeigt werden. Renderer die Farbige Fonts nicht unterstützen zeigen lediglich die S/W-Version an.

Farbiger Font

Ist der Renderer in der Lage die neuen Instruktionen im Font zu lesen, so kann die farbige Version angezeigt werden.

Autor

Stefan Huber
sh@signalwerk.ch
+41 78 744 37 38

Dokumentgeschichte

Mai 2014: Erstellung
September 2015: Erweiterung
März 2017: Erweiterung

Weiterführende Informationen

Subpixel-Rendering

Fonts in Webfonts konvertieren

Webfonts und Kompression von Webfonts

Farbige Fonts