Son Yenilənmə: 10 Sentyabr, 2026

EPUB, DOCX, XLSX və PPTX-də Sıxışdırmanın Necə İşlədiyi
Əgər bir .docx, .xlsx, .pptx və ya .epub faylını .zip olaraq adlandırıb iki dəfə klikləsəniz, gözlənilməz bir şey baş verir: səhv mesajı vermir. Əməliyyat sisteminiz onu alt qovluqlar, XML konfiqurasiya faylları, stil cədvəlləri, şriftlər və yerləşdirilmiş şəkillərlə dolu bir qovluq kimi açır.
Müasir sənəd arxitekturaları on illər əvvəl monolitik ikili blokları tərk etdi. Onların yerinə, sənaye standartları — xüsusilə Microsoft Office üçün Open Packaging Conventions (OPC) və EPUB üçün Open Container Format (OCF) — təəccüblü dərəcədə zərif bir əsas qəbul etdi: sadə ZIP arxivi.
Bu formatlarda sıxışdırmanın necə işlədiyini anlamaq, müasir sənədlərin niyə bu qədər dayanıqlı, yüngül və genişlənə bilən olduğunu və bəzi faylların niyə 90% sıxışdırıldığını, digərlərinin isə demək olar ki, heç azalmadığını göstərir.
1. Konteyner Memarlığı: Gizlədilmiş ZIP Paketləri
Sıxışdırma alqoritmini özünü anlamaqdan əvvəl, müasir sənəd formatlarının niyə müstəqil xam fayllar deyil, paketlər kimi qurulduğunu anlamaq faydalıdır.
Köhnə İkili Formatlarla Bağlı Problem
1990-cı illərdən 2000-ci illərin əvvəllərinə qədər Microsoft Office özəl ikili formatlardan (.doc, .xls, .ppt) istifadə edirdi. Bu fayllar əsasən Compound File Binary Format (CFBF) ətrafında qurulmuş yaddaş dökümləri idi. Onlar məşhur dərəcədə həssas idi:
- Tək bir bit dəyişməsi bütün fayl strukturunu poza bilər.
- Şəkillərin yerləşdirilməsi fayl ölçülərinin gözlənilməz şəkildə şişməsinə səbəb olurdu.
- Təhlil sıx ikili spesifikasiyaların ters mühəndisliyini tələb edirdi.
- Platformalararası uyğunluq bir dəhşət idi.
Açıq, Modullu Konteynerlərə Keçid
2000-ci illərin ortalarında iki paralel təkamül baş verdi:
- Office Open XML (OOXML / ISO/IEC 29500): Microsoft XML‑əsaslı formatları
xilə bitən şəkildə təqdim etdi (DOCX, XLSX, PPTX). Arxa planda bu fayllar Open Packaging Conventions (OPC) standartına uyğun gəlir. - EPUB (IDPF / W3C): Rəqəmsal nəşriyyat özəl oxuyucu formatlarından standart veb texnologiyalara (HTML, CSS, SVG) keçdi və EPUB Open Container Format (OCF) daxilində paketləşdirildi.
Hər iki arxitektura standart PKZIP 2.0 / ZIP spesifikasiyası‑na əsaslanır. Fayl uzantısı sadəcə gözlənilən sxemi, standart görüntüləyici tətbiqi və mime‑type bəyanatlarını təyin edir.
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. Kaput Altındakı Mühərrik: DEFLATE Alqoritmi
Bir proqram tətbiqi DOCX və ya EPUB faylını saxladıqda, faylları sadəcə sıxılmamış arxivə yerləşdirmir. O, daxili aktivləri DEFLATE (RFC 1951‑də təyin olunmuş) ilə sıxır.
DEFLATE iki pilləli itkisiz sıxılma sistemidir və iki əsas kompüter elmi alqoritmini birləşdirir:
Addım 1: LZ77 (Lempel-Ziv 1977) — Sürüşən Pəncərə Təkrarlılıq Azaldılması
XML və HTML çox sözlüdür. Standart document.xml və ya chapter1.xhtml faylında teqlərin nə qədər tez-tez göründüyünü düşünün:
<w:p><w:r><w:rPr><w:sz w:val=\"24\"/></w:rPr><w:t>Word‑də minlərlə dəfə təkrarlanır.row r="1" spans="1:15"><c r="A1" t="s"><v>Excel-də on minlərlə hüceyrə boyunca təkrarlanır.<p class="calibre1"><span class="body-text">EPUB kitab bölmələri boyunca təkrarlanır.
LZ77 məlumat axınını sürüşən lüğət pəncərəsi (adətən 32 KB) ilə skan edir. Son zamanlarda gördüyü bir simvol ardıcıllığı ilə qarşılaşdıqda, təkrarlanan mətnı kiçik bir geriyə yönəlmiş göstərici ilə əvəz edir:
(distance, length)— məsələn, “142 bayta geri get, 28 baytı kopyala”.
Uzun markup-ı təkrar-təkrar saxlamamaq üçün, LZ77 minlərlə təkrarlanan XML teqlərini sıx koordinat istinadlarına yığır.
Addım 2: Huffman Kodlaşdırması — Dəyişkən Uzunluqlu Tezlik Kodlaşdırması
LZ77 redundant ardıcıllıqları uzunluq-məsafə tokenləri ilə əvəz etdikdən sonra, Huffman kodlaşdırması axındakı hər bir simvolun tezliyini təhlil edir:
- Tez-tez görünən simvollar (məsələn, ümumi simvollar
e,t, boşluqlar və ya ümumi məsafə işarələri) qısa ikili bit kodlarına təyin edilir (məsələn, 2‑dən 4‑bitə). - Nadir istifadə olunan simvollar daha uzun ikili bit kodları alır (məsələn, 12‑dən 16‑bitə).
Nəticə, dəyişkən uzunluqlu bit kodlarından ibarət bir axındır ki, sadə mətn XML‑ni %75‑%88 qədər sıxışdırır.
3. Format-Üzrə Təhlil: Hər Biri Sıxışdırmanı Necə İdarə Edir
DOCX, XLSX, PPTX və EPUB eyni ZIP qabını istifadə etsələr də, daxili məlumat xüsusiyyətləri vahşi şəkildə fərqlənir.
A. DOCX: Mətn və Stil Balans Aktı
- Nə var içində: Sadə XML (
word/document.xml), şrift cədvəlləri, üslublar, əlaqə kataloqları vəword/media/qovluğu. - Sıxışdırmanın necə işlədiyi:
- Xam mətn və XML işarələməsi böyük sıxışdırma nisbətlərinə məruz qalır (tez-tez xam XML‑in 5 MB‑dən 500 KB‑yə düşməsi kimi).
- Lakin, müasir sənədlər tez-tez ekran görüntüləri, illüstrasiyalar və fotoşəkillər əlavə edir. JPEG və PNG faylları artıq sıxışdırılmış olduğu üçün DEFLATE onları daha da kiçildə bilmir. Əslində, artıq sıxışdırılmış bir şəkil üzərində DEFLATE işlətmək demək olar ki, 0% qənaət gətirir (hətta sıxışdırma başlıqları səbəbindən ölçünü bir qədər artıra da bilər).
- Nəticədə, şəkilsiz DOCX faylları son dərəcə kiçik olur, şəkil‑çoxlu hesabatlar isə özündə saxladığı şəkil fayllarının ölçüsünə demək olar ki, tam bərabər ölçüdə olur.
B. XLSX: Yüksək Həcimli Rəqəmsal Məlumatlar və Paylaşılan Sətirlər
Cədvəllər özünəməxsus bir çətinlik yaradır: bir vərəqdə yüz minlərlə sətir ola bilər, bu da ağıllı idarə edilmədikdə astronomik XML fayl ölçülərinə səbəb olur.
- Paylaşılan Sətir Strategiyası (
xl/sharedStrings.xml):- Əgər bir mətn etiketi, məsələn “United States” və ya “In Progress”, bir cədvəldə 50,000 dəfə görünsə,
<c t="inlineStr"><is><t>United States</t></is></c>kodunu 50,000 hüceyrədə saxlamaq sıxılmamış XML‑i gigabaytlara qədər şişirər. - Excel sıxılmadan əvvəl mətnləri təkrarsızlaşdırır, hər unikal sətiri paylaşılan sətir cədvəlində bir dəfə saxlayır və rəqəmsal indekslə (məsələn,
<v>0</v>,<v>1</v>) istinad edir.
- Əgər bir mətn etiketi, məsələn “United States” və ya “In Progress”, bir cədvəldə 50,000 dəfə görünsə,
- Niyə XLSX Dramatiq Şəkildə Sıxılır:
- Rəqəmsal sətir qeydləri (
sheet1.xml) təkrarlanan, proqnozlaşdırıla bilən sintaksisi izləyir. - DEFLATE, cədvəl XML‑ində təkrarlanan nümunələri asanlıqla aşkar edir. 120 MB ölçülü xam
sheet1.xmlfaylının XLSX arxivində 6 MB‑dan az ölçüyə düşməsi adi haldır.
- Rəqəmsal sətir qeydləri (
C. PPTX: Media-Yüklü Slayd Dəstləri
Təqdimatlar sənədlərdən və cədvəllərdən əsasən fərqlidir:
- Şəkil Dilemması: PPTX faylları adətən vektor formalı obyektlər, fon qrafikləri, video kliplər və yüksək çözünürlüklü slaydlarla dominasiya olunur.
- Sıxışdırma Profili:
ppt/slides/slide1.xml-dənslideN.xml-ə qədər səmərəli şəkildə sıxışdırılır, media yükü (ppt/media/) ümumi arxiv çəkisinin 85%-95%-ni təşkil edir. - Niyə PPTX-i Yenidən Sıxmaq Heç Nə Dəyişmir: Əgər artıq saxlanılmış PPTX faylını 7-Zip və ya WinRAR ilə sıxmağa çalışsanız, ölçüdə demək olar ki, heç bir azalma görməyəcəksiniz. Çünki daxili hissə artıq DEFLATE ilə sıxılmış ZIP arxivi olub, əvvəlcədən sıxılmış JPEG və MP4 fayllarını ehtiva edir, entropiya artıq maksimuma yaxın səviyyədədir.
D. EPUB: Zəruri Sıxılmamış Başlıqla Veb Texnologiyaları
EPUB faylı əsasən XHTML bölmələri, CSS stil cədvəlləri, TTF/WOFF şriftləri və metadata ehtiva edən cavab verən, paketlənmiş mikro‑vebsaytdır. Lakin, EPUB-un Microsoft Office fayllarından fərqləndirən bir sərt paketləmə qaydası var:
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
- Sehrli
mimetypeFaylı:- E‑oxuyucular EPUB‑u bütün arxivi çıxarmadan və ya dekompressiya boru kəmərlərini işə salmadan dərhal tanımalıdır.
- Açıq Konteyner Formatı (OCF)
mimetypefaylının aşağıdakıları təmin etməsini tələb edir:- ZIP arxivində ilk fayl olmalıdır.
application/epub+zipsətrini tam olaraq ehtiva etməlidir.- Sıxılmamalıdır (ZIP sıxılma metodu
0/ “Saxlanılmış”). - Əlavə sahə məlumatı olmamalıdır, MIME sətirinin həmişə fiziki faylın 38-ci baytından başlamasını təmin edir.
- Mətn Sıxılması: Qalan bütün fayllar (
.xhtml,.css,.opf) standart DEFLATE (ZIP metodu8) ilə sıxılır, bu da tam uzunluqdakı romanların bir neçə yüz kilobayta qədər kiçilməsinə imkan verir.
4. Formatlar üzrə Sıxışdırmanın Müqayisəsi
| Format | Əsas Yük | Əsas Təkrarlama Mənbəyi | Tipik Sıxılma Nisbəti (Mətn/İşarələmə) | Media İdarəetməsi |
|---|---|---|---|---|
| DOCX | WordprocessingML (document.xml) | Təkrarlanan XML paraqraf/run teqləri | 75% – 85% | word/media/ qovluğunda saxlanılır (əsasən əvvəlcədən sıxılmış) |
| XLSX | SpreadsheetML (sheet*.xml) | Təkrarlanan hücrə/sətir teqləri; Paylaşılan Sətirlər | 80% – 92% | Seyrek; xl/media/ içindəki şəkillər/qrafiklər |
| PPTX | PresentationML (slide*.xml) | Slayd düzümü metadatası, forma koordinatları | 70% – 80% | Ağır ppt/media/ yükləməsi ümumi qənaətləri məhdudlaşdırır |
| EPUB | XHTML, CSS, OPF, NCX | HTML teqləri, təkrarlanan CSS seçiciləri | 65% – 80% | mimetype sıxılmamış; media alt qovluqlarda |
5. Praktik Nəticələr: Sənədlərinizi Necə Optimallaşdırmaq Olar
İndi daxili paketləmənin necə işlədiyini bildiyiniz üçün, sıxılma mexanizmlərindən istifadə edərək real dünya problemlərini həll edə bilərsiniz:
- Zədələnmiş Sənədlərin Düzəldilməsi:
Əgər sənəd açılmaq istəmirsə, uzantını
.zip-ə dəyişdirmək məzmunu çıxarmağa vədocument.xml‑dən və ya EPUB-untext/qovluğundakı fərdi fəsillərdən xam mətn bərpa etməyə imkan verir. - Nəhəng Ofis Fayllarının Kiçildilməsi:
XML sıxışdırması artıq optimallaşdırıldığı üçün, nəhəng fayllar demək olar ki, həmişə
media/qovluğundakı optimallaşdırılmamış şəkillərdən qaynaqlanır. Üçüncü tərəf PDF və ya DOCX sıxışdırıcılarından istifadə etmək əvəzinə, ZIP konteynerini açın, şəkilləri çıxarın, onları bir şəkil optimallaşdırıcısı (məsələn, WebP, TinyPNG və ya MozJPEG) ilə işlədin və arxivdə əvəz edin. - Sənəd Yaratma Avtomatlaşdırması: Tərtibatçılar hesabatlar yaratmaq üçün ağır ofis paketlərinə ehtiyac duymurlar. Siz xam XML şablonları yarada, onları standart zlib/ZIP kitabxanaları ilə paketləyə və proqram vasitəsilə millisekundlarla etibarlı DOCX və ya XLSX faylları çıxara bilərsiniz.
6. Tez-tez Soruşulan Suallar (FAQ)
DOCX və ya EPUB faylını yalnız fayl uzantısını dəyişərək ZIP faylına çevirə bilərəm? Bəli; uzantını .zip olaraq dəyişdirmək, hər hansı standart arxiv alətinin (məsələn, 7-Zip, macOS Archive Utility və ya Windows Explorer) daxili faylları birbaşa açıb yoxlamasına imkan verir.
DOCX və ya PPTX faylını 7-Zip ilə sıxışdırmaq niyə nəzərəçarpacaq dərəcədə kiçik olmur? Çünki fayl artıq DEFLATE ilə kodlanmış XML və əvvəlcədən sıxışdırılmış şəkilləri ehtiva edən daxili sıxışdırılmış ZIP arxividir, bu da xarici alətin aradan qaldıra biləcəyi minimal təkrarlama buraxır.
EPUB spesifikasiyası niyə mimetype faylının sıxılmamış olmasını tələb edir? Bu, e-oxuyucu proqramına faylın orijinal EPUB olduğunu, MIME sətirini sabit bayt ofsetində yoxlayaraq, sıxma mühərrikini işə salmadan təsdiq etməyə imkan verir.
Excel-də hüceyrə formatını dəyişdirmək sıxılmış XLSX faylının ölçüsünü artırırmı? Bəli; genişmiqyaslı xüsusi formatlama hüceyrələr arasında vahid nümunə təkrarlanmasını pozur, daha uzun XML tərifləri yaradır və bu da DEFLATE sıxma səmərəliliyini azaldır.
Word və ya PowerPoint faylından keyfiyyət itkisi olmadan yüksək çözünürlüklü orijinal şəkilləri çıxarmaq mümkündürmü? Bəli; faylın adını .zip olaraq dəyişdirin, word/media və ya ppt/media qovluğunu açın və orada əlavə edildiyi kimi orijinal, sıxılmamış mənbə şəkillərini tapacaqsınız.