Ultimo aggiornamento: 28 luglio 2026

TL;DR CBZ (Comic Book Zip) non è altro che un archivio ZIP standard che raggruppa una serie di file immagine sequenziali — più metadati opzionali — in un unico contenitore di fumetti senza DRM. Poiché si basa sul formato ZIP onnipresente, qualsiasi strumento di archiviazione può aprirlo, e i lettori ordinano semplicemente le immagini alfabeticamente per visualizzare le pagine in ordine. I CBZ moderni includono spesso ComicInfo.xml per dati ricchi della libreria, usano codec immagine efficienti come WebP/AVIF e persino incorporano HTML per fumetti interattivi “enhanced”.
Che cos’è esattamente un CBZ?
- Nome: Comic Book Zip – un file ZIP con l’estensione
.cbz. - Tipo MIME:
application/vnd.comicbook+zip(registrato presso IANA nel 2012). - Origini: Popolarizzato dalla community di ComicRack (2005‑2008) come alternativa open‑source a formati proprietari come CBR o PDF.
- Cross‑platform: Apribile con qualsiasi utility compatibile ZIP (7‑Zip, WinRAR, macOS Archive Utility, Linux
unzip). Non è necessario alcun software speciale per ispezionare i contenuti.
In pratica, un CBZ è semplicemente una cartella di immagini (JPEG, PNG, WebP, ecc.) compressa in zip e rinominata. Questa semplicità è il motivo per cui è lo standard de‑facto per i fumetti digitali su PC, tablet e telefoni.
All’interno di un CBZ: La struttura del file
Un CBZ ben strutturato segue una gerarchia piatta—senza annidamenti aggiuntivi—così i lettori possono individuare le pagine istantaneamente. Di seguito è mostrata una tipica visualizzazione ad albero:
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
Elementi chiave
| Elemento | Che Cos’è | Perché è Importante |
|---|---|---|
| File immagine sequenziali | Denominati in modo che vengano ordinati alfabeticamente (001.jpg, 002.jpg, …) | Garantisce l’ordine corretto delle pagine su tutti i lettori. |
| Formato immagine | JPEG, PNG, GIF, WebP, AVIF, BMP, TIFF | Determina la dimensione del file, la fedeltà visiva e la compatibilità del dispositivo. |
| ComicInfo.xml | XML opzionale conforme allo schema ComicRack | Memorizza titolo, autore, serie, numero dell’edizione, lingua, flag del tipo di pagina e persino i dati delle miniature. Consente una gestione avanzata della libreria. |
| Immagine di copertina | cover.jpg/cover.png nella radice | Usato da molte app come miniatura del fumetto nelle gallerie. |
| Nomi file Unicode | Il moderno ZIP supporta UTF‑8 | Essenziale per titoli non latini e fumetti internazionali. |
| Directory centrale ZIP | Indice alla fine dell’archivio | I lettori leggono questo per creare rapidamente l’elenco delle pagine; una corruzione qui può rompere l’intero CBZ. |
Poiché l’archivio comprime solo immagini già compresse, la dimensione finale è solitamente solo la somma dei file originali più qualche kilobyte di overhead ZIP (< 5 %).
Magia dei Metadati: ComicInfo.xml e Flag di Tipo Pagina
Mentre un CBZ funziona perfettamente senza file aggiuntivi, aggiungere un ComicInfo.xml trasforma una semplice pila di immagini in un fumetto ricercabile e riccamente descritto. Ecco un esempio minimale:
<?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>
Perché preoccuparsi?
- Strumenti di libreria (ComicRack, Calibre, ecc.) possono ordinare, filtrare e cercare in base a questi campi.
- Flag di tipo pagina (
FrontCover,BackCover,Advert,Deleted, ecc.) consentono ai lettori di nascondere le pubblicità, mostrare solo le pagine della storia o visualizzare una miniatura di copertina personalizzata. - Preparazione al futuro – Poiché la Digital Comics Initiative sta redigendo una specifica CBZ v2.0, un file di manifest (
manifest.json) potrebbe diventare obbligatorio, ma i lettori esistenti continueranno a supportareComicInfo.xml.
Creazione & Conversione di File CBZ (Passo‑per‑Passo)
1. Prepara le Tue Immagini
- Esporta ogni pagina del fumetto come immagine.
- Nominali con numeri a zeri iniziali (
001.jpg,002.jpg, …) per garantire un ordinamento corretto. - Scegli il codec più adatto al tuo pubblico: JPEG per le dimensioni più piccole, PNG per arte senza perdita, WebP/AVIF per compressione moderna e di alta qualità.
2. (Opzionale) Genera Metadati
Strumenti come ComicTagger, cbr2cbz, o script personalizzati possono auto‑popolare ComicInfo.xml usando OCR + LLMs. Questo passaggio è opzionale ma altamente consigliato per grandi librerie.
3. Comprimi il File
# 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
Rinomina il .zip risultante in .cbz se il tuo archiviatore non lo ha fatto automaticamente.
4. Verifica l’Archivio
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)
Eseguendo python list_pages.py MyComic.cbz dovrebbe stampare un elenco pulito e ordinato dei nomi file delle pagine.
5. Converti in PDF (se ti serve una versione stampabile)
unzip -q MyComic.cbz -d tmp_pages
convert tmp_pages/*.jpg MyComic.pdf # ImageMagick's `convert`
rm -r tmp_pages
Tendenze, Sicurezza e il Futuro di CBZ
| Tendenza | Cosa sta succedendo | Impatto su CBZ |
|---|---|---|
| Distribuzione web‑first | Gli editori ospitano i CBZ su storage cloud con URL pre‑firmati. | Download più veloci, senza DRM; pubblicazione autonoma più semplice. |
| Fumetti ibridi/interattivi | Aggiungere index.html + risorse all’interno dell’archivio crea fumetti “potenziati” (audio, video, HTML5). | I lettori che supportano una visualizzazione web possono renderizzare livelli multimediali. |
| Adozione di WebP e AVIF | ~15 % delle nuove uscite (2024) utilizzano questi codec. | Riduzione delle dimensioni del 30‑50 % mantenendo la qualità—cruciale per la larghezza di banda mobile. |
| Metadati generati dall’IA | Strumenti come ComicTagger ora usano OCR + LLM per compilare ComicInfo.xml. | Migliore scoperta, etichettatura automatica e organizzazione della libreria. |
| App di lettura con sincronizzazione cloud | Chunky, Perfect Viewer e altri sincronizzano i progressi tramite Firebase/iCloud. | Lettura fluida su telefoni, tablet e desktop. |
| Spinta alla standardizzazione (CBZ v2.0) | DCI propone un manifest.json obbligatorio, risorse multi‑risoluzione e un flag <DRM>. | Renderà CBZ più robusto per dispositivi ad alta DPI e per la gestione opzionale dei diritti. |
| Consapevolezza della sicurezza | Gli attacchi zip‑bomb (ZIP minuscoli → gigabyte una volta estratti) sono una minaccia reale. | I lettori ora impongono limiti di dimensione di estrazione e usano librerie sicure (ad es., zipfile di Python con controlli). |
Consiglio di sicurezza per gli sviluppatori
Convalida sempre la dimensione totale non compressa prima di estrarre un CBZ. Un semplice controllo (come mostrato nello snippet Python) impedisce agli archivi malevoli di esaurire lo spazio su disco o la memoria.
Come un lettore effettivamente rende un CBZ
- Apri l’archivio – L’app legge la directory centrale ZIP per ottenere un indice rapido delle voci.
- Filtra i file immagine – Le voci non‑immagine (
ComicInfo.xml,__MACOSX/, ecc.) vengono ignorate. - Ordina alfabeticamente – Grazie alla denominazione con zeri iniziali, l’elenco ordinato corrisponde all’ordine di pagina previsto.
- Analizza i metadati – Se
ComicInfo.xmlesiste, il lettore estrae i flag di tipo pagina, titolo, autore, ecc., e può nascondere le pagine contrassegnate comeAdvertoDeleted. - Render pages – Le immagini vengono decodificate (spesso con decoder JPEG/WebP accelerati dall’hardware sui moderni tablet e‑ink) e visualizzate una per una, con pre‑fetching delle prossime pagine per uno scorrimento fluido.
- Persist state – La posizione di lettura, i segnalibri e le annotazioni vengono salvati localmente o sincronizzati sul cloud, a seconda dell’app.
Questa pipeline è il motivo per cui il CBZ sembra veloce e reattivo come un PDF nativo, ma rimane completamente aperto e modificabile.
Bottom line: L’eleganza del CBZ risiede nella sua semplicità—un semplice ZIP che chiunque può aprire, modificare o riutilizzare. Con i metadati opzionali ComicInfo.xml, i codec immagine moderni e gli standard emergenti, continua a evolversi restando fedele alle sue radici DRM‑free e cross‑platform.