Skip to content

emailcannotbeblank/comic_trans

Repository files navigation

Comic Trans

漫画图片自动翻译工具。通过 OCR 识别 → 机器翻译 → 图像合成三步流程,将英文漫画自动翻译为中文(或其他语言)并输出合成后的图片。

功能特点

  • OCR 提取 — 基于 Tesseract,支持 block / paragraph / line 三种分组模式,适配漫画气泡
  • 自动翻译 — 使用 Bing 翻译,无需 API Key,支持多语言
  • 智能合成 — 自动适配字号、居中排版、提取背景色填充原文字区域
  • 批量处理 — 支持整个目录一键翻译,支持分步执行(仅 OCR / 仅翻译 / 仅合成)

依赖安装

# Python 依赖
pip install pytesseract pillow numpy requests pandas

# Tesseract OCR 引擎
# Ubuntu / Debian
sudo apt install tesseract-ocr

# macOS
brew install tesseract

# CJK 字体(合成中文需要)
# Ubuntu / Debian
sudo apt install fonts-noto-cjk

使用方法

单张图片翻译

python main.py <输入图片> [输出图片] [--from 源语言] [--to 目标语言] [--font 字体路径]

示例:

python main.py 10001.png
python main.py 10001.png output.png --to zh-Hans
python main.py 10001.png output.png --from en --to ja --font /path/to/font.ttc

批量翻译

python main_batch.py <输入目录> [输出目录] [选项]

选项:

参数 说明 默认值
--step 执行步骤:ocr / translate / compose / all all
--group-by OCR 分组模式:block / paragraph / line block
--from 源语言 en
--to 目标语言 zh-Hans
--font CJK 字体路径 自动检测
--json-dir 中间 JSON 存放目录 <输出目录>/json

示例:

# 翻译整个目录
python main_batch.py ./comics/ ./comics_cn/

# 仅 OCR 提取,block 分组(推荐用于漫画)
python main_batch.py ./comics/ --step ocr --group-by block

# 跳过 OCR,用已有 JSON 进行翻译
python main_batch.py ./comics/ --step translate --json-dir ./comics/json

# 跳过翻译,用已有 JSON 合成图片
python main_batch.py ./comics/ --step compose

单独使用各模块

# 仅 OCR
python ocr_extract.py <图片> <输出.json> [--group-by block] [--psm 3] [--dpi 300]

# 仅翻译
python translate.py <ocr.json> <translated.json> [--from en] [--to zh-Hans]

# 仅合成
python compose.py <translated.json> <输出图片> [--font 字体路径]

流程说明

输入图片 → OCR 提取文字和坐标 → Bing 翻译 → 合成译文到原图 → 输出图片
              ↓                      ↓
         *.ocr.json          *.translated.json
  1. OCR:识别图片中的文字内容及位置坐标,输出 JSON
  2. 翻译:读取 OCR JSON,调用 Bing 翻译,输出含译文的 JSON
  3. 合成:读取翻译 JSON,用背景色覆盖原文区域,将译文居中绘制

OCR 分组模式

模式 说明 适用场景
block 按文本块分组(一个气泡为一个区域) 漫画(推荐)
paragraph 按段落分组 段落式排版
line 按行分组(最细粒度) 逐行翻译

支持的图片格式

PNG、JPG、JPEG、BMP、WebP、TIFF

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages