<?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>CBZ on File Format Blog</title>
    <link>https://blog.fileformat.com/hu/tag/cbz/</link>
    <description>Recent content in CBZ on File Format Blog</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>hu</language>
    <lastBuildDate>Tue, 28 Jul 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://blog.fileformat.com/hu/tag/cbz/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>A CBZ belseje – A digitális képregények felépítésének megértése</title>
      <link>https://blog.fileformat.com/hu/ebook/inside-the-cbz-anatomy-of-digital-comics/</link>
      <pubDate>Tue, 28 Jul 2026 00:00:00 +0000</pubDate>
      
      <guid>https://blog.fileformat.com/hu/ebook/inside-the-cbz-anatomy-of-digital-comics/</guid>
      <description>Ismerje meg, mi az a CBZ képregényfájl, egyszerű ZIP felépítése, metaadat‑opciói és a modern képformátumok – megnyitható bármilyen eszközön DRM nélkül.</description>
      <content:encoded><![CDATA[<p><strong>Utoljára frissítve</strong>: 28 július, 2026</p>
<figure class="align-center ">
    <img loading="lazy" src="images/inside-the-cbz-anatomy-of-digital-comics.webp#center"
         alt="Inside the CBZ - Understanding the Anatomy of Digital Comics"/> 
</figure>

<p><strong>TL;DR</strong> 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 <code>ComicInfo.xml</code>-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.</p>
<hr>
<h2 id="mi-pontosan-a-cbz">Mi pontosan a CBZ?</h2>
<ul>
<li><strong>Név</strong>: <em>Comic Book Zip</em> – egy ZIP fájl a <code>.cbz</code> kiterjesztéssel.</li>
<li><strong>MIME típus</strong>: <code>application/vnd.comicbook+zip</code> (az IANA-nál 2012-ben regisztrálva).</li>
<li><strong>Eredet</strong>: 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.</li>
<li><strong>Kereszt‑platform</strong>: Bármely ZIP‑kompatibilis segédprogrammal (7‑Zip, WinRAR, macOS Archive Utility, Linux <code>unzip</code>) megnyitható. Nem szükséges speciális szoftver a tartalom megtekintéséhez.</li>
</ul>
<p>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.</p>
<hr>
<h2 id="a-cbz-belseje-a-fájlstruktúra">A CBZ belseje: A fájlstruktúra</h2>
<p>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ó:</p>
<pre tabindex="0"><code>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
</code></pre><h3 id="kulcsfontosságú-elemek">Kulcsfontosságú elemek</h3>
<table>
<thead>
<tr>
<th>Elem</th>
<th>Mi ez</th>
<th>Miért fontos</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>Szekvenciális képfájlok</strong></td>
<td>Elnevezve úgy, hogy betűrendben rendeződjenek (<code>001.jpg</code>, <code>002.jpg</code>, …)</td>
<td>Biztosítja a helyes oldalsorrendet minden olvasóban.</td>
</tr>
<tr>
<td><strong>Képformátum</strong></td>
<td>JPEG, PNG, GIF, WebP, AVIF, BMP, TIFF</td>
<td>Meghatározza a fájlméretet, a vizuális hűséget és az eszközkompatibilitást.</td>
</tr>
<tr>
<td><strong>ComicInfo.xml</strong></td>
<td>Opcionális XML a ComicRack séma szerint</td>
<td>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.</td>
</tr>
<tr>
<td><strong>Borítókép</strong></td>
<td><code>cover.jpg</code>/<code>cover.png</code> a gyökérben</td>
<td>Sok alkalmazás használja a képregény bélyegképét a galériákban.</td>
</tr>
<tr>
<td><strong>Unicode fájlnevek</strong></td>
<td>A modern ZIP támogatja az UTF‑8-at</td>
<td>Elengedhetetlen a nem latin címekhez és a nemzetközi képregényekhez.</td>
</tr>
<tr>
<td><strong>ZIP központi könyvtár</strong></td>
<td>Index az archívum végén</td>
<td>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.</td>
</tr>
</tbody>
</table>
<p>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 (&lt; 5 %).</p>
<hr>
<h2 id="metaadatok-varázsa-comicinfoxml-és-oldaltípus-jelzők">Metaadatok varázsa: <code>ComicInfo.xml</code> és oldal‑típus jelzők</h2>
<p>Miközben egy CBZ tökéletesen működik extra fájlok nélkül, egy <code>ComicInfo.xml</code> hozzáadása egyszerű képkupacot kereshetővé, gazdagon leírt képregénnyé alakít. Íme egy minimális példa:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-xml" data-lang="xml"><span style="display:flex;"><span><span style="color:#75715e">&lt;?xml version=&#34;1.0&#34; encoding=&#34;utf-8&#34;?&gt;</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">&lt;ComicInfo&gt;</span>
</span></span><span style="display:flex;"><span>  <span style="color:#f92672">&lt;Title&gt;</span>Starship Voyager<span style="color:#f92672">&lt;/Title&gt;</span>
</span></span><span style="display:flex;"><span>  <span style="color:#f92672">&lt;Series&gt;</span>Space Adventures<span style="color:#f92672">&lt;/Series&gt;</span>
</span></span><span style="display:flex;"><span>  <span style="color:#f92672">&lt;Number&gt;</span>12<span style="color:#f92672">&lt;/Number&gt;</span>
</span></span><span style="display:flex;"><span>  <span style="color:#f92672">&lt;Writer&gt;</span>Jane Doe<span style="color:#f92672">&lt;/Writer&gt;</span>
</span></span><span style="display:flex;"><span>  <span style="color:#f92672">&lt;Penciller&gt;</span>John Smith<span style="color:#f92672">&lt;/Penciller&gt;</span>
</span></span><span style="display:flex;"><span>  <span style="color:#f92672">&lt;Inker&gt;</span>Alex Lee<span style="color:#f92672">&lt;/Inker&gt;</span>
</span></span><span style="display:flex;"><span>  <span style="color:#f92672">&lt;Publisher&gt;</span>Galaxy Press<span style="color:#f92672">&lt;/Publisher&gt;</span>
</span></span><span style="display:flex;"><span>  <span style="color:#f92672">&lt;Year&gt;</span>2024<span style="color:#f92672">&lt;/Year&gt;</span>
</span></span><span style="display:flex;"><span>  <span style="color:#f92672">&lt;LanguageISO&gt;</span>en<span style="color:#f92672">&lt;/LanguageISO&gt;</span>
</span></span><span style="display:flex;"><span>  <span style="color:#f92672">&lt;PageCount&gt;</span>50<span style="color:#f92672">&lt;/PageCount&gt;</span>
</span></span><span style="display:flex;"><span>  <span style="color:#f92672">&lt;Pages&gt;</span>
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">&lt;Page</span> <span style="color:#a6e22e">Image=</span><span style="color:#e6db74">&#34;001.jpg&#34;</span> <span style="color:#a6e22e">Type=</span><span style="color:#e6db74">&#34;FrontCover&#34;</span><span style="color:#f92672">/&gt;</span>
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">&lt;Page</span> <span style="color:#a6e22e">Image=</span><span style="color:#e6db74">&#34;002.jpg&#34;</span> <span style="color:#a6e22e">Type=</span><span style="color:#e6db74">&#34;Story&#34;</span><span style="color:#f92672">/&gt;</span>
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">&lt;Page</span> <span style="color:#a6e22e">Image=</span><span style="color:#e6db74">&#34;025.jpg&#34;</span> <span style="color:#a6e22e">Type=</span><span style="color:#e6db74">&#34;DoublePage&#34;</span><span style="color:#f92672">/&gt;</span>
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">&lt;Page</span> <span style="color:#a6e22e">Image=</span><span style="color:#e6db74">&#34;050.jpg&#34;</span> <span style="color:#a6e22e">Type=</span><span style="color:#e6db74">&#34;BackCover&#34;</span><span style="color:#f92672">/&gt;</span>
</span></span><span style="display:flex;"><span>  <span style="color:#f92672">&lt;/Pages&gt;</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">&lt;/ComicInfo&gt;</span>
</span></span></code></pre></div><p><strong>Miért is gond?</strong></p>
<ul>
<li><strong>Könyvtári eszközök</strong> (ComicRack, Calibre, stb.) képesek rendezni, szűrni és keresni ezek alapján a mezők szerint.</li>
<li><strong>Oldaltípus jelzők</strong> (<code>FrontCover</code>, <code>BackCover</code>, <code>Advert</code>, <code>Deleted</code>, 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.</li>
<li><strong>Jövőbiztosítás</strong> – Ahogy a Digital Comics Initiative a CBZ v2.0 specifikációt dolgozza ki, egy manifest fájl (<code>manifest.json</code>) kötelezővé válhat, de a meglévő olvasók továbbra is támogatni fogják a <code>ComicInfo.xml</code>-t.</li>
</ul>
<hr>
<h2 id="cbz-fájlok-létrehozása-és-konvertálása-lépésrőllépésre">CBZ fájlok létrehozása és konvertálása (lépésről‑lépésre)</h2>
<h3 id="1-készítsd-elő-a-képeidet">1. Készítsd elő a képeidet</h3>
<ul>
<li>Exportáld minden képregényoldalt képként.</li>
<li>Nevezd el őket nullával kitöltött számokkal (<code>001.jpg</code>, <code>002.jpg</code>, …), hogy garantáld a helyes rendezést.</li>
<li>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.</li>
</ul>
<h3 id="2-opcionális-metaadatok-generálása">2. (Opcionális) Metaadatok generálása</h3>
<p>Az olyan eszközök, mint a <strong>ComicTagger</strong>, a <strong>cbr2cbz</strong>, vagy egyedi szkriptek automatikusan kitölthetik a <code>ComicInfo.xml</code>-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.</p>
<h3 id="3-csomagold-be-zipbe">3. Csomagold be ZIP‑be</h3>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span><span style="color:#75715e"># Navigate to the folder containing the pages</span>
</span></span><span style="display:flex;"><span>cd /path/to/pages
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e"># Create a CBZ without extra compression (JPEGs are already compressed)</span>
</span></span><span style="display:flex;"><span>zip -0 -r ../MyComic.cbz *.jpg *.png ComicInfo.xml cover.jpg
</span></span><span style="display:flex;"><span><span style="color:#75715e"># -0 = store (no compression) – speeds up the process</span>
</span></span></code></pre></div><p>Nevezze át a kapott <code>.zip</code> fájlt <code>.cbz</code>-re, ha a tömörítő nem tette meg automatikusan.</p>
<h3 id="4-ellenőrizd-az-archívumot">4. Ellenőrizd az archívumot</h3>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-python" data-lang="python"><span style="display:flex;"><span><span style="color:#f92672">import</span> zipfile<span style="color:#f92672">,</span> pathlib<span style="color:#f92672">,</span> sys
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">def</span> <span style="color:#a6e22e">list_pages</span>(cbz_path: pathlib<span style="color:#f92672">.</span>Path):
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">with</span> zipfile<span style="color:#f92672">.</span>ZipFile(cbz_path, <span style="color:#e6db74">&#39;r&#39;</span>) <span style="color:#66d9ef">as</span> z:
</span></span><span style="display:flex;"><span>        <span style="color:#75715e"># Guard against zip‑bombs (max 500 MB uncompressed)</span>
</span></span><span style="display:flex;"><span>        total <span style="color:#f92672">=</span> sum(z<span style="color:#f92672">.</span>getinfo(name)<span style="color:#f92672">.</span>file_size <span style="color:#66d9ef">for</span> name <span style="color:#f92672">in</span> z<span style="color:#f92672">.</span>namelist())
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">if</span> total <span style="color:#f92672">&gt;</span> <span style="color:#ae81ff">500</span> <span style="color:#f92672">*</span> <span style="color:#ae81ff">1024</span> <span style="color:#f92672">*</span> <span style="color:#ae81ff">1024</span>:
</span></span><span style="display:flex;"><span>            <span style="color:#66d9ef">raise</span> <span style="color:#a6e22e">ValueError</span>(<span style="color:#e6db74">&#34;Archive too large&#34;</span>)
</span></span><span style="display:flex;"><span>        images <span style="color:#f92672">=</span> [n <span style="color:#66d9ef">for</span> n <span style="color:#f92672">in</span> z<span style="color:#f92672">.</span>namelist()
</span></span><span style="display:flex;"><span>                  <span style="color:#66d9ef">if</span> n<span style="color:#f92672">.</span>lower()<span style="color:#f92672">.</span>endswith((<span style="color:#e6db74">&#39;.jpg&#39;</span>, <span style="color:#e6db74">&#39;.jpeg&#39;</span>, <span style="color:#e6db74">&#39;.png&#39;</span>, <span style="color:#e6db74">&#39;.webp&#39;</span>, <span style="color:#e6db74">&#39;.avif&#39;</span>))]
</span></span><span style="display:flex;"><span>        images<span style="color:#f92672">.</span>sort()  <span style="color:#75715e"># natural alphabetical order</span>
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">return</span> images
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">if</span> __name__ <span style="color:#f92672">==</span> <span style="color:#e6db74">&#34;__main__&#34;</span>:
</span></span><span style="display:flex;"><span>    cbz <span style="color:#f92672">=</span> pathlib<span style="color:#f92672">.</span>Path(sys<span style="color:#f92672">.</span>argv[<span style="color:#ae81ff">1</span>])
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">for</span> page <span style="color:#f92672">in</span> list_pages(cbz):
</span></span><span style="display:flex;"><span>        print(page)
</span></span></code></pre></div><p>A <code>python list_pages.py MyComic.cbz</code> futtatása egy tiszta, rendezett oldalfájlnevek listáját kell, hogy kiírja.</p>
<h3 id="5-konvertáld-pdfbe-ha-nyomtatható-verzióra-van-szükséged">5. Konvertáld PDF‑be (ha nyomtatható verzióra van szükséged)</h3>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>unzip -q MyComic.cbz -d tmp_pages
</span></span><span style="display:flex;"><span>convert tmp_pages/*.jpg MyComic.pdf   <span style="color:#75715e"># ImageMagick&#39;s `convert`</span>
</span></span><span style="display:flex;"><span>rm -r tmp_pages
</span></span></code></pre></div><hr>
<h2 id="trendek-biztonság-és-a-cbz-jövője">Trendek, biztonság és a CBZ jövője</h2>
<table>
<thead>
<tr>
<th>Trend</th>
<th>Mi történik</th>
<th>Hatás a CBZ-re</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>Web‑first terjesztés</strong></td>
<td>A kiadók a CBZ-ket felhő tárolóban helyezik el előre aláírt URL-ekkel.</td>
<td>Gyorsabb, DRM‑mentes letöltések; egyszerűbb ön‑kiadás.</td>
</tr>
<tr>
<td><strong>Hibrid/interaktív képregények</strong></td>
<td>Az <code>index.html</code> + eszközök hozzáadása az archívumba “fejlett” képregényeket hoz létre (audio, video, HTML5).</td>
<td>Azok az olvasók, amelyek támogatják a webes nézetet, megjeleníthetik a multimédiás rétegeket.</td>
</tr>
<tr>
<td><strong>A WebP és AVIF elterjedése</strong></td>
<td>~15 % az új kiadásokból (2024) használja ezeket a kodekeket.</td>
<td>30‑50 % méretcsökkenés a minőség megőrzése mellett—kritikus a mobil sávszélességhez.</td>
</tr>
<tr>
<td><strong>AI‑által generált metaadatok</strong></td>
<td>Az olyan eszközök, mint a <em>ComicTagger</em>, most OCR‑t és LLM‑eket használnak a <code>ComicInfo.xml</code> kitöltéséhez.</td>
<td>Jobb felfedezhetőség, automatikus címkézés és könyvtár-szervezés.</td>
</tr>
<tr>
<td><strong>Felhő‑szinkronizált olvasóalkalmazások</strong></td>
<td>A Chunky, a Perfect Viewer és mások a Firebase/iCloud segítségével szinkronizálják az előrehaladást.</td>
<td>Zökkenőmentes olvasás telefonokon, táblagépeken és asztali gépeken.</td>
</tr>
<tr>
<td><strong>Szabványosítási törekvés (CBZ v2.0)</strong></td>
<td>A DCI kötelező <code>manifest.json</code>‑t, több felbontású eszközöket és egy <code>&lt;DRM&gt;</code> jelzőt javasol.</td>
<td>Ez robusztusabbá teszi a CBZ‑t a nagy DPI‑es eszközökön, valamint opcionális jogkezelést biztosít.</td>
</tr>
<tr>
<td><strong>Biztonságtudatosság</strong></td>
<td>A Zip‑bomb támadások (kicsi ZIP → gigabájtok kicsomagoláskor) valódi fenyegetésnek számítanak.</td>
<td>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 <code>zipfile</code> modulját ellenőrzésekkel).</td>
</tr>
</tbody>
</table>
<h3 id="biztonsági-tipp-fejlesztőknek">Biztonsági tipp fejlesztőknek</h3>
<p>Mindig ellenőrizze a teljes kitömörített méretet <strong>kicsomagolás előtt</strong> 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.</p>
<hr>
<h2 id="hogyan-jeleníti-meg-egy-olvasó-valójában-a-cbz-t">Hogyan jeleníti meg egy olvasó valójában a CBZ-t</h2>
<ol>
<li><strong>Nyissa meg az archívumot</strong> – Az alkalmazás beolvassa a ZIP központi könyvtárát, hogy gyors indexet kapjon a bejegyzésekről.</li>
<li><strong>Szűrje ki a képfájlokat</strong> – A nem képfájl bejegyzéseket (<code>ComicInfo.xml</code>, <code>__MACOSX/</code>, stb.) figyelmen kívül hagyja.</li>
<li><strong>Rendezze alfabetikusan</strong> – A nullával kitöltött elnevezés miatt a rendezett lista megegyezik a kívánt oldalsorrenddel.</li>
<li><strong>Metaadatok feldolgozása</strong> – Ha létezik a <code>ComicInfo.xml</code>, az olvasó kinyeri az oldal‑típusú jelzőket, címet, szerzőt stb., és elrejtheti a <code>Advert</code> vagy <code>Deleted</code> jelölésű oldalakat.</li>
<li><strong>Oldalak renderelése</strong> – 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.</li>
<li><strong>Állapot megőrzése</strong> – 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.</li>
</ol>
<p>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.</p>
<hr>
<p><strong>Összegzés:</strong> A CBZ eleganciája az egyszerűségében rejlik — egy egyszerű ZIP, amelyet bárki megnyithat, szerkeszthet vagy újrahasznosíthat. Opcionális <code>ComicInfo.xml</code> metaadatokkal, modern kép kodekekkel és feltörekvő szabványokkal folyamatosan fejlődik, miközben hű marad DRM‑mentes, többplatformos gyökereihez.</p>
<!-- raw HTML omitted -->
]]></content:encoded>
    </item>
    
  </channel>
</rss>
