Skip to content

Desktop app for automatically translating comics - BDs, Manga, Manhwa, Fumetti and more in a variety of formats (Image, Pdf, Epub, cbr, cbz, etc) and in multiple languages.

License

Notifications You must be signed in to change notification settings

ogkalu2/comic-translate

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,016 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Comic Translate

English | 한국어 | Français | 简体中文

Intro

Many Automatic Manga Translators exist. Very few properly support comics of other kinds in other languages. This project was created to utilize the ability of State of the Art (SOTA) Large Language Models (LLMs) like GPT and translate comics from all over the world.

Currently, it supports translating comics from the following languages: English, Korean, Japanese, French, Simplified Chinese, Traditional Chinese, Russian, German, Dutch, Spanish and Italian. It can translate to the above mentioned and more.

The State of Machine Translation

For a couple dozen languages, the best Machine Translator is not Google Translate, Papago or even DeepL, but a SOTA LLM like GPT-4, and by far. This is very apparent for distant language pairs (Korean<->English, Japanese<->English etc) where other translators still often devolve into gibberish. Excerpt from "The Walking Practice"(보행 연습) by Dolki Min(돌기민) Model

Comic Samples

GPT-4 as Translator. Note: Some of these also have Official English Translations

The Wretched of the High Seas

Journey to the West

The Wormworld Saga

Frieren: Beyond Journey's End

Days of Sand

Player (OH Hyeon-Jun)

Carbon & Silicon

Installation

Download

Download and install Comic Translate for Windows and macOS from here.

Ignore Smart Screen for Windows (Click More info > Run anyway). For macOS, after trying to open, go to Settings > Privacy and Security > Scroll down and click Open Anyway.

Note: GPU acceleration is currently only available when running from source.

From Source

Alternatively, if you'd like to run the source code directly.

Install Python 3.12. Tick "Add python.exe to PATH" during the setup.

https://www.python.org/downloads/

Install git

https://git-scm.com/

Install uv

https://docs.astral.sh/uv/getting-started/installation/

Then, in the command line

git clone https://github.com/ogkalu2/comic-translate
cd comic-translate
uv init --python 3.12

and install the requirements

uv add -r requirements.txt --compile-bytecode

To Update, run this in the comic-translate folder

git pull
uv init --python 3.12 (Note: only run this line if you did not use uv for the first time installation)
uv add -r requirements.txt --compile-bytecode

If you have an NVIDIA GPU, then it is recommended to run

uv pip install onnxruntime-gpu

Usage

In the comic-translate directory, run

uv run comic.py

This will launch the GUI

Tips

  • If you have a CBR file, you'll need to install Winrar or 7-Zip then add the folder it's installed to (e.g "C:\Program Files\WinRAR" for Windows) to Path. If it's installed but not to Path, you may get the error,
raise RarCannotExec("Cannot find working tool")

In that case, Instructions for Windows, Linux, Mac

  • Make sure the selected Font supports characters of the target language
  • v2.0 introduces a Manual Mode. When you run into issues with Automatic Mode (No text detected, Incorrect OCR, Insufficient Cleaning etc), you are now able to make corrections. Simply Undo the Image and toggle Manual Mode.
  • In Automatic Mode, Once an Image has been processed, it is loaded in the Viewer or stored to be loaded on switch so you can keep reading in the app as the other Images are being translated.
  • Ctrl + Mouse Wheel to Zoom otherwise Vertical Scrolling
  • The Usual Trackpad Gestures work for viewing the Image
  • Right, Left Keys to Navigate Between Images

How it works

Speech Bubble Detection and Text Segmentation

bubble-and-text-detector. RT-DETR-v2 model trained on 11k images of comics (Manga, Webtoons, Western). Algorithmic segmentation based on the boxes provided from the detection model.

OCR

By Default:

Optional:

These can be used for any of the supported languages.

  • Gemini 2.0 Flash
  • Microsoft Azure Vision

Inpainting

To remove the segmented text

Translation

Currently, this supports using GPT-4.1, Claude-4.5, Gemini-2.5.

All LLMs are fed the entire page text to aid translations. There is also the Option to provide the Image itself for further context.

Text Rendering

Wrapped text in bounding boxes obtained from bubbles and text.

Acknowledgements