Utoljára frissítve: 28 július, 2026

TL;DR A CBZ (Comic Book Zip) nem más, mint egy szabványos ZIP archívum, amely egy sor egymást követő képfájlt—plusz opcionális metaadatokat—egyetlen, DRM‑mentes képregény konténerbe csomagol. Mivel az általános ZIP formátumra támaszkodik, bármely archiváló eszköz megnyithatja, és az olvasók egyszerűen ábécé sorrendbe rendezik a képeket, hogy a lapokat sorrendben jelenítsék meg. A modern CBZ-k gyakran tartalmazzák a ComicInfo.xml-t a gazdag könyvtári adatokhoz, hatékony képcodeceket használnak, mint a WebP/AVIF, és még HTML-t is beágyaznak az interaktív „bővített” képregényekhez.
Mi pontosan a CBZ?
- Név: Comic Book Zip – egy ZIP fájl a
.cbzkiterjesztéssel. - MIME típus:
application/vnd.comicbook+zip(az IANA-nál 2012-ben regisztrálva). - Eredet: A ComicRack közösség (2005‑2008) népszerűsítette, mint nyílt forráskódú alternatívát a CBR vagy PDF szerű zárt formátumokhoz.
- Kereszt‑platform: Bármely ZIP‑kompatibilis segédprogrammal (7‑Zip, WinRAR, macOS Archive Utility, Linux
unzip) megnyitható. Nem szükséges speciális szoftver a tartalom megtekintéséhez.
Gyakorlatban a CBZ csak egy képmappát (JPEG, PNG, WebP stb.) tartalmaz, amelyet zip‑eltünk és átneveztünk. Ez az egyszerűség teszi a de‑facto szabvánnyá a digitális képregények számára PC‑ken, táblagépeken és telefonokon.
A CBZ belseje: A fájlstruktúra
Egy jól felépített CBZ lapos hierarchiát követ – nincs extra beágyazás –, így az olvasók azonnal megtalálják az oldalakat. Alább egy tipikus fájlfaszerkezet látható:
MyComic.cbz
│
├─ 001.jpg ← first page (front cover)
├─ 002.jpg
├─ 003.jpg
│ …
├─ 050.jpg ← last page (back cover)
├─ ComicInfo.xml ← optional rich metadata
└─ cover.jpg ← optional thumbnail for library views
Kulcsfontosságú elemek
| Elem | Mi ez | Miért fontos |
|---|---|---|
| Szekvenciális képfájlok | Elnevezve úgy, hogy betűrendben rendeződjenek (001.jpg, 002.jpg, …) | Biztosítja a helyes oldalsorrendet minden olvasóban. |
| Képformátum | JPEG, PNG, GIF, WebP, AVIF, BMP, TIFF | Meghatározza a fájlméretet, a vizuális hűséget és az eszközkompatibilitást. |
| ComicInfo.xml | Opcionális XML a ComicRack séma szerint | Tárolja a címet, szerzőt, sorozatot, számot, nyelvet, oldal‑típus jelzőket, sőt a bélyegkép adatokat is. Lehetővé teszi a hatékony könyvtárkezelést. |
| Borítókép | cover.jpg/cover.png a gyökérben | Sok alkalmazás használja a képregény bélyegképét a galériákban. |
| Unicode fájlnevek | A modern ZIP támogatja az UTF‑8-at | Elengedhetetlen a nem latin címekhez és a nemzetközi képregényekhez. |
| ZIP központi könyvtár | Index az archívum végén | Az olvasók ezt beolvassák, hogy gyorsan felépítsék az oldallistát; a sérülés itt tönkreteheti az egész CBZ-t. |
Mivel az archívum csak már tömörített képeket tömörít, a végső méret általában csak az eredeti fájlok összege plusz néhány kilobájt ZIP-túlterhelés (< 5 %).
Metaadatok varázsa: ComicInfo.xml és oldal‑típus jelzők
Miközben egy CBZ tökéletesen működik extra fájlok nélkül, egy ComicInfo.xml hozzáadása egyszerű képkupacot kereshetővé, gazdagon leírt képregénnyé alakít. Íme egy minimális példa:
<?xml version="1.0" encoding="utf-8"?>
<ComicInfo>
<Title>Starship Voyager</Title>
<Series>Space Adventures</Series>
<Number>12</Number>
<Writer>Jane Doe</Writer>
<Penciller>John Smith</Penciller>
<Inker>Alex Lee</Inker>
<Publisher>Galaxy Press</Publisher>
<Year>2024</Year>
<LanguageISO>en</LanguageISO>
<PageCount>50</PageCount>
<Pages>
<Page Image="001.jpg" Type="FrontCover"/>
<Page Image="002.jpg" Type="Story"/>
<Page Image="025.jpg" Type="DoublePage"/>
<Page Image="050.jpg" Type="BackCover"/>
</Pages>
</ComicInfo>
Miért is gond?
- Könyvtári eszközök (ComicRack, Calibre, stb.) képesek rendezni, szűrni és keresni ezek alapján a mezők szerint.
- Oldaltípus jelzők (
FrontCover,BackCover,Advert,Deleted, stb.) lehetővé teszik az olvasók számára, hogy elrejtsék a hirdetéseket, csak a történetoldalakat mutassák, vagy egy egyedi borítóminiatűröt jelenítsenek meg. - Jövőbiztosítás – Ahogy a Digital Comics Initiative a CBZ v2.0 specifikációt dolgozza ki, egy manifest fájl (
manifest.json) kötelezővé válhat, de a meglévő olvasók továbbra is támogatni fogják aComicInfo.xml-t.
CBZ fájlok létrehozása és konvertálása (lépésről‑lépésre)
1. Készítsd elő a képeidet
- Exportáld minden képregényoldalt képként.
- Nevezd el őket nullával kitöltött számokkal (
001.jpg,002.jpg, …), hogy garantáld a helyes rendezést. - Válaszd ki a közönségednek megfelelő kodeket: JPEG a legkisebb méretért, PNG a veszteségmentes grafikáért, WebP/AVIF a modern, magas minőségű tömörítésért.
2. (Opcionális) Metaadatok generálása
Az olyan eszközök, mint a ComicTagger, a cbr2cbz, vagy egyedi szkriptek automatikusan kitölthetik a ComicInfo.xml-t OCR + LLM-ek használatával. Ez a lépés opcionális, de nagy könyvtárak esetén erősen ajánlott.
3. Csomagold be ZIP‑be
# Navigate to the folder containing the pages
cd /path/to/pages
# Create a CBZ without extra compression (JPEGs are already compressed)
zip -0 -r ../MyComic.cbz *.jpg *.png ComicInfo.xml cover.jpg
# -0 = store (no compression) – speeds up the process
Nevezze át a kapott .zip fájlt .cbz-re, ha a tömörítő nem tette meg automatikusan.
4. Ellenőrizd az archívumot
import zipfile, pathlib, sys
def list_pages(cbz_path: pathlib.Path):
with zipfile.ZipFile(cbz_path, 'r') as z:
# Guard against zip‑bombs (max 500 MB uncompressed)
total = sum(z.getinfo(name).file_size for name in z.namelist())
if total > 500 * 1024 * 1024:
raise ValueError("Archive too large")
images = [n for n in z.namelist()
if n.lower().endswith(('.jpg', '.jpeg', '.png', '.webp', '.avif'))]
images.sort() # natural alphabetical order
return images
if __name__ == "__main__":
cbz = pathlib.Path(sys.argv[1])
for page in list_pages(cbz):
print(page)
A python list_pages.py MyComic.cbz futtatása egy tiszta, rendezett oldalfájlnevek listáját kell, hogy kiírja.
5. Konvertáld PDF‑be (ha nyomtatható verzióra van szükséged)
unzip -q MyComic.cbz -d tmp_pages
convert tmp_pages/*.jpg MyComic.pdf # ImageMagick's `convert`
rm -r tmp_pages
Trendek, biztonság és a CBZ jövője
| Trend | Mi történik | Hatás a CBZ-re |
|---|---|---|
| Web‑first terjesztés | A kiadók a CBZ-ket felhő tárolóban helyezik el előre aláírt URL-ekkel. | Gyorsabb, DRM‑mentes letöltések; egyszerűbb ön‑kiadás. |
| Hibrid/interaktív képregények | Az index.html + eszközök hozzáadása az archívumba “fejlett” képregényeket hoz létre (audio, video, HTML5). | Azok az olvasók, amelyek támogatják a webes nézetet, megjeleníthetik a multimédiás rétegeket. |
| A WebP és AVIF elterjedése | ~15 % az új kiadásokból (2024) használja ezeket a kodekeket. | 30‑50 % méretcsökkenés a minőség megőrzése mellett—kritikus a mobil sávszélességhez. |
| AI‑által generált metaadatok | Az olyan eszközök, mint a ComicTagger, most OCR‑t és LLM‑eket használnak a ComicInfo.xml kitöltéséhez. | Jobb felfedezhetőség, automatikus címkézés és könyvtár-szervezés. |
| Felhő‑szinkronizált olvasóalkalmazások | A Chunky, a Perfect Viewer és mások a Firebase/iCloud segítségével szinkronizálják az előrehaladást. | Zökkenőmentes olvasás telefonokon, táblagépeken és asztali gépeken. |
| Szabványosítási törekvés (CBZ v2.0) | A DCI kötelező manifest.json‑t, több felbontású eszközöket és egy <DRM> jelzőt javasol. | Ez robusztusabbá teszi a CBZ‑t a nagy DPI‑es eszközökön, valamint opcionális jogkezelést biztosít. |
| Biztonságtudatosság | A Zip‑bomb támadások (kicsi ZIP → gigabájtok kicsomagoláskor) valódi fenyegetésnek számítanak. | Az olvasók most kényszerítik a kicsomagolási méretkorlátokat, és biztonságos könyvtárakat használnak (például a Python zipfile modulját ellenőrzésekkel). |
Biztonsági tipp fejlesztőknek
Mindig ellenőrizze a teljes kitömörített méretet kicsomagolás előtt egy CBZ esetén. Egy egyszerű ellenőrzés (ahogy a Python kódrészletben látható) megakadályozza, hogy a rosszindulatú archívumok kimerítsék a lemezterületet vagy a memóriát.
Hogyan jeleníti meg egy olvasó valójában a CBZ-t
- Nyissa meg az archívumot – Az alkalmazás beolvassa a ZIP központi könyvtárát, hogy gyors indexet kapjon a bejegyzésekről.
- Szűrje ki a képfájlokat – A nem képfájl bejegyzéseket (
ComicInfo.xml,__MACOSX/, stb.) figyelmen kívül hagyja. - Rendezze alfabetikusan – A nullával kitöltött elnevezés miatt a rendezett lista megegyezik a kívánt oldalsorrenddel.
- Metaadatok feldolgozása – Ha létezik a
ComicInfo.xml, az olvasó kinyeri az oldal‑típusú jelzőket, címet, szerzőt stb., és elrejtheti aAdvertvagyDeletedjelölésű oldalakat. - Oldalak renderelése – A képeket dekódolják (gyakran hardveresen gyorsított JPEG/WebP dekóderekkel a modern e‑ink táblagépeken), és egyesével jelenítik meg, előtöltve a következő néhány oldalt a sima görgetés érdekében.
- Állapot megőrzése – Az olvasási pozíció, a könyvjelzők és a jegyzetek helyileg mentésre kerülnek vagy a felhőbe szinkronizálódnak, az alkalmazástól függően.
Ez a folyamatlánc teszi lehetővé, hogy a CBZ olyan gyors és reagálóképes legyen, mint egy natív PDF, miközben teljesen nyílt és szerkeszthető marad.
Összegzés: A CBZ eleganciája az egyszerűségében rejlik — egy egyszerű ZIP, amelyet bárki megnyithat, szerkeszthet vagy újrahasznosíthat. Opcionális ComicInfo.xml metaadatokkal, modern kép kodekekkel és feltörekvő szabványokkal folyamatosan fejlődik, miközben hű marad DRM‑mentes, többplatformos gyökereihez.