OpenType

OpenType ist eine Erweiterung des TrueType Dateiformats, welche von Microsoft und Adobe gemeinsam ins Leben gerufen wurde. Der Hauptunterschied zu seinem Vorgänger ist, dass die Beschreibung der einzelnen Zeichen nicht nur im TrueType Format sein kann, sondern auch im Type1 Format.

OpenType brachte auch eine Reihe anderer Erweiterungen, und manche aktuellen TrueType Schriften sind eigentlich OpenType Schriften. Allgemein spricht man aber nur von OpenType Schriften, wenn diese Type1 Zeichenbeschreibungen verwenden.

OpenType und PDF

OpenType wird offiziell ab PDF 1.6 unterstützt. Inoffiziell sind die Schriften aber schon ab PDF 1.2 brauchbar.

OpenType Schriften mit TrueType Schriftdaten können wie TrueType Schriften eingebunden werden. Die beiden Formate sind zueinander kompatibel. Das heisst, als technischer Typ wird /TrueType angegeben, im Schriftdeskriptor wird /FontFile2 verwendet, und im Schriftstream muss der zusätzliche /Length1 Eintrag gesetzt werden.

Bei OpenType Schriften mit Type1 Schriftdaten müssen wir zu einem Trick greifen. Die Schriftdaten befinden sich in einem Block innerhalb der Datei, der für sich alleine gestellt eine gültige CFF Datei mit Type1-Anweisungen ergibt. Um ihn zu verwenden wird als technischer Typ /Type1 angegeben, im Schriftdeskriptor wird /FontFile3 verwendet, und im Schriftstream muss der zusätzliche Eintrag /Subtype /Type1C stehen. Der Inhalt des Schriftstreams ist nicht die komplette OpenType Datei, sondern nur der Inhalt des CFF-Blocks (siehe unten).

die OpenType Datei

OpenType Schriften fassen Schriftdaten und Metadaten in einer Datei zusammen. Die Dateiendung ist typischerweise TTF, wenn die Schriftdaten im TrueType Format sind, und OTF, wenn sie im Type1 Format sind.

Was die Dateistruktur betrifft, so entspricht OpenType weitgehend TrueType. Ich werde darum nicht die ganzen Angaben wiederholen, sondern lediglich auf die für uns relevanten zwei Unterschiede hinweisen:

Der erste Unterschied ist die Signatur am Anfang der Datei. Diese sollte bei OpenType ebenfalls <00 01 00 00> sein, falls die Schriftdaten im TrueType Format sind, oder aber der ASCII-String „OTTO“, falls sie im Type1 Format sind.

Der zweite Unterschied betrifft nur Schriften mit Type1 Schriftdaten. Bei diesen Schriften finden sich die Schriftdaten in einem „CFF “ Block (das vierte Zeichen ist ein Leerzeichen). Den Inhalt dieses Blocks müssen wir extrahieren, und für das Streamobjekt verwenden.

Volleinbindung

Bei PDF 1.6 kann auch die gesamte OpenType Datei eingebunden werden. Im Streamobjekt wird dann /Subtype auf /OpenType gesetzt (statt auf /Type1C). Allerdings bringt dies meines Wissens keinerlei Vorteile, und vergrössert das PDF unnötig.

Diskussion

Geben Sie Ihren Kommentar ein. Wiki-Syntax ist zugelassen:
G O N H M
 
grundlagen/dateien/fonts/otf.txt · Zuletzt geändert: 2013/02/01 11:55 (Externe Bearbeitung)
 
Falls nicht anders bezeichnet, ist der Inhalt dieses Wikis unter der folgenden Lizenz veröffentlicht: CC0 1.0 Universal
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki