SELFHTML

Schriftformatierung mit Schriftartendatei

Informationsseite

nach unten @font-face, src, font-family (Schriftformatierung mit Schriftartendatei)
nach unten Schriftformate eingrenzen
nach unten unicode-range (Unicode-Bereich eingrenzen)
nach unten Weitere Angaben zur Schriftquelle

 nach unten 

CSS 2.0Netscape 4.0MS IE 4.0 @font-face, src, font-family (Schriftformatierung mit Schriftartendatei)

Von diesen in CSS2 eingeführten Angaben wurde nur @font-face vom Internet Explorer und Netscape 4.x unterstützt. Da sie weder in den Mozilla-Nachfolgern noch in anderen aktuellen Browsern implementiert sind, gehören sie in CSS 2.1 nicht mehr zum Standard! Sie sollten also stets auch passende Alternativ-Schriftarten angeben, wenn Ihre Seiten nicht ausschließlich von Nutzern des Internet Explorer besucht werden (die die Schriftart-Installation bei hoher Sicherheitsstufe auch bestätigen).

Über @font-face können Sie für den Internet Explorer eine Schriftart definieren und dabei direkt die Daten-Ressourcen der gewünschten Schriftarten ansprechen, also bestimmte Schriftartendateien. Vorgesehen war außerdem, mit Hilfe spezieller Definitionen die Charakteristika der gewünschten Schriftart exakt beschreiben zu können. Beim Definieren der Schriftart vergeben Sie einen Namen für die Schriftart. Unter diesem Namen können Sie sie anschließend mit der Eigenschaft Seite font-family verwenden.

Beispiel:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html><head><title>font-face</title>
<style type="text/css">
 @font-face { font-family:Garamond; src:url(garamond.eot), url(garamond.pfr); }
</style>
</head>
<body>
<p style="font-family:Garamond">Text in Garamond</p>
</body></html>

Erläuterung:

Mit @font-face starten Sie die Angabe einer exakten Schriftart in einem style-Bereich. Dahinter folgen, in geschweiften Klammern, die Daten. Die beiden wichtigsten sind der Schriftartenname font-family und der URI der Schriftartendatei src:url(Datei).

Den Schriftartennamen vergeben Sie mit der Angabe font-family: innerhalb des @font-face-Bereichs. Unter diesem Namen können Sie die Schriftart in HTML verwenden. Im obigen Beispiel gibt es einen Textabsatz, der mit Hilfe einer Stylesheet-Angabe die zuvor definierte Schriftart erzwingt.

Die Schriftartendatei, die Sie für die zugehörigen font-family-Angaben bestimmen, geben Sie mit src:url(Datei) an. Wenn sich die Schriftartendatei im gleichen Verzeichnis befindet wie die HTML-Datei, genügt die Angabe des Dateinamens. Andernfalls müssen Sie die genaue Lage der Schriftartendatei entweder durch eine relative Pfadangabe oder durch eine absolute Adressierung vom Typ http://... angeben.

Im obigen Beispiel sehen Sie, dass gleich zwei URI-Angaben notiert sind. Einmal wird eine eot-Datei als Schriftartenquelle angegeben, einmal eine pfr-Datei. Beide Formate sind browser-spezifisch: eot-Dateien sind Schriftartendateien, die der Internet Explorer (ab Version 4) als Web-Schriftarten erkennt; pfr-Dateien sind Schriftartendateien, die Netscape 4.x erkannte. Wenn Sie Ihre gewünschte Schriftart auch für diesen veralteten Browser zur Verfügung stellen wollen, können Sie beide Formate so einbinden wie im obigen Beispiel.

Einzelheiten zu eot- und pfr-Schriftarten und wie Sie diese selbst erstellen können, finden Sie im Kapitel über Kapitel Internationalisierung im Abschnitt Seite Downloadbare Schriftarten.

nach obennach unten

CSS 2.0 Schriftformate eingrenzen

In CSS2 war vorgesehen, bei der Einbindung einer Schriftartendatei auch Angaben zu den möglichen Formateigenschaften der Schrift zu machen, wie z.B. zu Seite Schriftstil (font-style), Seite Schriftvariante (font-variant), Seite Schriftgröße (font-size) oder Seite Schriftgewicht (font-weight). So sollte dem Browser bereits in der HTML-Datei mitgeteilt werden, welche Formateigenschaften die Schriftartendatei unterstützt. Der Browser sollte die Schriftartendatei in desem Fall nur dann zum Anwender übertragen, wenn Formatierungen in der HTML-Datei die Übertragung sinnvoll machen.
Wegen mangelnder Browserunterstützung werden diese Angaben jedoch in CSS 2.1 nicht übernommen.

Beispiel:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html><head><title>font-face</title>
<style type="text/css">
 @font-face { font-family:Garamond; src:url(garamond.eot); font-size:10pt,12pt,14pt; }
 @font-face { font-family:Garamond; src:url(garamond.pfr); font-size:10pt,12pt,14pt; }
</style>
</head><body>
<p style="font-family:Garamond; font-size:48pt">Text</p>
<!-- Datei wird nicht übertragen -->
</body></html>

Erläuterung:

Mit den dafür üblichen Stylesheet-Eigenschaften sollten bei der Definition einer Schriftart mit Schriftartendatei einschränkende Angaben zur Schrift gemacht werden können.

Folgende Besonderheiten sollten dabei beachtet werden:
Zu font-style, font-variant, font-weight und font-size konnten auch mehrere, durch Kommata getrennte Werte angegeben werden.
Bei font-weight waren die Angaben bolder und lighter nicht zulässig.
Bei font-size waren nur absolute Größenangaben und keine relativen wie Prozentangaben oder em-Angaben erlaubt.

nach obennach unten

CSS 2.0 unicode-range (Unicode-Bereich eingrenzen)

In CSS2 war vorgesehen, bei der Einbindung einer Schriftartendatei den Zeichenbereich einschränken zu können. So sollte dem Browser bereits in der HTML-Datei mitgeteilt werden, welchen Zeichenbereich die Schriftart unterstützt. Der Browser sollte die Schriftartendatei in desem Fall nur dann zum Anwender übertragen, wenn alle Zeichen eines Textes, der mit der Schriftart formatiert wird, innerhalb des definierten Seite Unicode-Bereichs liegen.
Wegen mangelnder Browserunterstützung wird diese Eigenschaft jedoch in CSS 2.1 nicht übernommen werden.

Beispiel:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html><head><title>unicode-range</title>
<style type="text/css">
 @font-face { font-family:System; src:url(system.eot); unicode-range:U+0000-007F; }
 @font-face { font-family:System; src:url(system.pfr); unicode-range:U+0000-007F; }
</style>
</head>
<body>
<p><tt style="font-family:System">Text mit ß und Ü</tt></p>
<!-- Datei wird nicht übertragen -->
</body>
</html>

Erläuterung:

Mit unicode-range: sollte der Zeichenbereich der Schriftartendatei vor dem Download bekannt gemacht werden. Im obigen Beispiel wird der Bereich U+0000-007F definiert. Das entspricht dem ASCII-Zeichenvorrat. Wenn nun in einem Bereich, der diese Schriftart benutzt, beispielsweise Umlaute oder andere Zeichen vorkommen, die nicht im ASCII-Zeichenvorrat vorkommen, sollte die Schriftartendatei nicht heruntergeladen werden.

Unicode-Angaben beginnen immer mit U+. Dahinter folgt eine Angabe der gewünschten Zeichennummer in hexadezimaler Form. Um einen Bereich zu definieren, der aus mehreren Unicode-Zeichen besteht, können Sie als Platzhalterzeichen (Wildcard) ein Fragezeichen ? benutzen. Bei einer Angabe wie unicode-range:U+00?? bewirken die zwei hintereinanderstehenden Fragezeichen am Ende der Angabe, dass der gewünschte Unicode-Bereich 16 hoch 2, also 256 Zeichen ab dem Zeichen U+00 beträgt. Da laut Unicode-System bei U+0000 die Zeichen des der Latin-1-Codetabelle beginnen, die 256 Zeichen umfasst, deckt die Angabe in dem Beispiel genau diesen Zeichenvorrat ab. Wenn Sie einen beliebigen Unicode-Bereich bestimmen möchten, können Sie dies mit einer Angabe tun wie z.B. U+AC00-D7FF

.

nach obennach unten

CSS 2.0 Weitere Angaben zur Schriftquelle

Die Version 2.0 der CSS-Sprache stellte einige Stylesheet-Angaben bereit, um Schriftartenquellen möglichst vielfältig definierbar und auffindbar zu machen, die wegen mangelnder Browserunterstützung jedoch in CSS 2.1 nicht übernommen werden.

Beispiel:

<style type="text/css">
 @font-face { font-family:Kino; src:local(Kino MT), url(kino.ttf) format(TrueType); }
 @font-face { font-family:MeineArt; url(http://www.example.org/cgi-bin/myfont.pl) format(intellifont) }
 @font-face { font-family:Alabama; url(alab.fon); panose-1: 2 4 5 2 5 4 5 9 3 3; }
</style>

Erläuterung:

Browser sollten zuerst auf dem Rechner des Anwenders nach der gewünschten Schriftart suchen und eine auf dem Server bereit liegende Schriftart nur dann herunterladen, wenn die Schriftart lokal nicht verfügbar ist. Dazu sollte bei der Quellenangabe der Schriftartendatei (src:) zuerst local und dahinter in Klammern der gewünschte Schriftartenname notiert werden. Für den Fall, dass der Browser diese Schriftart beim Anwender nicht findet, war durch ein Komma getrennt die Schriftartendatei auf der Internetseite anzugeben - im Beispiel url(kino.ttf).

Es sollten ferner Angaben zum Format der Schriftart gemacht werden können. Der Browser sollte die Schriftartendatei in diesem Fall nur dann herunterladen, wenn sie auf dem Rechner des Anwenders ausführbar ist. Dazu war die Angabe format() zu notieren, durch ein Leerzeichen getrennt von den Angaben zu src:local() und/oder src:url(). Innerhalb der Klammern sollte das Format der Schriftartendatei angeben werden. Im obigen Beispiel wird eine TrueType-Schriftart angegeben.

Folgende weitere Möglichkeiten waren vorgesehen, um die Schriftart genau einzugrenzen:

panose-1:, gefolgt von 10 durch Leerzeichen getrennten Zahlen, sollte eine Schriftart nach dem Panose-1-System bestimmen. Beispiel: panose-1: 2 4 5 2 5 4 5 9 3 3;
stemv: und stemh: für die vertikale und horizontale Stammbreite der Glyphen.
units-per-em: für die Anzahl der Einheiten pro em-Maßeinheit. Üblich sind die Werte 250 (bei Intellifont), 1000 (bei Type-1) oder 2048 (bei TrueType). Bei Angabe von stemv: und/oder stemh: war ebenfalls units-per-em: anzugeben.
slope: für den vertikalen Winkel der Glyphen.
cap-height: für die Höhe der Großbuchstaben der Glyphen.
x-height: für die Höhe der Kleinbuchstaben der Glyphen.
ascent: für die maximale Höhe der akzentlosen Glyphen.
descent: für die maximale Tiefe der akzentlosen Glyphen.
definition-src:url() für eine Datei mit Schriftartendefinitionen.
baseline: für die untere Grundlinie der Glyphen.
centerline: für die zentrale Grundlinie der Glyphen.
mathline: für die mathematische Grundlinie der Glyphen.
topline: für die obere Grundlinie der Glyphen.

 nach oben
weiter Seite Ausrichtung und Absatzkontrolle
zurück Seite Schriftformatierung
 

© 2007 Seite Impressum