BookTranslator
BookTranslator

Sayfa Sırasını Bozmadan CBZ veya CBR Çizgi Roman Arşivi Nasıl Çevrilir

Bir CBZ veya CBR çizgi romanını çevirmeden önce sayfa sırasını, kapakları, gereksiz dosyaları ve sağdan sola ayarlarını düzeltin. Ücretsiz bir arşiv denetleyicisi ve örnek dosya içerir.

BookTranslator

BookTranslator Team

9 dk okuma

CBZ dosyası, sayfa görüntülerinden oluşan bir ZIP arşividir ve CBR dosyası da RAR ile paketlenmiş aynı fikirdir. Arşivin içinde hiçbir şey "bu 2. sayfa" demez. Çizgi roman okuyucuları ve çeviri araçları sayfa sırasını dosya adlarını sıralayarak belirler. Bu nedenle çevrilmiş bir çizgi romandaki sorunların çoğu çeviriden önce başlar. Bir kapak arkaya düşer, 10. sayfa 1. sayfadan sonra görünür veya sağdan sola okunması gereken bir manga soldan sağa açılır.

Yüklemeden önce üç kontrol yapın. Sayfa adlarının doğru sıraya göre sıralandığından emin olun, sayfa olmayan her şeyi kaldırın ve arşivde varsa ComicInfo.xml dosyasını koruyun. Ardından arşivi CBZ olarak yükleyin. Üç kontrolü bir saniyede çalıştıran ve dosyayı güvenli sayfa adlarıyla yeniden paketleyebilen ücretsiz bir çizgi roman arşiv denetleyicisi yazdık.

Hızlı Yanıt: Arşivinizle Ne Yapmalısınız

Elinizde ne varYüklemeden önce ne yapmalısınız
Sayfaları 001.jpg, 002.jpg … şeklinde adlandırılmış bir .cbzOlduğu gibi yükleyin
Sayfaları 1.jpg … 10.jpg veya numarasız cover.jpg olan bir .cbzSıfırla doldurulmuş adlarla yeniden paketleyin (Adım 2)
Bir .cbr, .cb7 veya .cbt dosyasıÇıkarın, ardından klasörü .cbz olarak yeniden paketleyin (Adım 3)
AVIF, JPEG XL veya HEIC olarak kaydedilmiş sayfalarÖnce bu sayfaları PNG, JPEG veya WebP'ye dönüştürün
Sağdan sola okunması gereken bir mangaComicInfo.xml dosyasını koruyun ve çeviriden sonra dil alanını güncelleyin
Bir mağaza uygulamasından satın alınmış çizgi romanKullanma izniniz olan DRM korumasız bir dosyanız olduğundan emin olun

Aşağıdaki bölümler her satırı açıklar.

Sayfa Sırası Neden Bozulur: Okuyucular Dosya Adlarını Sıralar

Dosya adlarını sıralamanın iki yaygın yolu vardır ve sayfa numaralarının uzunlukları farklı olduğunda bu yollar birbiriyle çelişir:

  • Düz karakter sıralaması adları tek tek karakter karşılaştırarak sıralar. 10.jpg 1 ile başladığı için 2.jpg'den önce gelir. 1, 10, 11, 12, 2, 3 … sırasını elde edersiniz.
  • Doğal sıralama bir rakam dizisini sayı olarak okur, böylece 2 10'dan önce gelir. 1, 2, 3 … 10, 11, 12 sırasını elde edersiniz.

Birçok çizgi roman okuyucusu doğal sıralama yapar, ancak buna güvenemezsiniz ve çevrilen dosyanın hangi okuyucuda açılacağını kontrol edemezsiniz. Her yerde işe yarayan çözüm, sayıları sıfırla doldurmaktır: 001.jpg … 010.jpg her iki yöntemle de aynı şekilde sıralanır.

Gözden kaçması kolay iki adlandırma sorunu daha var:

  • Numarasız bir kapak en sona sıralanır. Her iki sıralama yöntemi de rakamları harflerden önce koyar. cover.jpg ve 001.jpg … 024.jpg içeren bir arşivde kapak son sayfa olur.
  • Bölüm klasörleri adın parçası olarak sıralanır. Chapter 10/01.jpg ile Chapter 2/01.jpg önce klasör adlarını karşılaştırır, bu yüzden klasör numaraları da sayfa numaraları kadar özen ister.

BookTranslator, .cbz sayfalarını doğal ve büyük/küçük harfe duyarsız bir sıralamayla düzenler ve __MACOSX klasörleri, .DS_Store gibi nokta dosyaları ve Thumbs.db gibi gereksiz girdileri atlar. Bu, dosya çevrilirken 2. sayfanın 10. sayfadan önce geldiği anlamına gelir. Ancak çevrilen sayfalar orijinal adlarını korur. 1.jpg … 12.jpg yüklerseniz geri 1.png … 12.png alırsınız ve düz sıralama kullanan bir okuyucu bunları yine karıştırır. Yüklemeden önce yeniden adlandırmak, sıralamayı her okuyucu için düzeltir.

Adım 1: Arşivi Kontrol Edin

check_comic_archive.py dosyasını indirin ve çizgi romanınız üzerinde çalıştırın. Python 3.8 veya daha yenisine ihtiyaç duyar, başka bir şeye ihtiyaç duymaz ve hiçbir şey yüklemez:

python3 check_comic_archive.py "My Comic.cbz"

Neler bulduğunu göstermek için, çizgi roman dosyalarında sık gördüğümüz sorunları içeren küçük bir örnek arşiv oluşturduk. Sıfırla doldurulmadan numaralandırılmış on iki sayfa, numarasız bir cover.png, bir çift sayfa yayılımı, bir AVIF dosyası, macOS gereksiz girdileri ve sağdan sola manga olarak işaretlenmiş bir ComicInfo.xml içeriyor. README, make_test_comic.py ile nasıl yeniden oluşturulacağını açıklıyor. Raporun sonu şöyle:

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.

Bunun üstünde rapor, her sayfayı okuma sırasına göre boyutuyla listeler. Yüksekliğinden daha geniş olan bir sayfayı iki sayfalık yayılım olarak, genişliğinden üç kat fazla yüksek olan bir sayfayı ise webtoon bölümü gibi uzun bir şerit olarak işaretler. Çeviri geri geldiğinde ilk bakmanız gereken sayfalar bunlardır.

Düz ASCII dosya adları için denetleyicinin doğal sıralaması, bölüm klasörleri, karışık büyük/küçük harf, boşluklar, tireler ve alt çizgiler dahil olmak üzere BookTranslator'ın .cbz sayfaları için kullandığı karşılaştırmanın aynısını izler. Aksanlı harfler veya Japonca kana içeren adlar araçlar arasında farklı sıralanabilir; bu da sayfaları düz sıfırla doldurulmuş sayılara yeniden adlandırmak için bir neden daha.

Adım 2: Güvenli Sayfa Adlarıyla Yeniden Paketleyin

Rapor sıralama sorunları listeliyorsa önce yazdırılan sıraya bakın, sonra yeniden paketleyin:

python3 check_comic_archive.py "My Comic.cbz" --first cover.png --repack "My Comic fixed.cbz"

--repack yeni bir CBZ yazar. Sayfalar gösterilen sırayla 0001, 0002 … olarak yeniden adlandırılır, gereksiz girdiler atılır ve ComicInfo.xml dahil diğer tüm dosyalar değiştirilmeden kopyalanır. --first bir sayfayı en öne taşır; numarasız bir kapağı olması gereken yere böyle koyarsınız. İkinci bir sayfa, örneğin bir başlık sayfası için tekrarlayabilirsiniz. Yeniden adlandırma sıralamayı sabitler, bu yüzden düzeltmeyi yeniden paketlemeden önce yapın, sonra değil. Arşivde bir ComicInfo.xml sayfa tablosu varsa, sayfaları taşımak konumlarını kaydırır; denetleyici daha sonra ön kapak işaretçisi gibi girdileri kontrol etmeniz gerektiğini hatırlatır.

Örnek arşivde yeniden paketlenen dosyada kapak en önde ve gereksiz girdiler olmadan 0001.png … 0013.png sayfaları var. Kalan tek uyarı AVIF dosyası. Denetleyici görüntüleri dönüştüremez; o sayfayı bir görüntü düzenleyicide açın ve PNG, JPEG veya WebP olarak dışa aktarın. AVIF, JPEG XL ve HEIC gibi biçimler sayfa olarak işlenmez. Oldukları gibi, çevrilmeden sonuca kopyalanırlar.

Adım 3: CBR, CB7 veya CBT Dosyasını CBZ'ye Dönüştürün

Bir .cbr dosyası RAR arşividir, .cb7 7z'dir ve .cbt tar'dır. Bir .cbr dosyasını .cbz olarak yeniden adlandırmak onu dönüştürmez. Denetleyici dosyanın ilk baytlarını okur. Bir RAR, 7z veya tar arşivi için durur ve hangisine sahip olduğunuzu söyler. Bunun yerine normal bir sayfa raporu yazdırırsa, dosya zaten başka bir ad altında bir ZIP arşividir: .cbz olarak yeniden adlandırın ve Adım 1'e dönün.

Gerçek bir RAR, 7z veya tar arşivini dönüştürmek için 7-Zip veya The Unarchiver ile bir klasöre çıkarın. Sonra denetleyiciyi o klasöre yönlendirin:

7z x "My Comic.cbr" -o"My Comic"
python3 check_comic_archive.py "My Comic" --repack "My Comic.cbz"

Yeniden paketleme, çıkarılan dosyalar bir alt klasörde olsa bile sayfaları ve ComicInfo.xml dosyasını yeni arşivin en üst düzeyine koyar.

BookTranslator CBR, CB7 ve CBT yüklemelerini de kabul eder, ancak bunlar sabit fiyatlı farklı bir işlem hattından geçer ve sonraki bölümde açıklanan sayfa sayfa süreç .cbz dosyaları için geçerlidir. Önce dönüştürmek birkaç saniyelik bir iştir ve size Adım 2'deki temiz sayfa adlarını da verir.

Adım 4: ComicInfo.xml'i Koruyun, Sonra Güncelleyin

Birçok arşiv, başlık, seri, dil ve okuma yönünü içeren bir ComicInfo.xml dosyası içerir. Biçimi Anansi Project tarafından sürdürülür. Burada önemli olan iki alanı var:

  • Manga. Şema Unknown, No, Yes ve YesAndRightToLeft değerlerine izin verir. Sonuncusu, bir arşivin okuyucuya sayfaları sağdan sola çevirmesini söyleme şeklidir. Sayfa görüntüleri bu ayarı taşıyamaz, bu yüzden dosya kaybolursa onu kullanan okuyucular okuma yönünü de kaybeder.
  • LanguageISO. Bu, çizgi romanın dil kodunu tutar. Çeviriden sonra siz değiştirene kadar kaynak dili, örneğin ja adlandırmaya devam eder.

BookTranslator ComicInfo.xml dosyasını çevrilen arşive değiştirmeden kopyalar, böylece sağdan sola manga, bu işareti destekleyen okuyucularda sağdan sola kalır. Daha sonra dosyayı bir metin düzenleyicide açın ve LanguageISO değerini hedef dile değiştirin. Dosyada bir <Pages> tablosu varsa, girdileri sayfaları konuma göre işaret eder, bu yüzden sayfaları yeniden sıralamadığınız sürece eşleşmeye devam ederler. ImageSize gibi boyut değerleri orijinal görüntüleri tanımlar ve artık çevrilen PNG sayfalarıyla eşleşmez. Bunlara dayanan bir kütüphane aracının dosyayı yeniden taraması gerekebilir.

BookTranslator CBZ Dosyasıyla Ne Yapar?

Bir .cbz çizgi romanı yüklediğinizde BookTranslator:

  1. sayfa görsellerini (PNG, JPEG, WebP, GIF, BMP veya TIFF) doğal sırayla listeler ve gereksiz girdileri atlar;
  2. her sayfayı tek görseller için kullanılan aynı işlem hattından geçirir. Metni bulur, orijinal yazıyı kaldırır ve çeviriyi onun yerine yerleştirir; bu işlemi birkaç sayfa üzerinde aynı anda yapar;
  3. çevrilen her sayfanın aynı konumda PNG olarak kaydedildiği yeni bir .cbz dosyası oluşturur ve orijinal arşivdeki diğer tüm dosyaları da ekler.

Ödeme yapmadan önce bilmeniz gereken bazı ayrıntılar var:

  • Fiyat sayfa sayısına bağlıdır. Her sayfa tam bir görsel çeviri işlemidir, bu nedenle bir CBZ dosyası kelime başına değil sayfa başına fiyatlandırılır. Fiyat teklifi yüklemeden sonra, ödeme öncesinde görünür. Gereksiz girdilerin ve sayfa olmayan görsellerin kaldırılması fiyatı değiştirmez çünkü bunlar sayfa olarak sayılmaz.
  • Başarısız bir sayfa orijinal görselini korur. Tek bir sayfa başarısız olursa kaynak dilde ve doğru konumda kalır, böylece çizgi roman yine de eksiksiz olur. Sayfaların %30'undan fazlası başarısız olursa, büyük ölçüde çevrilmemiş bir kitap teslim etmek yerine görev başarısız olur.
  • Yalnızca çevrilmiş çizgi romanı alırsınız. Çizgi roman arşivlerinin iki dilli yan yana sürümü yoktur.
  • Sayfalar PNG olarak döner. Çevrilmiş arşiv, JPEG orijinalinden belirgin şekilde daha büyük olabilir.

Japonca metnin kendisine de ihtiyacınız varsa, örneğin dikey sütunlar ve furigana içeren taranmış manga ciltlerinden, Japonca dikey metin OCR rehberimiz metin sayfalarındaki bu okuma sırası sorunlarını ele alır.

Yüklemeden Önce: Dosya Erişimi

Bu rehber, çizgi romanın size ait olduğunu ve serbestçe açabildiğinizi varsayar; örneğin DRM korumasız bir satın alma, kendi taramalarınız veya kendi çalışmanız. Mağaza uygulamaları çizgi romanları genellikle yalnızca kendi okuyucularında açılan korumalı biçimlerde sunar. Bu dosyaları yeniden adlandırmak veya yeniden paketlemek bunu değiştirmez. Emin değilseniz önce çeviriden önce bir e-kitapta DRM olup olmadığını nasıl kontrol edeceğinizi okuyun. Bir dosyayı indirmek, onun çevirisini paylaşma veya yayınlama izni vermez.

Çizgi Romanı Çevirin

Denetleyici sıralama sorunu bildirmediğinde ve her sayfa PNG, JPEG veya WebP olduğunda, CBZ dosyasını manga çevirmenine yükleyin ve ödeme yapmadan önce sayfa sayısı fiyatını kontrol edin. Çeviri hazır olduğunda, kullanmayı planladığınız okuyucuda açın. Kapağa, ilk çift sayfa yayılımına ve son sayfaya bakın, ardından ComicInfo.xml dosyasındaki LanguageISO değerini düzeltin. Yayınlamayı planladığınız bir seri gibi daha uzun projeler için kitap çevirisi tam rehberimiz inceleme, terminoloji ve ciltler arası tutarlılığı kapsar.

İlgili Yazılar