部分模型(如 YSGDetector、Sugoi、m2m100、字体识别模型)需手动下载放入 data/models 目录;谷歌翻译在大陆需全局代理并把 url 换成 *.com;Windows 缺 msvcp140.dll 或 c10.dll 需安装 VC++ Redistributable x64,且不支持 Windows 7。
BallonsTranslator
dmMazeGPL-3.0活跃维护基于深度学习的漫画翻译辅助工具,能自动识别文字、机翻并修复原图文字区域,还支持手动编辑图像和文本。
深度学习辅助漫画翻译工具, 支持一键机翻和简单的图像/文本编辑 | Yet another computer-aided comic/manga translation tool powered by deeplearning
Windows: irm https://raw.githubusercontent.com/dmMaze/BallonsTranslator/dev/scripts/install.ps1 | iex
macOS/Linux: curl -fLO https://raw.githubusercontent.com/dmMaze/BallonsTranslator/dev/scripts/install.sh && chmod +x install.sh && ./install.sh带 Nvidia 显卡或 Apple silicon 默认启用 GPU 加速;AMD 显卡需按文档配置 ZLUDA/ROCm,图像修复仍用 CPU;README 未给出具体显存要求,Sakura 本地运行显存不足可勾选 low vram mode。
深度学习辅助漫画翻译工具,一键机翻并支持图像与文本编辑
基于深度学习的漫画翻译辅助工具,能自动识别文字、机翻并修复原图文字区域,还支持手动编辑图像和文本。
核心能力
- 一键机翻并按原文排版回填颜色、角度、对齐
- 支持掩膜编辑与修复画笔抹字
- 所见即所得富文本编辑与字体样式预设
- LLM 翻译支持上下文、术语表与视觉输入
- 支持条漫及日漫美漫,可无 GUI 命令行批处理
容易踩的坑
- v1.5.21最新正式版2026-11-09 · 2026-11-09 13:05 UTC
v1.5.21
Changelog
- Add the Ink Brush text filter for directional dry-brush textures. Thanks @lanseningfeng. #1375
- Preview letter and line spacing live while dragging their labels. Thanks @Mosoa0. #1386
- Fix
ctbdleaving text strokes at detection-box edges and incorrectly merging separate bubbles on tall pages, while preserving bubble borders. Thanks @bropines. #1377 - Optimize CTD mask refinement. Thanks @FIM43-Redeye. #1381
- Fix text dropped into side-panel editors not immediately updating the corresponding text block, including undo/redo support. Thanks @Mosoa0. #1384
- Keep text-block rotation and resize handles usable alongside transform controls and after editing transform values in the panel. Thanks @Mosoa0. #1385
- Preserve unsaved text and drawing edits before batch rendering, and wait for pending image saves so rendered pages use the latest changes.
- Update Korean translations. Thanks @Rerica0302. #1380
更新说明
- 新增「水墨笔刷(Ink Brush)」文本滤镜,可生成带方向的干笔纹理。感谢 @lanseningfeng。#1375
- 拖拽字间距、行间距标签时支持实时预览。感谢 @Mosoa0。#1386
- 修复
ctbd检测框边缘文字笔画擦除不完整、长图中独立气泡被错误合并的问题,同时保留气泡边框。感谢 @bropines。#1377 - 优化 CTD 掩膜细化性能。感谢 @FIM43-Redeye。#1381
- 修复拖入侧栏编辑框的文本未立即同步到对应文本块的问题,并支持撤销、重做。感谢 @Mosoa0。#1384
- 修复变换控件遮挡文本块旋转、缩放手柄的问题,在面板中编辑变换参数后仍可使用这些手柄。感谢 @Mosoa0。#1385
- 批量渲染前保存当前页尚未保存的文本和绘图修改,并等待待处理的图像保存完成,确保渲染使用最新内容。
- 更新韩语翻译。感谢 @Rerica0302。#1380
- v1.5.202026-10-18 · 2026-10-18 11:51 UTC
查看更新说明
v1.5.20
Changelog
- Add
ysg_ctd, combining YSG text detection with CTD glyph masks. Thanks @lanseningfeng. #1365 - Add font backend selection for Windows and macOS in General → Typesetting (requires restart). Thanks @Kaomsos. #1350
- Fix vertical text alignment and whitespace around tate-chu-yoko. Thanks @SangGuKim. #1355
- Support Alt+drag to resize the text eraser brush and improve its cursor rendering.
- Allow Escape to clear focus from side-panel text editors.
更新说明
- 新增
ysg_ctd检测器,结合 YSG 文本检测与 CTD 精细文字掩膜。感谢 @lanseningfeng。#1365 - 支持在「常规 → 嵌字」中选择 Windows 和 macOS 字体后端,重启后生效。感谢 @Kaomsos。#1350
- 修复竖排文本对齐和纵中横周围的空白布局。感谢 @SangGuKim。#1355
- 文本橡皮擦支持 Alt+拖拽调整笔刷大小,改进光标显示。
- 支持按 Escape 取消侧栏文本编辑框焦点。
- Add
- v1.5.192026-10-04 · 2026-10-04 19:45 UTC
查看更新说明
v1.5.19
Changelog
- Fix WS mode for OpenAI API, update model list
更新说明
- 修复 OpenAI WS 模式,更新模型列表
- v1.5.182026-10-03 · 2026-10-03 23:30 UTC
查看更新说明
v1.5.18
Changelog
- Improve cache hit rates and request retries for the Codex backend; increase the default context budget to 10,000.
- Add borders with adjustable color and width to the shape drawing tool, and improve preview/export consistency. #1348
- Add
deepseek-flashas the default DeepSeek model and enable vision support in the DeepSeek profile. - Fix page-range input issues, text/color/line-break edits lost after undo and page switching, and style and inpaint undo/redo issues.
- Fix crashes when releasing Ctrl or Shift, including after Ctrl+C. #1349
更新说明
- v1.5.172026-09-27 · 2026-09-27 16:41 UTC
查看更新说明
v1.5.17
Changelog
- Add Codex support with ChatGPT sign-in for translation, OCR, and image cleanup.
- Let drawing tools use a separate inpainter, with prompt overrides, optional masks, and GPT-assisted image editing.
- Add rectangle and ellipse fill/erase tools with adjustable color and opacity. Editing-layer opacity controls preview visibility without affecting exports.
- Support Shift-click straight lines and Ctrl+Shift-click horizontal/vertical lines. Press G to move selected text blocks, with X/Y axis constraints.
- Filter font families by keywords anywhere in the name.
- Fix text synchronization after drag-and-drop, full-width tate-chu-yoko rendering, and a page-switching crash.
- Update Chinese and Korean translations; add Korean to Photoshop Bridge and fix Cyrillic text handling. Thanks @Rerica0302. #1339, #1342
更新说明
- 新增 Codex 支持,可使用 ChatGPT 账户登录,进行翻译、文字识别和图像修复。
- 绘图工具可独立选择修复模型,支持覆盖提示词、开关掩膜和 GPT 辅助图像编辑。
- 新增矩形、椭圆填充与擦除工具,可调整颜色和不透明度。编辑图层不透明度仅影响预览,不影响导出。
- 支持 Shift 单击绘制直线,Ctrl+Shift 单击绘制水平或垂直直线。按 G 移动选中的文本框,支持 X/Y 轴约束。
- 字体搜索支持匹配名称任意位置的关键词。
- 修复拖放后的文本同步、全角字符纵中横渲染和切换页面时的崩溃问题。
- 更新中文和韩语翻译,为 Photoshop Bridge 添加韩语并修复西里尔文字处理。感谢 @Rerica0302。#1339、#1342
用户点评
登录用户的真实使用记录,可按版本和硬件筛选还没有人点评。第一个说出真实体验的人最有价值。
Features
[!IMPORTANT]
如打算公开分享本工具的机翻结果,且没有有经验的译者进行过完整的翻译或校对,请在显眼位置注明机翻。
-
一键机翻
- 译文回填参考对原文排版的估计,包括颜色,轮廓,角度,朝向,对齐方式等
- 最后效果取决于文本检测,识别,抹字,机翻四个模块的整体表现
- 支持日漫和美漫
- 英译中,日译英排版已优化,文本布局以提取到的背景泡为参考,中文基于 pkuseg 进行断句,日译中竖排待改善
-
图像编辑
支持掩膜编辑和修复画笔 -
文本编辑
-
翻译历史
- 将 LLM 上下文 设为 +翻译历史 后,
LLMTranslator会参考之前已完成的页面,有助于统一人名、术语和语气。继续运行和选定范围也可使用范围之前符合条件的页面。 - Token 预算 控制加入多少较早的译文,并优先保留较新的页面。当前页面、指令、术语表和生成回复还需要额外的上下文空间。默认值为
10000。 - 较大预算可提供更多剧情上下文并减少旧页淘汰,但会发送更多输入,可能需要更长时间。本地模型还可能显著增加内存/显存占用。DeepSeek 等具有较大上下文窗口的主流服务通常可以使用更高上限。模型上下文上限的约 70% 可作为合理上限(128K 模型约为
90000)。 - 历史预算也会影响提示词缓存。历史在预算内增长时,连续请求会保留相同的开头,OpenAI、DeepSeek 等服务可按折扣价复用这些输入 token,并可能降低延迟。预算迫使程序淘汰旧页后,公共开头会改变,缓存复用随之重置。较大预算可减少重置次数,但也会发送更多历史,因此总费用不一定更低。
下表以 DeepSeek 为例,对普通漫画页面进行粗略估算;其缓存输入 token 的价格为普通输入 token 的 10%。实际结果会因项目、模型和服务商而异。
历史预算 (tokens) 预计保留的翻译历史(页) 相对不使用历史的预计总费用 20483–4 1.65× 40966–9 1.79× 819212–19 2.10× 1638423–38 2.66× 可复用术语表
-
在运行对话框中设置 术语表,可使用 UTF-8 编码的
.json、.txt或.tsv文件。文件只会被读取,并可在多个项目间复用。 -
仅匹配 只发送原词出现在相关页面中的条目;全表 会发送全部条目,可能明显增加 token 用量。
-
支持以下格式:
# Sakura 格式文本 原词->译词 # 可选备注 # 制表符分隔文本 原词<TAB>译词<TAB>可选备注[ {"src": "原词", "dst": "译词", "info": "可选备注"} ] -
匹配不区分大小写,并按字面文本匹配。条目冲突、文件格式错误、不支持的扩展名或文件不存在时,翻译会在发送 LLM 请求前停止。
-
历史页面上下文和术语表注入只对
LLMTranslator生效,其他翻译器会忽略这些设置。
- 将 LLM 上下文 设为 +翻译历史 后,
-
视觉
启用后,具有视觉的模型可结合图片进行翻译
摘要和记忆
「摘要」会简要记录角色与关系、场景、重要事件、说话人线索及未解决的指代等翻译相关信息。「记忆」是根据累计页面摘要生成的项目级浓缩记录。当旧摘要无法继续装入上下文预算,或最后一页处理完成时,程序会通过一次独立的纯文本请求,将这些摘要合并进已有记忆,之后的翻译会把压缩结果作为稳定上下文复用。
-
适用于条漫
使用说明
Windows
方式 A(一键自动配置本地环境,需要系统支持 PowerShell):
该脚本会在执行目录安装 BallonsTranslator:
irm https://raw.githubusercontent.com/dmMaze/BallonsTranslator/dev/scripts/install.ps1 | iex
或者在系统的命令提示符 (cmd.exe) 中运行:
powershell -NoProfile -ExecutionPolicy Bypass -Command "irm https://raw.githubusercontent.com/dmMaze/BallonsTranslator/dev/scripts/install.ps1 | iex"
方式 B(下载免配置压缩包):
从 GitHub Releases 下载 Ballonstranslator_win_minium.zip,解压并双击运行 launch_win.bat 启动程序。
以上方式不支持 Windows 7,Windows 7 用户需要自行安装 Python 3.8 运行源码。
如果遇到 msvcp140.dll、c10.dll 或 [WinError 1114] 相关错误,请安装或更新 Microsoft Visual C++ Redistributable x64(Visual Studio 2015-2022;官方下载说明)。
macOS / Linux
该脚本会在执行目录安装 BallonsTranslator:
curl -fLO https://raw.githubusercontent.com/dmMaze/BallonsTranslator/dev/scripts/install.sh && chmod +x install.sh && ./install.sh
如果系统没有 curl,也可以用 wget -O ... 下载脚本。安装完成后会自动启动程序;之后可运行 cd BallonsTranslator && ./launch.sh 再次启动。
启动程序会检查核心依赖;选择需要额外库的模块时,程序会提示安装缺失的可选依赖(也可在设置中启用自动安装)。
一键翻译
建议在命令行终端下运行程序,首次运行请先配置好源语言/目标语言,打开一个带图片的文件夹,点击 Run 等待翻译完成
一键机翻嵌字格式如大小、颜色等默认是由程序决定的,可以在设置面板->嵌字菜单中改用全局设置。全局字体格式就是未编辑任何文本块时右侧字体面板显示的格式:
画板
修复画笔
矩形工具
按下鼠标左键拖动矩形框抹除框内文字,按下右键拉框清除框内修复结果。
抹除结果取决于算法(gif 中的"方法1"和"方法2")对文字区域估算的准确程度,一般拉的框最好稍大于需要抹除的文本块。两种方法都比较玄学,能够应付绝大多数简单文字简单背景,部分复杂背景简单文字/简单背景复杂文字,少数复杂背景复杂文字,可以多拉几次试试。
勾选"自动"拉完框立即修复,否则需要按下"修复"或者空格键才进行修复,或 Ctrl+D 删除矩形选框。
文本编辑
界面说明及快捷键
- Ctrl+Z,Ctrl+Y 可以撤销重做大部分操作,注意翻页后撤消重做栈会清空
- A/D 或 pageUp/Down 翻页,如果当前页面未保存会自动保存
- T 切换到文本编辑模式下(底部最右"T"图标),W激活文本块创建模式后在画布右键拉文本框
- P 切换到画板模式,右下角滑条改原图透明度
- 标题栏->运行 可以启用/禁用任意自动化模块,全部禁用后Run会根据全局字体样式和嵌字设置重新渲染文本
- 设置面板配置各自动化模块参数
- Ctrl++/- 或滚轮缩放画布
- Ctrl+A 可选中界面中所有文本块
- Ctrl+F 查找当前页,Ctrl+G全局查找
- 0-9调整嵌字/原图透明度
- 文本编辑下
Ctrl+B加粗,Ctrl+U下划线,Ctrl+I斜体 - 字体样式面板-"特效"修改透明度添加阴影
Alt+Arrow Keys或Alt+WASD(正在编辑文本块时pageDown或pageUp) 在文本块间切换
命令行模式 (无GUI)
python -m ballontranslator --headless --exec_dirs "[DIR_1],[DIR_2]..."
所有设置 (如检测模型, 原语言目标语言等) 会从 config/config.json 导入。
如果渲染字体大小不对, 通过 --ldpi 指定 Logical DPI 大小, 通常为 96 和 72。
自动化模块
本项目重度依赖 manga-image-translator,在线服务器和模型训练需要费用,有条件请考虑支持一下
- Ko-fi: https://ko-fi.com/voilelabs
- Patreon: https://www.patreon.com/voilelabs
- 爱发电: https://afdian.net/@voilelabs
Sugoi 翻译器作者: mingshiba
文本检测
- 暂时仅支持日文(方块字都差不多)和英文检测,训练代码和说明见https://github.com/dmMaze/comic-text-detector
- 支持使用 星河云(团子漫画OCR)的文本检测,需要填写用户名和密码,每次启动时会自动登录。
- 详细说明见 团子OCR说明
YSGDetector是由 lhj5426 训练的模型,能更好地过滤日漫/CG里的拟声词。需要手动从 YSGYoloDetector 下载模型放到 data/models 目录下。ysg_ctd结合 YSG 文本框与 CTD 精细掩膜;CTD 漏检的文本行保留框形掩膜,推理失败时回退到 YSG 掩膜。可在文本检测器中选择,参数独立于ysgyolo和ctd,首次使用时会准备两套模型。
OCR
- 所有 mit 模型来自 manga-image-translator,支持日英汉识别和颜色提取
- manga_ocr 来自 kha-white,支持日语识别,注意选用该模型程序不会提取颜色
- PaddleOCRVLManga 支持日语识别,选用该模型程序不会提取颜色
- 支持使用 星河云(团子漫画OCR)的OCR,需要填写用户名和密码,每次启动时会自动登录。
- 目前的实现方案是逐个textblock进行OCR,速度较慢,准确度没有明显提升,不推荐使用。如果有需要,请使用团子Detector。
- 推荐文本检测设置为团子Detector时,将OCR设为none_ocr,直接读取文本,节省时间和请求次数。
- 详细说明见 团子OCR说明
- OCR设置项: 字体识别。把字体识别模型(YuzuMarker.FontDetection)下载下来放在data\models\YuzuMarker.FontDetection目录下。
需要的三个文件分别是
data\models\YuzuMarker.FontDetection\font_dataset,data\models\YuzuMarker.FontDetection\name=4x-epoch=18-step=368676.ckpt,data\font_demo_cache.bin
识别到的置信率大于60%的字体名称会保存在json文件的_detected_font_name字段中。目前没做可视化外显,使用脚本导出LabelPlus txt时可选带上字体字号信息,导入到其他软件(如PS/ID)嵌字用。
图像修复
- AOT 修复模型来自 manga-image-translator
- patchmatch 是非深度学习算法,也是PS修复画笔背后的算法,实现来自 PyPatchMatch,本程序用的是我的修改版
- lama* 是微调过的lama
翻译器
- 谷歌翻译器已经关闭中国服务,大陆再用需要设置全局代理,并在设置面板把 url 换成*.com
- 彩云,需要申请 token
- papago
- DeepL 和 Sugoi (及它的 CT2 Translation 转换)翻译器,感谢 Snowad14,如果要使用Sugoi翻译器(仅日译英),下载离线模型,将
sugoi_translator移入 BallonsTranslator/ballontranslator/data/models。 - 支持 Sakura-13B-Galgame。如果在本地单卡上运行且显存不足,可以在设置面板里勾选
low vram mode(默认启用)。 - DeepLX 请参考Vercel 或 deeplx
- 支持两个版本的 OpenAI 兼容翻译器,支持兼容 OpenAI API 的官方或第三方LLM提供商,需要在设置面板里配置。
- 无后缀版本token消耗更小,但分句稳定性稍差,长文本翻译可能有问题。
- exp后缀版本token消耗更大,但稳定性更好,且在Prompt中进行了“越狱”,适合长文本翻译。
- m2m100: 下载并将 m2m100-1.2B-ctranslate2 移到 data/models 目录下
其它优秀的离线英文翻译模型请参考这条讨论
如需添加新的翻译器请参考加别的翻译器,本程序添加新翻译器只需要继承基类实现两个接口即可不需要理会代码其他部分,欢迎大佬提 pr
杂
通用方案 ZLUDA (ROCm)
优点: 文本和文本框识别速度比社区预览版略快,当然比 CPU 更快
缺点: 需要额外安装并进行相关配置才可工作,首次启动以及更换识别模型、显卡驱动升级等都需要长时间预热缓存
安装步骤:
- 更新显卡驱动至最新版 (建议 24.12.1 及以上,根据自身系统环境下载并安装 AMD HIP SDK Page )
- 下载 ZLUDA 并解压到 zluda 文件夹内,复制 zluda 文件夹到系统盘下: 比如c盘 (C:\zluda)
- 配置系统环境变量,以 windows 10 系统为例:设置 - 系统属性 - 高级系统设置 - 环境变量 - 系统变量 - 找到 path 变量,点击编辑,在最后添加
C:\zluda和%HIP_PATH%bin两项 - 替换 CUDA 库的动态链接文件: 将
C:\zluda文件夹内的cublas.dllcusparse.dll和nvrtc.dll复制出一份到桌面,按如下规则重命名复制出来的文件
注意事项
注意 HIP SDK 和 ZLUDA 版本对应关系,建议使用较新的AMD显卡驱动程序。
| Windows 版本 | HIP SDK 版本 | ZLUDA 版本 |
|---|---|---|
| Windows 11 | 7.1.1 | 3.9.6 |
| Windows 10 和 11 | 6.4.2 | 3.9.5 |
| Windows 10 和 11 | 6.2.4 | 3.9.5 |
| Windows 10 和 11 | 6.1.2 | 3.9.5 |
原文件名 → 新文件名
cublas.dll → cublas64_11.dll
cusparse.dll → cusparse64_11.dll
nvrtc.dll → nvrtc64_112_0.dll
将已经重命名的文件替换掉 BallonsTranslator\ballontrans_pylibs_win\Lib\site-packages\torch\lib\ 目录中的同名文件
- 启动程序并设置 OCR 和文本检测 为 Cuda (图像修复请继续使用 CPU)
- 运行 OCR 并等待 ZLUDA 编译 PTX 文件 (首次编译大概需要 5-10 分钟,取决于 CPU 性能),下次运行无需编译