Schriftart-Subsetterstellung - wie es funktioniert und wann man es verwendet

Um die Dateigröße zu reduzieren, verwenden PDF-Ersteller eine Technik namens Schriftart-Subsetterstellung. Was passiert genau mit den Schriftarten und was sind die Konsequenzen?

Wenn eine PDF-Erstellungssoftware Text zu einer Seitenbeschreibung hinzufügt, bezieht sie sich auf eine Schriftart. Die Schriftart enthält eine Sammlung von Zeichen mit einer Beschreibung ihres grafischen Erscheinungsbildes, die als Glyphen, Metriken und andere relevante Informationen zur Darstellung des Textes bezeichnet werden. Es existieren verschiedene Arten von Schriftformaten, die in einem PDF-Dokument verwendet werden können, wie Type 1, TrueType, CFF und OpenType-Schriften.

Schriften müssen nicht in eine PDF-Datei eingebettet werden. In diesem Fall werden sie beim Namen genannt und müssen verfügbar sein, um das Dokument korrekt wiederzugeben. Um sicherzustellen, dass die Schriften immer verfügbar sind, kann die PDF-Erstellungssoftware sie als Binärströme in die Datei einbetten. Die Größe der Schriftdateien selbst kann jedoch verringert werden, indem alle Informationen entfernt werden, die tatsächlich nicht benötigt werden, um das Dokument korrekt darzustellen. Die PDF-Spezifikation listet genau die erforderlichen Schriftteile auf. Darüber hinaus kann die Schriftgröße verringert werden, indem nur die Zeichenerklärungen beibehalten werden, die tatsächlich von den Textobjekten angesprochen werden. Die Entfernung nicht benötigter Zeichenerklärungen wird als Subsetting bezeichnet.

Schriften mit PostScript-Umrissen (Type1, CFF, OpenType) können reduziert werden, indem einfach die Zeichenketten entfernt werden, da ihre Auswahl mit einzigartigen Glyphennamen oder Zeichenidentifikatoren (CID) erfolgt. Für TrueType-Umrisse gibt es verschiedene Optionen zur Durchführung des Subsettings. Eine Option besteht darin, die Glyphen vollständig zu entfernen, die andere darin, nur die Umrisse zu entfernen und leere Glyphen beizubehalten. Der Vorteil der ersten Option ist, dass die resultierende Größe kleiner ist. Der Vorteil der letzteren ist, dass sich die Glyphenidentifikatoren (GID) nicht ändern. Dies ist wichtig, da die Glyphen nach ihrer GID ausgewählt werden. Wenn die erste Option verwendet wird, müssen die Schriftkodierungstabellen (cmap) oder die GIDtoCIDMap-Datenstruktur angepasst werden, um die Änderungen in der Glyphenummerierung zu berücksichtigen. Aber es gibt auch einige Sonderfälle.

Schriftprogramme können zusammengesetzte Glyphen enthalten, z.B. kann die Glyphe 'ä' auf zwei separate Glyphen 'a' und '¨' verweisen. Beim Subsetting einer solchen Schrift müssen die Beschreibungen der zusammengesetzten Glyphen aktualisiert werden, wenn sich die Glyphenummerierung ändert, und die betreffenden Glyphen dürfen nicht entfernt werden, wenn sie nicht direkt im Text eines Dokuments angesprochen werden. Andere Informationen wie die Kodierungstabellen (cmap), Schriftmetriken (head, hhea, hmtx) und Anweisungen (prep, fpgm, cvt) können ebenfalls auf Glyphennummern verweisen und müssen entsprechend aktualisiert werden.

Teilmenge hemmt die Bearbeitung von PDF-Dokumenten. Insbesondere in interaktiven Formularen dürfen die Schriften, die zum Ausfüllen von Formularfeldern verwendet werden, nicht subsettiert werden.

Das Subsetting von Schriften ist eine komplexe Aufgabe und fehleranfällig. Die Mehrheit der schlechten realen PDF-Dateien enthält fehlerhaft eingebettete Schriften, die aus nicht funktionierenden Subsetting-Algorithmen resultieren.

Gefällt Ihnen, was Sie sehen? Teilen Sie es mit einem Freund.

Grüezi! Wie können wir helfen?

Phone