PDF-Schriftarten-Subsetting-Prinzip: Warum es 90% der Dateigröße einspart

Zusammenfassung vorab: PDF-Schriftarten-Subsetting kann 90% der Dateigröße einsparen. Die Ursache: Chinesische Schriftarten sind oft 15–20 MB groß, während ein Dokument tatsächlich nur ein bis zweitausend Zeichen verwendet. Das Kernprinzip des Subsettings besteht aus drei Schritten — Scannen der tatsächlich verwendeten Zeichen, Wiederherstellung der CMap-Zuordnungstabelle und Umordnung der Glyphen-Indizes unter Verwurf ungenutzter Glyphen. Source Han Serif als vollständige Datei ist 18 MB, nach dem Subsetting nur 0,4 MB — eine Reduktion von 97,7%. Im Folgenden wird ab der Schriftdatei-Struktur das technische Prinzip des Subsettings detailliert erläutert, ergänzt durch Praxisvergleichsdaten dreier Schriftarten.

Wenn Sie mit der Gesamtmethodik der PDF-Komprimierung noch nicht vertraut sind, empfehlen wir, zunächst den Leitfaden zu PDF-Komprimierungsprinzipien und Methoden zu lesen.

1. Schriftdatei-Struktur: Warum sind eingebettete chinesische Schriftarten so groß

Um zu verstehen, warum Subsetting wirkt, muss man zunächst wissen, was in einer Schriftdatei enthalten ist. TrueType- (.ttf) und OpenType- (.otf) Schriftdateien bestehen aus mehreren Datentabellen, von denen jede für unterschiedliche Funktionen zuständig ist. Beim Einbetten in ein PDF werden diese Tabellen vollständig in die Datei gepackt, unabhängig davon, wie viele Zeichen das Dokument verwendet.

DatentabelleFunktionTypischer AnteilSubsetting-Möglichkeit
cmapZuordnung von Zeichencodes zu Glyphen-Indizes1%–3%muss wiederhergestellt werden
glyfTrueType-Glyphenkonturdaten70%–85%stark reduzierbar
CFFOpenType CFF-Glyphenkonturen (PostScript)60%–80%stark reduzierbar
locaPositionsindex der Glyphendaten1%–2%muss wiederhergestellt werden
hmtxHorizontale Metriken (Zeichenbreite/Vorschub)2%–5%muss wiederhergestellt werden
nameSchriftartname, Copyright und weitere Metainformationen0,5%–1%beibehalten
postPostScript-Namenszuordnung1%–3%teilweise reduzierbar

Aus der obigen Tabelle wird ersichtlich: Die Glyphenkonturdaten (glyf- oder CFF-Tabelle) machen 60%–85% der Schriftdatei aus. Eine chinesische Schriftart enthält 20.000 bis 70.000 Glyphen, wobei die Vektorkonturdaten jedes Zeichens durchschnittlich 300–600 Byte umfassen — in der Summe 10–20 MB. Ein 50-seitiges PDF-Dokument verwendet jedoch normalerweise nur 800–2000 unterschiedliche Zeichen, was bedeutet, dass über 95% der Glyphendaten verschwendet werden — genau hier liegt das Einsparpotenzial des Subsettings.

2. Subsetting-Prinzip: Drei Schritte zum Verwerfen ungenutzter Glyphen

Der Kerngedanke des Schriftarten-Subsettings ist: Nur die im Dokument tatsächlich verwendeten Glyphen behalten, den Rest verwerfen. Der Implementierungsprozess umfasst drei wesentliche Schritte, von denen jeder präzise Eingriffe in die Schrifttabellenstruktur erfordert.

SchrittMaßnahmePrinzipVerarbeitete Datentabellen
1. ZeichenverwendungsscanningAlle Seiteninhaltsströme des PDF durchlaufen und angezeigte Zeichencodes extrahierenDurch Parsen der Textoperatoren (Tj/TJ) Unicode-Codepunkte sammelnkeine (erzeugt Zeichensatz)
2. CMap-Tabellen-WiederherstellungZuordnung von Code zu Glyphen-Index anhand verwendeter Zeichen wiederherstellenNur Zuordnungseinträge verwendeter Zeichen behalten, Rest löschencmap
3. Glyphen-Index-NeuzuordnungVerwendete Glyphen fortlaufend neu anordnen und alle Referenzindizes aktualisierenOriginale Indizes können nicht fortlaufend sein, nach Umordnung Indizes 0 bis N fortlaufendglyf/CFF, loca, hmtx

1. Zeichenverwendungsscanning

Der erste Schritt besteht darin, das PDF-Dokument zu scannen und alle tatsächlich angezeigten Zeichen zu finden. Text in PDFs wird über Textoperatoren (Tj zeigt einen String an, TJ zeigt ein Array an) in den Inhaltsstrom geschrieben, wobei jedes Zeichen einem Code entspricht. Das Subsetting-Tool durchläuft die Inhaltsströme aller Seiten, extrahiert diese Codes und wandelt sie über die aktuelle CMap-Tabelle der Schriftart in Unicode-Codepunkte um, um schließlich einen „Satz verwendeter Zeichen" zu erhalten.

Beim Scanning müssen auch Sonderfälle behandelt werden: ToUnicode-CMap (Rückwärtszuordnung), Multibyte-Codierung (häufig bei CJK-Schriftarten) und das Subsetting-Präfix eingebetteter Schriftarten (Format: sechs Zeichen + Pluszeichen). Ein 50-seitiges chinesisches PDF ergibt typischerweise 800–2000 unterschiedliche Unicode-Zeichen; einschließlich Satzzeichen und Ziffern sind insgesamt etwa 1000–2500 Glyphen zu behalten.

2. CMap-Tabellen-Wiederherstellung

Die CMap-Tabelle ist das „Verzeichnis" der Schriftart und ordnet jedem Zeichencode den entsprechenden Glyphen-Index (Glyph ID) zu. Die CMap-Tabelle einer originalen chinesischen Schriftart enthält 20.000 bis 70.000 Zuordnungseinträge — nach dem Subsetting werden nur die Einträge der verwendeten Zeichen behalten. Bei der Wiederherstellung müssen auch verschiedene Codierungs-Subtabellen-Formate verarbeitet werden.

CMap-SubtabellenformatCodierungsbereichVerwendungSubsetting-Verarbeitung
Format 00–255Einbyte ASCII/Latinungenutzte Einträge entfernen
Format 4BMP-Basisebenehäufige CJK-ZeichenSegmenttabelle wiederherstellen
Format 12gesamter Unicodeabdeckt alle Zeichenungenutzte Segmente entfernen

3. Glyphen-Index-Neuzuordnung

Dies ist der kritischste und komplexeste Schritt. In der Originalschriftart sind die Glyphen-Indizes (GID) von 0 bis N fortlaufend angeordnet, aber die zu behaltenden Glyphen können über die gesamte Datei verstreut sein. Die Neuzuordnung ordnet die behaltenen Glyphen in einer neuen fortlaufenden Reihenfolge an: Der ursprüngliche GID 0 (.notdef) bleibt unverändert, der ursprüngliche GID 1523 wird zum neuen GID 1, der ursprüngliche GID 8944 wird zum neuen GID 2 usw.

Nach der Neuzuordnung müssen alle Tabellen, die auf GIDs verweisen, synchron aktualisiert werden: Die glyf-Tabelle (oder CFF-Tabelle) behält nur die entsprechenden Glyphendaten und ordnet sie nach neuen Indizes an, die loca-Tabelle wird als Positionsindex neu aufgebaut, die hmtx-Tabelle stellt die horizontalen Metrikdaten neu her und die post-Tabelle aktualisiert die PostScript-Namenszuordnung. Eine unsachgemäße Verarbeitung in diesem Schritt kann zu einer beschädigten Schriftart führen, daher ist die strikte Einhaltung der OpenType-Spezifikation erforderlich.

3. Praxisdaten: Drei Schriftarten vor und nach dem Subsetting im Vergleich

Wir haben drei häufig verwendete Schriftarten für einen Subsetting-Praxistest ausgewählt, die chinesische Schriftarten (Source Han Serif, Microsoft YaHei) und eine englische Schriftart (Arial) repräsentieren. Das Testdokument ist ein 50-seitiges chinesisches Angebot mit 1342 verwendeten Zeichen.

SchriftartOriginaldateiGlyphen (original)Glyphen (Subset)Nach SubsettingReduktion
Source Han Serif Regular18,2 MB6553513420,42 MB97,7%
Microsoft YaHei Regular15,6 MB2862213420,35 MB97,8%
Arial Regular0,82 MB3257960,06 MB92,7%

Die Praxisdaten zeigen: Der Subsetting-Effekt ist bei chinesischen Schriftarten am deutlichsten — Source Han Serif wird von 18,2 MB auf 0,42 MB reduziert, eine Reduktion von 97,7%. Dies liegt daran, dass chinesische Schriftarten viele Glyphen (60.000+) enthalten, das Dokument aber nur wenige verwendet (1000+), wodurch das Einsparpotenzial enorm ist. Die englische Schriftart Arial ist original nur 0,82 MB, nach dem Subsetting 0,06 MB — eine Reduktion von 92,7%; die absolute Größe ist zwar gering, aber der prozentuale Anteil ist ebenso beachtlich.

Betrachten wir nun den Subsetting-Effekt bei unterschiedlicher Zeichenverwendung, am Beispiel von Source Han Serif:

DokumenttypVerwendete ZeichenGröße nach SubsettingReduktionErläuterung
Kurze Mitteilung (1 Seite)ca. 2000,08 MB99,6%Sehr wenige Zeichen, sehr kleines Subset
Besprechungsprotokoll (10 Seiten)ca. 6000,19 MB99,0%Typisches Büro-Dokument
Angebot (50 Seiten)ca. 13420,42 MB97,7%Professionelles Dokument mit breiter Zeichenabdeckung
Technisches Handbuch (200 Seiten)ca. 28000,85 MB95,3%Große Zeichenverwendung
Enzyklopädie (1000 Seiten)ca. 65001,92 MB89,5%Nahe der maximalen Abdeckungsrate

4. Subsetting-Tools im Vergleich und Szenarien-Empfehlungen

Für das Schriftarten-Subsetting stehen verschiedene Tools zur Verfügung, von Open-Source-Kommandozeilen-Tools bis hin zu kommerziellen Komprimierungs-Engines, jeweils mit unterschiedlichen Vor- und Nachteilen. Die folgende Tabelle vergleicht gängige Lösungen.

ToolSubsetting-FähigkeitCFF-UnterstützungStapelverarbeitungIntegrationsaufwand
SmartSlim★★★★★jaunterstütztSDK/API/Desktop
fonttools (Python)★★★★☆japer Skriptmittel
Adobe Acrobat★★★★☆jabegrenztGUI-Bedienung
Ghostscript★★★☆☆teilweiseunterstütztKommandozeile
Online-Tools★★☆☆☆teilweisenicht unterstütztniedrig (Datenschutzrisiko)

SmartSlim basiert auf einer selbstentwickelten Rust-Komprimierungs-Engine und verarbeitet beim Subsetting automatisch sowohl TrueType- als auch OpenType-CFF-Glyphenformate. Es unterstützt die Stapelverarbeitung per Drag-and-Drop für Hunderte von PDFs. Noch wichtiger: Der gesamte Subsetting-Prozess erfolgt lokal — Schriftartendaten und Dokumentinhalte passieren keinen externen Server, was für vertrauliche Dokumente und sensible Unternehmensdateien besonders kritisch ist.

Empfehlungen für die Subsetting-Strategie in verschiedenen Szenarien:

SzenarioSubsetting empfohlen?HinweiseEmpfohlenes Tool
Archivierung/Verteilung der Endfassungdringend empfohlenNach Subsetting können keine neuen Zeichen bearbeitet werdenSmartSlim
Unternehmens-Stapelarchivierungdringend empfohlenAutomatisierte Stapelverarbeitung per APISmartSlim Server
Online-Veröffentlichung/VorschauempfohlenGeringere Download-Größe beschleunigt Ladezeitfonttools-Skript
Zur Bearbeitung bestimmter Entwürfenicht empfohlenVollständige Schriftart für Bearbeitung beibehaltenkein Subsetting
Vertrauliche/GeheimdokumenteempfohlenLokale Verarbeitung obligatorisch, Online-Tools verbotenSmartSlim

Weitere PDF-Optimierungstipps finden Sie im Leitfaden zur PDF-Linearisierungsoptimierung und unter Word-Dokument-Komprimierungsmethoden.

5. Häufig gestellte Fragen (FAQ)

F1: Beeinträchtigt PDF-Schriftarten-Subsetting die Darstellungsqualität?

Nein. Das Schriftarten-Subsetting verwirft nur die im Dokument nicht verwendeten Zeichen und Glyphendaten. Die beibehaltenen Zeichen sind mit der Originalschriftart identisch — die Darstellungsqualität wird in keiner Weise beeinträchtigt. Nach dem Subsetting bleibt die Schriftart eine Vektorkontur, die beim Skalieren nicht an Qualität verliert. Farbe, Strichstärke und weitere Eigenschaften bleiben unverändert. Die einzige Einschränkung: Die per Subsetting erstellte Schriftart kann nur in diesem Dokument verwendet und nicht in anderen Dokumenten wiederverwendet werden.

F2: Wie viel Dateigröße kann durch Subsetting eingespart werden?

Dies hängt vom Verhältnis der verwendeten Zeichen zur ursprünglichen Schriftgröße ab. Chinesische Schriftarten (z. B. Source Han Serif 18 MB) verwenden normalerweise nur 1000–2000 Zeichen — nach dem Subsetting sinkt die Größe auf 0,3–0,8 MB, eine Reduktion von über 95%. Englische Schriftarten (z. B. Arial 0,8 MB) verwenden noch weniger Zeichen — nach dem Subsetting 0,05–0,1 MB, eine Reduktion von ca. 90%. Je größer die Schriftart und je weniger Zeichen verwendet werden, desto signifikanter der Subsetting-Effekt.

F3: Kann eine PDF nach dem Subsetting noch bearbeitet werden?

Eingeschränkt. Das Subsetting behält nur die im Dokument bereits verwendeten Zeichen. Wenn bei der Bearbeitung neue Zeichen eingegeben werden, die im Originaldokument nicht vorkamen, können diese nicht angezeigt werden und erscheinen als Kästchen oder Leerzeichen. Daher eignet sich das Subsetting für die Archivierung und Verteilung von Endfassungen, nicht für Dokumente, die noch umfangreich bearbeitet werden müssen. Falls Bearbeitung erforderlich ist, sollte die vollständige Schriftart beibehalten oder ein neues Subset eingebettet werden.

F4: Wie prüfe ich, ob eine PDF bereits Schriftarten-Subsetting aufweist?

In Adobe Acrobat die PDF öffnen, dann Datei – Eigenschaften – Schriftarten aufrufen und die Liste der eingebetteten Schriftarten prüfen. Wenn der Schriftartenname ein sechs Zeichen langes Präfix trägt (z. B. ABCDEO+Source Han Serif), wurde das Subsetting durchgeführt. Alternativ kann SmartSlim verwendet werden — die Engine analysiert automatisch den Einbettungsstatus der Schriftarten und gibt einen Hinweis, ob ein Subsetting erforderlich ist, einschließlich der geschätzten Größenreduktion.

Zusammenfassung

Das PDF-Schriftarten-Subsetting ist eines der wirksamsten Mittel zur Größenreduktion von PDFs, insbesondere bei Dokumenten mit eingebetteten chinesischen Schriftarten. Das Kernprinzip umfasst drei Schritte: Scannen verwendeter Zeichen, Wiederherstellung der CMap-Zuordnungstabelle und Umordnung der Glyphen-Indizes unter Verwurf ungenutzter Glyphen. Praxisdaten zeigen: Source Han Serif wird von 18 MB auf 0,4 MB reduziert — eine Reduktion von 97,7% ohne jegliche Beeinträchtigung der Darstellungsqualität.

Praxisempfehlung: Vor der Verteilung der Endfassung unbedingt ein Schriftarten-Subsetting durchführen; bei vertraulichen Dokumenten ein lokales Tool verwenden. Wenn Sie PDF-Dateien stapelweise verarbeiten müssen, unterstützt SmartSlim PDF/Bilder/Video/Office/OFD und weitere 10 Kategorien mit über 40 Formaten, basierend auf einer selbstentwickelten Rust-Komprimierungs-Engine, die das Schriftarten-Subsetting automatisch durchführt — Daten verlassen nicht das System.

Dateien komprimieren? Probieren Sie SmartSlim

Basierend auf einer selbstentwickelten Rust-Komprimierungs-Engine, unterstützt 10 Kategorien und über 40 Formate, darunter PDF, Bilder, Video, Office und OFD, mit lokaler Komprimierung, die Ihre Daten vor Ort behält.