<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Komprimering i PPTX on File Format Blog</title>
    <link>https://blog.fileformat.com/sv/tag/komprimering-i-pptx/</link>
    <description>Recent content in Komprimering i PPTX on File Format Blog</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>sv</language>
    <lastBuildDate>Thu, 10 Sep 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://blog.fileformat.com/sv/tag/komprimering-i-pptx/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Hur fungerar komprimering i EPUB, DOCX, XLSX och PPTX?</title>
      <link>https://blog.fileformat.com/sv/compression/how-compression-works-inside-epub-docx-xlsx-and-pptx/</link>
      <pubDate>Thu, 10 Sep 2026 00:00:00 +0000</pubDate>
      
      <guid>https://blog.fileformat.com/sv/compression/how-compression-works-inside-epub-docx-xlsx-and-pptx/</guid>
      <description>Har du någonsin undrat vad som döljer sig under huven på en .docx- eller .epub-fil? Utforska hur ZIP-paketering och DEFLATE-komprimering håller moderna kontorsdokument och e-böcker lätta och organiserade.</description>
      <content:encoded><![CDATA[<p><strong>Senast uppdaterad</strong>: 10 september 2026</p>
<figure class="align-center ">
    <img loading="lazy" src="images/how-compression-works-inside-epub-docx-xlsx-and-pptx.png#center"
         alt="How Compression Works Inside EPUB, DOCX, XLSX, &amp; PPTX: The Hidden ZIP Architecture"/> 
</figure>

<h2 id="hur-komprimering-fungerar-i-epub-docx-xlsx-och-pptx">Hur komprimering fungerar i EPUB, DOCX, XLSX och PPTX</h2>
<p>Om du byter namn på en <code>.docx</code>, <code>.xlsx</code>, <code>.pptx</code> eller <code>.epub</code>-fil till <code>.zip</code> och dubbelklickar på den, händer något överraskande: den ger inget felmeddelande. Ditt operativsystem öppnar den som en mapp fylld med undermappar, XML‑konfigurationsfiler, stilmallar, typsnitt och inbäddade bilder.</p>
<p>Moderna dokumentarkitekturer övergav monolitiska binära massor för decennier sedan. Istället antog branschstandarder—namnligt <strong>Open Packaging Conventions (OPC)</strong> för Microsoft Office och <strong>Open Container Format (OCF)</strong> för EPUB—en förvånansvärt elegant grund: den enkla <strong>ZIP-arkivet</strong>.</p>
<p>Att förstå hur komprimering fungerar i dessa format avslöjar varför moderna dokument är så motståndskraftiga, lätta och utbyggbara—och varför vissa filer komprimeras med 90 % medan andra knappt krymper alls.</p>
<h2 id="1-containerarkitekturen-förklädda-zip9-paket">1. Containerarkitekturen: Förklädda <a href="https://docs.fileformat.com/compression/zip/">ZIP</a> paket</h2>
<p>Innan man förstår komprimeringsalgoritmen i sig är det bra att förstå varför moderna dokumentformat är strukturerade som paket snarare än fristående råa filer.</p>
<h3 id="problemet-med-äldre-binära-format">Problemet med äldre binära format</h3>
<p>Under 1990‑talen och början av 2000‑talen använde Microsoft Office proprietära binära format (<code>.doc</code>, <code>.xls</code>, <code>.ppt</code>). Dessa filer var i princip minnesdumpningar strukturerade kring Compound File Binary Format (CFBF). De var ökända för sin bräcklighet:</p>
<ul>
<li>En enda bitväxling kunde korrupta hela filstrukturen.</li>
<li>Inbäddning av bilder fick filstorlekarna att svälla oförutsägbart.</li>
<li>Parsing krävde reverse‑engineering av täta binära specifikationer.</li>
<li>Plattformsöverskridande interoperabilitet var en mardröm.</li>
</ul>
<h3 id="övergången-till-öppna-modulära-containrar">Övergången till öppna, modulära containrar</h3>
<p>I mitten av 2000-talet skedde två parallella evolutioner:</p>
<ol>
<li><strong>Office Open XML (OOXML / ISO/IEC 29500):</strong> Microsoft introducerade de XML-baserade formaten som slutar med ett <code>x</code> (<a href="https://docs.fileformat.com/word-processing/docx/">DOCX</a>, <a href="https://docs.fileformat.com/spreadsheet/xlsx/">XLSX</a>, <a href="https://docs.fileformat.com/presentation/pptx/">PPTX</a>). Under huven följer dessa filer <strong>Open Packaging Conventions (OPC)</strong>.</li>
<li><strong><a href="https://docs.fileformat.com/ebook/epub/">EPUB</a> (IDPF / W3C):</strong> Digital publicering gick bort från proprietära läsarformat och övergick till standard webbteknik (HTML, CSS, SVG) som paketeras i <strong>EPUB Open Container Format (OCF)</strong>.</li>
</ol>
<p>Båda arkitekturerna bygger på standard <strong>PKZIP 2.0 / ZIP-specifikationen</strong>. Filändelsen bestämmer helt enkelt det förväntade schemat, standardvisningsprogrammet och MIME-typdeklarationerna.</p>
<pre tabindex="0"><code>Sample DOCX File (Unzipped):
├── [Content_Types].xml        &lt;-- Registry of MIME types for parts
├── _rels/                     &lt;-- Package-level relationships
│   └── .rels
├── docProps/                  &lt;-- Core and extended metadata
│   ├── app.xml
│   └── core.xml
└── word/                      &lt;-- Main content payload
    ├── document.xml           &lt;-- Text, paragraphs, and tags
    ├── styles.xml             &lt;-- Typography and presets
    ├── numbering.xml          &lt;-- Lists and counters
    ├── media/                 &lt;-- Embedded images (PNG, JPG)
    └── _rels/
        └── document.xml.rels  &lt;-- Internal hyperlinks &amp; resource pointers
</code></pre><h2 id="2-motorn-under-huven-deflate-algoritmen">2. Motorn under huven: DEFLATE-algoritmen</h2>
<p>När ett mjukvaruprogram sparar en DOCX- eller EPUB-fil lagrar det inte bara filer i ett okomprimerat arkiv. Det komprimerar de interna resurserna med <strong>DEFLATE</strong> (specificerad i RFC 1951).</p>
<p>DEFLATE är ett tvåstegs förlustfritt komprimeringssystem som kombinerar två grundläggande datavetenskapliga algoritmer:</p>
<h3 id="steg-1-lz77-lempel-ziv-1977--borttagning-av-redundans-med-glidande-fönster">Steg 1: LZ77 (Lempel-Ziv 1977) — Borttagning av redundans med glidande fönster</h3>
<p>XML och HTML är extremt utförliga. Tänk på hur ofta taggar förekommer i en standard <code>document.xml</code>- eller <code>chapter1.xhtml</code>-fil:</p>
<ul>
<li><code>&lt;w:p&gt;&lt;w:r&gt;&lt;w:rPr&gt;&lt;w:sz w:val=&quot;24&quot;/&gt;&lt;/w:rPr&gt;&lt;w:t&gt;</code> upprepas tusentals gånger i Word.</li>
<li><code>row r=\&quot;1\&quot; spans=\&quot;1:15\&quot;&gt;&lt;c r=\&quot;A1\&quot; t=\&quot;s\&quot;&gt;&lt;v&gt;</code> upprepas i Excel över tiotusentals celler.</li>
<li><code>&lt;p class=\&quot;calibre1\&quot;&gt;&lt;span class=\&quot;body-text\&quot;&gt;</code> upprepas över EPUB-bokkapitel.</li>
</ul>
<p>LZ77 skannar dataströmmen med ett glidande ordboksfönster (vanligtvis 32 KB). När den stöter på en teckensträng som den nyligen har sett, ersätter den den duplicerade texten med en liten bakåtpil:</p>
<ul>
<li><code>(distance, length)</code> — t.ex. &quot;gå tillbaka 142 byte, kopiera 28 byte&quot;.</li>
</ul>
<p>Istället för att lagra utförlig markup om och om igen, komprimerar LZ77 tusentals repetitiva XML-taggar till kompakta koordinatreferenser.</p>
<h3 id="steg-2-huffmankodning--variabel-längdkodning-av-frekvens">Steg 2: Huffmankodning — Variabel längdkodning av frekvens</h3>
<p>Efter att LZ77 har ersatt redundanta sekvenser med längd‑avstånd‑token, analyserar <strong>Huffman‑kodning</strong> frekvensen för varje symbol i strömmen:</p>
<ul>
<li>Frekvent förekommande symboler (som vanliga tecken <code>e</code>, <code>t</code>, mellanslag eller vanliga avståndsmarkörer) tilldelas korta binära bitkoder (t.ex. 2 till 4 bitar).</li>
<li>Sällan använda symboler får längre binära bitkoder (t.ex. 12 till 16 bitar).</li>
</ul>
<p>Resultatet är en ström av variabel‑längd bitkoder som komprimerar vanlig text‑XML med <strong>75 % till 88 %</strong>.</p>
<h2 id="3-format-för-format-genomgång-hur-varje-hanterar-komprimering">3. Format-för-format-genomgång: Hur varje hanterar komprimering</h2>
<p>Även om DOCX, XLSX, PPTX och EPUB alla använder samma ZIP‑omslag, skiljer deras interna datakarakteristik sig kraftigt.</p>
<h3 id="a-docx-balansakten-mellan-text-och-stil">A. DOCX: Balansakten mellan text och stil</h3>
<ul>
<li><strong>Vad som finns:</strong> Vanlig XML (<code>word/document.xml</code>), teckensnittstabeller, stilar, relationskataloger och en <code>word/media/</code>‑mapp.</li>
<li><strong>Hur komprimeringen presterar:</strong>
<ul>
<li>Den råa texten och XML‑markupen uppnår enorma komprimeringsförhållanden (ofta minskar från 5 MB rå XML till 500 KB).</li>
<li>Moderna dokument innehåller dock ofta skärmdumpar, illustrationer och foton. Eftersom JPEG‑ och PNG‑filer är <strong>redan komprimerade</strong>, kan DEFLATE inte krympa dem ytterligare. Faktum är att köra DEFLATE på en redan komprimerad bild ger i praktiken 0 % besparing (och kan till och med öka storleken något på grund av komprimeringshuvuden).</li>
<li>Följaktligen är DOCX‑filer utan bilder exceptionellt små, medan bildtunga rapporter nästan exakt motsvarar storleken på de bildfiler de innehåller.</li>
</ul>
</li>
</ul>
<h3 id="b-xlsx-stordata-med-numeriska-värden--delade-strängar">B. XLSX: Stordata med numeriska värden &amp; delade strängar</h3>
<p>Kalkylblad utgör en unik utmaning: ett blad kan innehålla hundratusentals rader, vilket leder till astronomiska XML‑filstorlekar om de inte hanteras smart.</p>
<ul>
<li><strong>Strategin för delade strängar (<code>xl/sharedStrings.xml</code>):</strong>
<ul>
<li>Om en textetikett som &ldquo;United States&rdquo; eller &ldquo;In Progress&rdquo; visas 50 000 gånger i ett kalkylblad, skulle lagring av <code>&lt;c t=&quot;inlineStr&quot;&gt;&lt;is&gt;&lt;t&gt;United States&lt;/t&gt;&lt;/is&gt;&lt;/c&gt;</code> i 50 000 celler blåsa upp den okomprimerade XML-filen till gigabyte.</li>
<li>Excel avduplicerar text innan komprimering genom att lagra varje unik sträng en gång i en delad strängtabell och referera den med ett numeriskt index (t.ex. <code>&lt;v&gt;0&lt;/v&gt;</code>, <code>&lt;v&gt;1&lt;/v&gt;</code>).</li>
</ul>
</li>
<li><strong>Varför XLSX komprimeras dramatiskt:</strong>
<ul>
<li>Numeriska radposter (<code>sheet1.xml</code>) följer repetitiv, förutsägbar syntax.</li>
<li>DEFLATE upptäcker enkelt repetitiva mönster i tabulär XML. Det är vanligt att en rå <code>sheet1.xml</code>-fil på 120 MB krymper till mindre än 6 MB i ett XLSX‑arkiv.</li>
</ul>
</li>
</ul>
<h3 id="c-pptx-mediatunga-bildspel">C. PPTX: Mediatunga bildspel</h3>
<p>Presentationer är i grunden annorlunda än dokument och kalkylblad:</p>
<ul>
<li><strong>Bilddilemmat:</strong> PPTX-filer domineras vanligtvis av vektorformer, bakgrundsgrafik, videoklipp och högupplösta bilder.</li>
<li><strong>Komprimeringsprofil:</strong> Medan <code>ppt/slides/slide1.xml</code> till <code>slideN.xml</code> komprimeras effektivt, står mediepayloaden (<code>ppt/media/</code>) för 85% till 95% av den totala arkivvikten.</li>
<li><strong>Varför om‑zippning av en PPTX inte förändrar någonting:</strong> Om du försöker komprimera en redan sparad PPTX‑fil med 7‑Zip eller WinRAR, kommer du märka nästan ingen storleksreduktion. Eftersom innehållet redan är ett DEFLATE‑komprimerat ZIP‑arkiv som innehåller förkomprimerade JPEG‑filer och MP4‑filer, är entropin redan nära maximum.</li>
</ul>
<h3 id="d-epub-webteknologier-med-ett-obligatoriskt-okomprimerat-huvud">D. EPUB: Webteknologier med ett obligatoriskt okomprimerat huvud</h3>
<p>En EPUB‑fil är i huvudsak en responsiv, paketerad mikro‑webbplats som innehåller XHTML‑kapitel, CSS‑stilmallar, TTF/WOFF‑typsnitt och metadata. EPUB har dock en strikt paketeringsregel som skiljer den från Microsoft Office‑filer:</p>
<pre tabindex="0"><code>EPUB Internal Structure:
├── mimetype                    &lt;-- MUST be uncompressed (Stored) &amp; at byte offset 38
├── META-INF/
│   └── container.xml           &lt;-- Tells reader where the OPF manifest lives
└── OEBPS/ (or EPUB/)
    ├── content.opf             &lt;-- Manifest of all book assets
    ├── toc.ncx / nav.xhtml     &lt;-- Table of contents navigation
    ├── styles/style.css        &lt;-- CSS formatting
    ├── images/                 &lt;-- Book cover &amp; illustrations
    └── text/                   &lt;-- chapter1.xhtml, chapter2.xhtml
</code></pre><ul>
<li><strong>Den magiska <code>mimetype</code>‑filen:</strong>
<ul>
<li>E‑läsare måste identifiera en EPUB omedelbart utan att extrahera hela arkivet eller köra dekomprimeringspipelines.</li>
<li>Open Container Format (OCF) kräver att <code>mimetype</code>‑filen:
<ol>
<li>Måste vara den allra första filen i ZIP‑arkivet.</li>
<li>Måste innehålla exakt strängen <code>application/epub+zip</code>.</li>
<li><strong>Får inte komprimeras</strong> (ZIP-komprimeringsmetod <code>0</code> / &ldquo;Stored&rdquo;).</li>
<li>Får inte ha extra fältdata, vilket säkerställer att MIME-strängen alltid börjar vid byte 38 i den fysiska filen.</li>
</ol>
</li>
</ul>
</li>
<li><strong>Textkomprimering:</strong> Alla återstående filer (<code>.xhtml</code>, <code>.css</code>, <code>.opf</code>) komprimeras med standard DEFLATE (ZIP-metod <code>8</code>), vilket gör att hela romaner kan krympa till några hundra kilobyte.</li>
</ul>
<h2 id="4-jämföra-komprimering-mellan-format">4. Jämföra komprimering mellan format</h2>
<table>
<thead>
<tr>
<th style="text-align:left">Format</th>
<th style="text-align:left">Kärnlast</th>
<th style="text-align:left">Primär redundanskälla</th>
<th style="text-align:left">Typisk komprimeringsgrad (Text/Markup)</th>
<th style="text-align:left">Mediehantering</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align:left"><strong>DOCX</strong></td>
<td style="text-align:left">WordprocessingML (<code>document.xml</code>)</td>
<td style="text-align:left">Upprepade XML-paragraf-/kör-taggar</td>
<td style="text-align:left">75% – 85%</td>
<td style="text-align:left">Lagrad i <code>word/media/</code> (mest förkomprimerad)</td>
</tr>
<tr>
<td style="text-align:left"><strong>XLSX</strong></td>
<td style="text-align:left">SpreadsheetML (<code>sheet*.xml</code>)</td>
<td style="text-align:left">Upprepade cell-/rad-taggar; delade strängar</td>
<td style="text-align:left">80% – 92%</td>
<td style="text-align:left">Sparsamt; bilder/diagram i <code>xl/media/</code></td>
</tr>
<tr>
<td style="text-align:left"><strong>PPTX</strong></td>
<td style="text-align:left">PresentationML (<code>slide*.xml</code>)</td>
<td style="text-align:left">Metadata för bildlayout, formkoordinater</td>
<td style="text-align:left">70% – 80%</td>
<td style="text-align:left">Tung <code>ppt/media/</code>-payload begränsar den totala besparingen</td>
</tr>
<tr>
<td style="text-align:left"><strong>EPUB</strong></td>
<td style="text-align:left">XHTML, CSS, OPF, NCX</td>
<td style="text-align:left">HTML-taggar, repetitiva CSS-väljare</td>
<td style="text-align:left">65% – 80%</td>
<td style="text-align:left"><code>mimetype</code> okomprimerad; media i undermappar</td>
</tr>
</tbody>
</table>
<h2 id="5-praktiska-slutsatser-hur-du-optimerar-dina-dokument">5. Praktiska slutsatser: Hur du optimerar dina dokument</h2>
<p>Eftersom du nu vet hur intern paketering fungerar kan du utnyttja komprimeringsmekanismer för att lösa verkliga problem:</p>
<ol>
<li><strong>Åtgärda korrupta dokument:</strong>
Om ett dokument vägrar att öppnas, gör du så att ändra filändelsen till <code>.zip</code> så kan du extrahera innehållet och återställa råtexten från <code>document.xml</code> eller enskilda kapitel från EPUB:s <code>text/</code>-katalog.</li>
<li><strong>Krympa enorma Office-filer:</strong>
Eftersom XML-komprimering redan är optimerad, beror stora filer nästan alltid på icke-optimerade bilder i <code>media/</code>. Istället för att använda tredjeparts PDF- eller DOCX-kompressorer, öppna ZIP-behållaren, extrahera bilderna, kör dem genom en bildoptimerare (som WebP, TinyPNG eller MozJPEG) och ersätt dem i arkivet.</li>
<li><strong>Automatisering av dokumentgenerering:</strong>
Utvecklare behöver inte tunga kontorssviter för att skapa rapporter. Du kan generera råa XML-mallar, paketera dem med standard zlib/ZIP-bibliotek och programatiskt producera giltiga DOCX- eller XLSX-filer på millisekunder.</li>
</ol>
<h2 id="6-vanliga-frågor-faq">6. Vanliga frågor (FAQ)</h2>
<p><strong>Kan jag konvertera en DOCX eller EPUB till en ZIP-fil bara genom att byta filändelse?</strong> Ja; att byta namn på ändelsen till <code>.zip</code> gör att vilket standardarkivverktyg som helst (som 7-Zip, macOS Archive Utility eller Windows Explorer) kan öppna och inspektera de interna filerna direkt.</p>
<p><strong>Varför blir en DOCX eller PPTX inte märkbart mindre när den komprimeras med 7-Zip?</strong> Eftersom filen redan är ett internt komprimerat ZIP-arkiv som innehåller DEFLATE-kodad XML och förkomprimerade bilder, vilket lämnar minimal redundans för ett externt verktyg att ta bort.</p>
<p><strong>Varför kräver EPUB-specifikationen att <code>mimetype</code>-filen är okomprimerad?</strong> Det gör att e-boksläsarprogram kan verifiera att filen är en autentisk EPUB genom att kontrollera MIME-strängen på ett fast byteoffset utan att behöva initiera en dekomprimeringsmotor.</p>
<p><strong>Ökar ändring av cellformatering i Excel den komprimerade XLSX-filens storlek?</strong> Ja; omfattande anpassad formatering bryter den enhetliga mönsterupprepningen över celler, vilket skapar längre XML-definitioner som minskar DEFLATE:s komprimeringseffektivitet.</p>
<p><strong>Är det möjligt att extrahera högupplösta originalbilder från en Word- eller PowerPoint-fil utan kvalitetsförlust?</strong> Ja; byt namn på filen till <code>.zip</code>, öppna <code>word/media</code>- eller <code>ppt/media</code>-mappen, så hittar du de ursprungliga, okomprimerade källbilderna exakt som de infördes.</p>
<h2 id="se-även">Se även</h2>
<ul>
<li><a href="https://blog.fileformat.com/compression/compression-file-formats-at-fileformat-com/">Komprimeringsfilformat på FileFormat.com</a></li>
<li><a href="https://blog.fileformat.com/compression/zip-bombs-exploding-your-storage/">ZIP-bomber – Exploderar din lagring</a></li>
<li><a href="https://blog.fileformat.com/compression/what-is-7z-file-format-comprehensive-guide-and-faqs/">Förstå 7z-filformatet - Omfattande guide och vanliga frågor</a></li>
<li><a href="https://blog.fileformat.com/compression/how-to-open-rar-files-with-best-rar-openers/">De 7 bästa verktygen för att öppna eller extrahera RAR-filer</a></li>
</ul>
<!-- raw HTML omitted -->
]]></content:encoded>
    </item>
    
  </channel>
</rss>
