Zuletzt aktualisiert: 10. September 2026

How Compression Works Inside EPUB, DOCX, XLSX, & PPTX: The Hidden ZIP Architecture

Wie Kompression in EPUB, DOCX, XLSX und PPTX funktioniert

Wenn Sie eine .docx-, .xlsx-, .pptx- oder .epub-Datei in .zip umbenennen und darauf doppelklicken, passiert etwas Überraschendes: Es wird kein Fehler angezeigt. Ihr Betriebssystem öffnet sie als Ordner, der Unterverzeichnisse, XML-Konfigurationsdateien, Stylesheets, Schriftarten und eingebettete Bilder enthält.

Moderne Dokumentenarchitekturen haben vor Jahrzehnten monolithische Binärblobs aufgegeben. Stattdessen haben Branchenstandards — namentlich Open Packaging Conventions (OPC) für Microsoft Office und das Open Container Format (OCF) für EPUB — eine überraschend elegante Grundlage übernommen: das bescheidene ZIP-Archiv.

Zu verstehen, wie Kompression in diesen Formaten funktioniert, zeigt, warum moderne Dokumente so robust, leichtgewichtig und erweiterbar sind — und warum einige Dateien um 90 % komprimiert werden, während andere kaum schrumpfen.

1. Die Container-Architektur: Verkleidete ZIP Pakete

Bevor man den eigentlichen Kompressionsalgorithmus versteht, ist es hilfreich zu begreifen, warum moderne Dokumentenformate als Pakete und nicht als eigenständige Rohdateien strukturiert sind.

Das Problem mit veralteten Binärformaten

In den 1990er‑Jahren und frühen 2000er Jahren verwendete Microsoft Office proprietäre Binärformate (.doc, .xls, .ppt). Diese Dateien waren im Wesentlichen Speicherabbilder, die um das Compound File Binary Format (CFBF) herum strukturiert waren. Sie waren berüchtigt fragil:

  • Ein einzelner Bit‑Flip könnte die gesamte Dateistruktur beschädigen.
  • Das Einbetten von Bildern ließ die Dateigröße unvorhersehbar in die Höhe schießen.
  • Das Parsen erforderte Reverse‑Engineering dichter Binärspezifikationen.
  • Plattformübergreifende Interoperabilität war ein Albtraum.

Der Wechsel zu offenen, modularen Containern

Mitte der 2000er Jahre fanden zwei parallele Entwicklungen statt:

  1. Office Open XML (OOXML / ISO/IEC 29500): Microsoft führte die XML-basierten Formate ein, die mit einem x enden (DOCX, XLSX, PPTX). Im Hintergrund folgen diese Dateien den Open Packaging Conventions (OPC).
  2. EPUB (IDPF / W3C): Das digitale Verlagswesen entfernte sich von proprietären Leserformaten hin zu standardisierter Webtechnologie (HTML, CSS, SVG), die im EPUB Open Container Format (OCF) gebündelt ist.

Beide Architekturen basieren auf dem Standard PKZIP 2.0 / ZIP-Spezifikation. Die Dateierweiterung bestimmt lediglich das erwartete Schema, die Standard‑Betrachteranwendung und die MIME‑Typ‑Deklarationen.

Sample DOCX File (Unzipped):
├── [Content_Types].xml        <-- Registry of MIME types for parts
├── _rels/                     <-- Package-level relationships
│   └── .rels
├── docProps/                  <-- Core and extended metadata
│   ├── app.xml
│   └── core.xml
└── word/                      <-- Main content payload
    ├── document.xml           <-- Text, paragraphs, and tags
    ├── styles.xml             <-- Typography and presets
    ├── numbering.xml          <-- Lists and counters
    ├── media/                 <-- Embedded images (PNG, JPG)
    └── _rels/
        └── document.xml.rels  <-- Internal hyperlinks & resource pointers

2. Der Motor unter der Haube: Der DEFLATE-Algorithmus

Wenn eine Softwareanwendung eine DOCX‑ oder EPUB‑Datei speichert, legt sie nicht einfach Dateien in ein unkomprimiertes Archiv ab. Sie komprimiert die internen Ressourcen mit DEFLATE (definiert in RFC 1951).

DEFLATE ist ein zweistufiges verlustfreies Kompressionssystem, das zwei grundlegende Algorithmen der Informatik kombiniert:

Schritt 1: LZ77 (Lempel-Ziv 1977) — Entfernung von Redundanz im Gleitfenster

XML und HTML sind äußerst wortreich. Betrachten Sie, wie häufig Tags in einer Standard‑document.xml‑ oder chapter1.xhtml‑Datei vorkommen:

  • <w:p><w:r><w:rPr><w:sz w:val=\"24\"/></w:rPr><w:t> wiederholt sich tausende Male in Word.
  • row r=\"1\" spans=\"1:15\"><c r=\"A1\" t=\"s\"><v> wiederholt sich in Excel über Zehntausende von Zellen.
  • <p class=\"calibre1\"><span class=\"body-text\"> wiederholt sich über EPUB-Buchkapitel hinweg.

LZ77 scannt den Datenstrom mithilfe eines gleitenden Wörterbuchfensters (typischerweise 32 KB). Wenn es auf eine Zeichenkette trifft, die es kürzlich gesehen hat, ersetzt es den doppelten Text durch einen winzigen Rückwärtszeiger:

  • (distance, length) — z.B. “gehe 142 Bytes zurück, kopiere 28 Bytes”.

Anstatt wiederholt ausführliches Markup zu speichern, fasst LZ77 Tausende von wiederholten XML-Tags zu kompakten Koordinatenreferenzen zusammen.

Schritt 2: Huffman-Codierung — Variable-Längen-Frequenzkodierung

Nachdem LZ77 redundante Sequenzen durch Länge‑Entfernung‑Token ersetzt hat, analysiert Huffman‑Codierung die Häufigkeit jedes Symbols im Strom:

  • Häufig auftretende Symbole (wie die gebräuchlichen Zeichen e, t, Leerzeichen oder gängige Distanzmarker) erhalten kurze binäre Bit‑Codes (z.B. 2 bis 4 Bits).
  • Selten genutzte Symbole erhalten längere binäre Bit‑Codes (z.B. 12 bis 16 Bits).

Das Ergebnis ist ein Strom von variablen Bit‑Codes, die reinen Text‑XML um 75% bis 88% komprimieren.

3. Format-für-Format-Analyse: Wie jedes die Kompression handhabt

Während DOCX, XLSX, PPTX und EPUB alle dasselbe ZIP‑Umfeld verwenden, unterscheiden sich ihre internen Datenmerkmale stark.

A. DOCX: Der Balanceakt zwischen Text und Formatierung

  • Was ist enthalten: Plain XML (word/document.xml), Schriftarttabellen, Stile, Beziehungskataloge und ein word/media/‑Ordner.
  • Wie die Kompression funktioniert:
    • Der Rohtext und das XML‑Markup erzielen massive Kompressionsraten (oft sinken sie von 5 MB Roh‑XML auf 500 KB).
    • Moderne Dokumente betten jedoch häufig Screenshots, Illustrationen und Fotos ein. Da JPEG‑ und PNG‑Dateien bereits komprimiert sind, kann DEFLATE sie nicht weiter verkleinern. Tatsächlich führt das Anwenden von DEFLATE auf ein bereits komprimiertes Bild praktisch zu 0 % Einsparungen (und kann die Größe aufgrund von Komprimierungs‑Headern sogar leicht erhöhen).
    • Folglich sind DOCX‑Dateien ohne Bilder außergewöhnlich klein, während bildlastige Berichte fast exakt die Größe ihrer enthaltenen Bilddateien widerspiegeln.

B. XLSX: Hochvolumige numerische Daten & gemeinsam genutzte Zeichenketten

Tabellenkalkulationen stellen eine besondere Herausforderung dar: Ein Blatt kann Hunderttausende von Zeilen enthalten, was zu astronomischen XML‑Dateigrößen führt, wenn es nicht intelligent verarbeitet wird.

  • Die Shared-Strings-Strategie (xl/sharedStrings.xml):
    • Wenn ein Textlabel wie “United States” oder “In Progress” 50.000 Mal in einer Tabellenkalkulation vorkommt, würde das Speichern von <c t="inlineStr"><is><t>United States</t></is></c> in 50.000 Zellen das unkomprimierte XML auf Gigabytes aufblasen.
    • Excel entfernt Duplikate von Text vor der Kompression, indem es jede eindeutige Zeichenkette einmal in einer Shared-String-Tabelle speichert und über einen numerischen Index referenziert (z. B. <v>0</v>, <v>1</v>).
  • Warum XLSX dramatisch komprimiert:
    • Numerische Zeilenaufzeichnungen (sheet1.xml) folgen einer repetitiven, vorhersehbaren Syntax.
    • DEFLATE erkennt leicht wiederholende Muster in tabellarischem XML. Es ist üblich, dass eine rohe sheet1.xml‑Datei von 120 MB auf weniger als 6 MB innerhalb eines XLSX‑Archivs schrumpft.

C. PPTX: Medienintensive Folienpräsentationen

Präsentationen unterscheiden sich grundlegend von Dokumenten und Tabellenkalkulationen:

  • Das Bild-Dilemma: PPTX‑Dateien werden typischerweise von Vektorformen, Hintergrundgrafiken, Videoclips und hochauflösenden Folien dominiert.
  • Kompressionsprofil: Während ppt/slides/slide1.xml bis slideN.xml effizient komprimiert werden, macht die Medien‑Payload (ppt/media/) 85 % bis 95 % des gesamten Archivsgewichts aus.
  • Warum das erneute Zippen einer PPTX nichts ändert: Wenn Sie versuchen, eine bereits gespeicherte PPTX‑Datei mit 7‑Zip oder WinRAR zu komprimieren, werden Sie kaum eine Größenreduktion bemerken. Da das Innere bereits ein DEFLATE‑komprimiertes ZIP‑Archiv ist, das vorab komprimierte JPEGs und MP4s enthält, ist die Entropie bereits nahezu maximal.

D. EPUB: Webtechnologien mit einem obligatorischen unkomprimierten Header

Eine EPUB‑Datei ist im Wesentlichen eine responsive, verpackte Mikro‑Website, die XHTML‑Kapitel, CSS‑Stylesheets, TTF/WOFF‑Schriften und Metadaten enthält. Allerdings hat EPUB eine strenge Verpackungsregel, die sie von Microsoft‑Office‑Dateien unterscheidet:

EPUB Internal Structure:
├── mimetype                    <-- MUST be uncompressed (Stored) & at byte offset 38
├── META-INF/
│   └── container.xml           <-- Tells reader where the OPF manifest lives
└── OEBPS/ (or EPUB/)
    ├── content.opf             <-- Manifest of all book assets
    ├── toc.ncx / nav.xhtml     <-- Table of contents navigation
    ├── styles/style.css        <-- CSS formatting
    ├── images/                 <-- Book cover & illustrations
    └── text/                   <-- chapter1.xhtml, chapter2.xhtml
  • Die magische mimetype‑Datei:
    • E‑Reader müssen ein EPUB sofort erkennen, ohne das gesamte Archiv zu extrahieren oder Dekompressions‑Pipelines auszuführen.
    • Das Open Container Format (OCF) verlangt, dass die mimetype‑Datei:
      1. Muss die allererste Datei im ZIP‑Archiv sein.
      2. Muss exakt den String application/epub+zip enthalten.
      3. Darf nicht komprimiert werden (ZIP-Komprimierungsmethode 0 / “Stored”).
      4. Darf keine zusätzlichen Felddaten enthalten, sodass die MIME-Zeichenkette immer bei Byte 38 der physischen Datei beginnt.
  • Textkompression: Alle übrigen Dateien (.xhtml, .css, .opf) werden mit dem Standard-DEFLATE (ZIP-Methode 8) komprimiert, wodurch vollständige Romane auf einige hundert Kilobyte schrumpfen können.

4. Vergleich der Kompression über Formate hinweg

FormatKernpayloadPrimäre RedundanzquelleTypisches Kompressionsverhältnis (Text/Markup)Medienverarbeitung
DOCXWordprocessingML (document.xml)Wiederholende XML-Absatz-/Run-Tags75% – 85%Gespeichert in word/media/ (meist vorkomprimiert)
XLSXSpreadsheetML (sheet*.xml)Wiederholende Zellen-/Zeilen-Tags; Gemeinsame Zeichenketten80% – 92%Spärlich; Bilder/Diagramme in xl/media/
PPTXPresentationML (slide*.xml)Metadaten zum Folienlayout, Formkoordinaten70% – 80%Schwere ppt/media/-Datenlast begrenzt die Gesamteinsparungen
EPUBXHTML, CSS, OPF, NCXHTML‑Tags, wiederholende CSS‑Selektoren65% – 80%mimetype unkomprimiert; Medien in Unterordnern

5. Praktische Erkenntnisse: Wie Sie Ihre Dokumente optimieren

Da Sie jetzt wissen, wie die interne Paketierung funktioniert, können Sie Kompressionsmechanismen nutzen, um reale Probleme zu lösen:

  1. Reparatur beschädigter Dokumente: Wenn sich ein Dokument nicht öffnen lässt, ermöglicht das Ändern der Erweiterung zu .zip, dass Sie den Inhalt extrahieren und den Rohtext aus document.xml oder einzelnen Kapiteln aus dem text/‑Verzeichnis des EPUBs wiederherstellen.
  2. Verkleinerung riesiger Office‑Dateien: Da die XML-Komprimierung bereits optimiert ist, werden riesige Dateien fast immer durch nicht optimierte Bilder im media/ verursacht. Anstatt Drittanbieter-PDF- oder DOCX-Kompressoren zu verwenden, öffnen Sie den ZIP-Container, extrahieren die Bilder, führen sie durch einen Bildoptimierer (wie WebP, TinyPNG oder MozJPEG) und ersetzen sie im Archiv.
  3. Automatisierung der Dokumentenerstellung: Entwickler benötigen keine schweren Office‑Suites, um Berichte zu erstellen. Sie können rohe XML‑Vorlagen erzeugen, sie mit Standard‑zlib/ZIP‑Bibliotheken bündeln und programmgesteuert gültige DOCX‑ oder XLSX‑Dateien in Millisekunden ausgeben.

6. Häufig gestellte Fragen (FAQ)

Kann ich eine DOCX‑ oder EPUB‑Datei einfach durch Umbenennen der Dateierweiterung in eine ZIP‑Datei konvertieren? Ja; das Umbenennen der Erweiterung in .zip ermöglicht es jedem Standard‑Archivtool (wie 7‑Zip, macOS Archive Utility oder Windows Explorer), die internen Dateien direkt zu öffnen und zu untersuchen.

Warum wird eine DOCX‑ oder PPTX‑Datei durch Komprimierung mit 7‑Zip nicht merklich kleiner? Weil die Datei bereits ein intern komprimiertes ZIP‑Archiv ist, das DEFLATE‑kodiertes XML und vorab komprimierte Bilder enthält, sodass nur minimale Redundanz für ein externes Tool zum Entfernen verbleibt.

Warum verlangt die EPUB-Spezifikation, dass die mimetype-Datei unkomprimiert ist? Sie ermöglicht es E-Reader-Software, zu überprüfen, dass die Datei ein authentisches EPUB ist, indem sie die MIME-Zeichenkette an einem festen Byte-Offset prüft, ohne einen Dekomprimierungs-Engine initialisieren zu müssen.

Erhöht das Ändern der Zellformatierung in Excel die Größe der komprimierten XLSX-Datei? Ja; umfangreiche benutzerdefinierte Formatierungen brechen die einheitliche Musterwiederholung über Zellen hinweg, wodurch längere XML-Definitionen entstehen, die die Komprimierungseffizienz von DEFLATE verringern.

Ist es möglich, hochauflösende Originalbilder aus einer Word- oder PowerPoint-Datei ohne Qualitätsverlust zu extrahieren? Ja; benennen Sie die Datei in .zip um, öffnen Sie den word/media- oder ppt/media-Ordner, und Sie finden die ursprünglichen, unkomprimierten Quellbilder genau so, wie sie eingefügt wurden.

Siehe auch