Jak přeložit komiksový archiv CBZ nebo CBR bez zpřeházení pořadí stránek
Opravte pořadí stránek, obálky, nepotřebné soubory a nastavení zprava doleva, než začnete překládat komiks CBZ nebo CBR. Součástí je bezplatný nástroj pro kontrolu archivu a ukázkový soubor.

Soubor CBZ je archiv ZIP s obrázky stránek a soubor CBR je totéž zabalené pomocí RAR. Nic uvnitř archivu neříká „toto je stránka 2“. Čtečky komiksů i překladatelské nástroje určují pořadí stránek podle názvů souborů. Většina problémů s přeloženým komiksem tedy vzniká ještě před překladem. Obálka se ocitne na konci, stránka 10 se objeví za stránkou 1 nebo se manga určená ke čtení zprava doleva otevírá zleva doprava.
Před nahráním proveďte tři kontroly. Ujistěte se, že se názvy stránek řadí ve správném pořadí, odstraňte vše, co není stránka, a pokud archiv obsahuje soubor ComicInfo.xml, ponechte jej. Poté archiv nahrajte jako CBZ. Napsali jsme bezplatný nástroj pro kontrolu komiksového archivu, který provede všechny tři kontroly během vteřiny a může soubor přebalit s bezpečnými názvy stránek.
Rychlá odpověď: Co udělat s archivem
| Co máte | Co udělat před nahráním |
|---|---|
Soubor .cbz, jehož stránky se jmenují 001.jpg, 002.jpg … | Nahrajte jej tak, jak je |
Soubor .cbz se stránkami pojmenovanými 1.jpg … 10.jpg nebo nečíslovanou cover.jpg | Přebalte jej s názvy doplněnými nulami (krok 2) |
Soubor .cbr, .cb7 nebo .cbt | Rozbalte jej a složku znovu zabalte jako .cbz (krok 3) |
| Stránky uložené jako AVIF, JPEG XL nebo HEIC | Nejprve tyto stránky převeďte na PNG, JPEG nebo WebP |
| Manga, která se má číst zprava doleva | Ponechte její ComicInfo.xml a po překladu aktualizujte pole jazyka |
| Komiks zakoupený v aplikaci obchodu | Ověřte, že skutečně máte soubor bez DRM, který smíte používat |
Níže uvedené části vysvětlují každý řádek.
Proč se pořadí stránek rozbíjí: čtečky řadí názvy souborů
Existují dva běžné způsoby řazení názvů souborů a ty se rozcházejí, jakmile mají čísla stránek různou délku:
- Prosté řazení znaků porovnává názvy znak po znaku.
10.jpgzačíná na1, takže přijde před2.jpg. Dostanete pořadí 1, 10, 11, 12, 2, 3 … - Přirozené řazení čte posloupnost číslic jako číslo, takže
2přijde před10. Dostanete 1, 2, 3 … 10, 11, 12.
Mnoho čteček komiksů řadí soubory přirozeně, ale nelze se na to spolehnout a nemáte pod kontrolou, ve které čtečce bude přeložený soubor otevřen. Řešení, které funguje všude, je doplnit čísla nulami: 001.jpg … 010.jpg se seřadí stejně v obou případech.
Dva další problémy s pojmenováním lze snadno přehlédnout:
- Nečíslovaný obal se řadí na konec. Obě metody řazení upřednostňují číslice před písmeny. V archivu s
cover.jpga001.jpg…024.jpgse obal stane poslední stránkou. - Složky kapitol se řadí jako součást názvu.
Chapter 10/01.jpgaChapter 2/01.jpgporovnávají nejprve názvy složek, takže čísla složek vyžadují stejnou péči jako čísla stránek.
BookTranslator řadí stránky .cbz přirozeně a bez ohledu na velikost písmen a přeskakuje nepotřebné položky, jako jsou složky __MACOSX, skryté soubory jako .DS_Store a Thumbs.db. To znamená, že stránka 2 přijde před stránkou 10, zatímco je soubor překládán. Přeložené stránky si však zachovají původní názvy. Pokud nahrajete 1.jpg … 12.jpg, vrátí se vám 1.png … 12.png a čtečka, která používá prosté řazení, je stále pomíchá. Přejmenování před nahráním opraví pořadí pro každou čtečku.
Krok 1: Zkontrolujte archiv
Stáhněte si check_comic_archive.py a spusťte jej na svém komiksu. Vyžaduje Python 3.8 nebo novější a nic dalšího a nic nenahrává:
python3 check_comic_archive.py "My Comic.cbz"
Abychom ukázali, co najde, vytvořili jsme malý ukázkový archiv s problémy, které v komiksových souborech často vídáme. Má dvanáct stránek číslovaných bez nul, nečíslovaný cover.png, jednu dvoustránkovou spreadu, soubor AVIF, nepotřebné položky z macOS a ComicInfo.xml označený jako manga zprava doleva. README vysvětluje, jak jej znovu sestavit pomocí make_test_comic.py. Zde je konec zprávy:
Junk entries (skipped): .DS_Store, __MACOSX/._1.png
Other files (carried over unchanged): ComicInfo.xml
ComicInfo.xml:
Manga (reading direction): YesAndRightToLeft
Right-to-left is stored here, not in the images. Keep this file in the archive so readers that honor it still see it.
LanguageISO: ja. Update it after translation; a copied ComicInfo.xml still names the source language.
Page table: 13 entries for 13 page images.
13 entries record ImageSize/ImageWidth. These describe the original files and no longer match once pages are replaced.
Check before uploading:
- A plain character sort puts '10.png' at position 2, where natural sort has '2.png'. A reader without natural sorting will show pages out of order.
- Pages without a number in the file name: 'cover.png' at 13. Digits sort before letters, so an unnumbered cover usually ends up last.
- Page numbers use [1, 2] digits. Zero-pad them (001, 002, ... 010) so every reader agrees on the order.
- Images in a format that is not treated as a page here: 13.avif. Convert them to PNG, JPEG or WebP, or they stay untranslated.
Nad tím zpráva uvádí každou stránku v pořadí čtení s její velikostí. Stránku, která je širší než vyšší, označí jako dvoustránkovou spreadu a stránku více než třikrát vyšší než širší jako vysoký pruh, jako kapitolu webtoonu. To jsou stránky, na které se nejprve podívat, až se překlad vrátí.
Pro běžné ASCII názvy souborů se přirozené řazení kontroloru řídí stejným porovnáním, jaké BookTranslator používá pro stránky .cbz, včetně složek kapitol, smíšené velikosti písmen, mezer, pomlček a podtržítek. Názvy s písmeny s diakritikou nebo japonskými kany se mohou mezi nástroji řadit odlišně, což je další důvod, proč stránky přejmenovat na prostá čísla doplněná nulami.
Krok 2: Znovu zabalte s bezpečnými názvy stránek
Pokud zpráva uvádí problémy s řazením, nejprve se podívejte na vytištěné pořadí a poté znovu zabalte:
python3 check_comic_archive.py "My Comic.cbz" --first cover.png --repack "My Comic fixed.cbz"
--repack zapíše nový CBZ. Stránky jsou přejmenovány na 0001, 0002 … v uvedeném pořadí, nepotřebné položky jsou vynechány a každý další soubor, včetně ComicInfo.xml, je zkopírován beze změny. --first přesune stránku na začátek, což je způsob, jak vrátit nečíslovaný obal tam, kam patří. Můžete jej opakovat pro druhou stránku, například titulní. Přejmenování pořadí uzamkne, takže jej opravte před opětovným zabalením, ne po něm. Pokud archiv obsahuje tabulku stránek ComicInfo.xml, přesunutí stránek posune jejich pozice; kontrolor vám poté připomene, abyste zkontrolovali položky, jako je značka předního obalu.
V ukázkovém archivu má znovu zabalený soubor stránky 0001.png … 0013.png s obalem na začátku a žádnými nepotřebnými položkami. Jediné zbývající varování je soubor AVIF. Kontrolor neumí převádět obrázky; otevřete tuto stránku v editoru obrázků a exportujte ji jako PNG, JPEG nebo WebP. Formáty jako AVIF, JPEG XL a HEIC nejsou považovány za stránky. Jsou zkopírovány do výsledku tak, jak jsou, nepřeložené.
Krok 3: Převeďte soubor CBR, CB7 nebo CBT na CBZ
Soubor .cbr je archiv RAR, .cb7 je 7z a .cbt je tar. Přejmenování .cbr na .cbz jej nepřevede. Kontrolor přečte první bajty souboru. U archivu RAR, 7z nebo tar se zastaví a řekne vám, který máte. Pokud místo toho vypíše normální zprávu o stránkách, soubor je již archiv ZIP pod jiným názvem: přejmenujte jej na .cbz a vraťte se ke kroku 1.
Chcete-li převést skutečný archiv RAR, 7z nebo tar, rozbalte jej do složky pomocí 7-Zip nebo The Unarchiver. Poté na tuto složku namiřte kontrolor:
7z x "My Comic.cbr" -o"My Comic"
python3 check_comic_archive.py "My Comic" --repack "My Comic.cbz"
Opětovné zabalení umístí stránky a ComicInfo.xml na nejvyšší úroveň nového archivu, i když rozbalené soubory byly v podsložce.
BookTranslator přijímá také nahrávání CBR, CB7 a CBT, ale procházejí jiným postupem za pevnou cenu a proces stránku po stránce popsaný v další části se vztahuje na soubory .cbz. Nejprve je převést je práce na několik sekund a získáte také čisté názvy stránek z kroku 2.
Krok 4: Zachovejte ComicInfo.xml a poté jej aktualizujte
Mnoho archivů obsahuje soubor ComicInfo.xml s názvem, sérií, jazykem a směrem čtení. Jeho formát spravuje Anansi Project. Dvě z jeho polí jsou zde důležitá:
Manga. Schéma povolujeUnknown,No,YesaYesAndRightToLeft. Poslední z nich je způsob, jakým archiv říká čtečce, aby otáčela stránky zprava doleva. Obrázky stránek toto nastavení nést nemohou, takže pokud se soubor ztratí, čtečky, které jej používají, ztratí také směr čtení.LanguageISO. Obsahuje kód jazyka komiksu. Po překladu stále označuje zdrojový jazyk, napříkladja, dokud jej nezměníte.
BookTranslator zkopíruje ComicInfo.xml do přeloženého archivu beze změny, takže manga zprava doleva zůstane zprava doleva ve čtečkách, které tento příznak podporují. Poté otevřete soubor v textovém editoru a změňte LanguageISO na cílový jazyk. Pokud soubor obsahuje tabulku <Pages>, její položky odkazují na stránky podle pozice, takže stále odpovídají, pokud jste stránky nepřeuspořádali. Hodnoty velikosti, jako je ImageSize, popisují původní obrázky a již nebudou odpovídat přeloženým stránkám PNG. Nástroj knihovny, který se na ně spoléhá, může vyžadovat opětovné prohledání souboru.
Co BookTranslator dělá s CBZ
Když nahrajete komiks .cbz, BookTranslator:
- seřadí obrázky stránek (PNG, JPEG, WebP, GIF, BMP nebo TIFF) v přirozeném pořadí a přeskočí nepotřebné položky;
- prožene každou stránku stejnou pipeline jako u samostatných obrázků. Najde text, odstraní původní písmo a na jeho místo nakreslí překlad, přičemž pracuje po několika stránkách najednou;
- vytvoří nový
.cbz, kde je každá přeložená stránka uložena jako PNG na stejném místě, spolu se všemi ostatními soubory z původního archivu.
Než zaplatíte, stojí za to znát několik detailů:
- Cena závisí na počtu stránek. Každá stránka je samostatný běh překladu obrázku, takže CBZ se účtuje za stránku, nikoli za slovo. Cena se zobrazí po nahrání, před platbou. Odstranění nepotřebných položek a volně ložených obrázků, které nejsou stránkami, cenu nezmění, protože se jako stránky nepočítají.
- Neúspěšná stránka si zachová původní obrázek. Pokud jedna stránka selže, zůstane ve zdrojovém jazyce a na správném místě, takže komiks je stále kompletní. Pokud selže více než 30 % stránek, úloha selže, místo aby dodala převážně nepřeloženou knihu.
- Dostanete pouze přeložený komiks. Komiksové archivy nemají dvojjazyčnou verzi vedle sebe.
- Stránky se vracejí jako PNG. Přeložený archiv může být znatelně větší než původní JPEG.
Pokud potřebujete i samotný japonský text, například ze skenovaných manga svazků se svislými sloupci a furiganou, náš průvodce OCR japonského svislého textu pokrývá tyto problémy s pořadím čtení u textových stránek.
Než nahrajete: přístup k souboru
Tento průvodce předpokládá, že komiks je soubor, který vlastníte a můžete jej volně otevřít, například zakoupený bez DRM, vaše vlastní skeny nebo vaše vlastní dílo. Obchody s aplikacemi často dodávají komiksy v chráněných formátech, které se otevřou jen v jejich vlastní čtečce. Přejmenování nebo přebalení těchto souborů na tom nic nezmění. Pokud si nejste jisti, nejprve si přečtěte jak zkontrolovat e-knihu na DRM před překladem. Stažení souboru vám také nedává právo jej sdílet nebo publikovat jeho překlad.
Přeložte komiks
Jakmile kontrola nehlásí žádné problémy s pořadím a každá stránka je PNG, JPEG nebo WebP, nahrajte CBZ do překladače mangy a před platbou zkontrolujte cenu podle počtu stránek. Až bude překlad hotový, otevřete jej ve čtečce, kterou plánujete používat. Podívejte se na obálku, první dvoustránku a poslední stránku, poté opravte LanguageISO v ComicInfo.xml. U delších projektů, například série, kterou plánujete vydat, náš kompletní průvodce překladem knih pokrývá recenzi, terminologii a konzistenci napříč svazky.
Související příspěvky





