过去我曾用过谷歌翻译,它可以开启摄像头实时对拍到的外文翻译为中文。
面对众多的没有中文的Switch游戏,我曾幻想:如果有个插件能实现将当前屏幕的外文翻译为中文就好了。
做梦归做梦,没想到2025年5月9日,群里 Monologue 发了俄罗斯大神 kawaii-flesh 的 GitHub的项目地址:https://github.com/kawaii-flesh/TraNX,说是可以在实机上OCR识别游戏文字并调用相关接口翻译。
对其服务端源码进行了阅读了解后,我提交了几个PR,扩展支持了国内常见的几个翻译接口:百度翻译、腾讯云翻译、阿里云翻译和有道翻译,补全了相关中英文说明。
经过实测和作者沟通,最终有了现在的成果。
现在,是时候将成功分享给大家了。
从此往后,无论什么语种的游戏,有了这个插件,我们自己自力更生。
以下图文教程,使用百度翻译,服务端运行于 Windows 10 系统。
电脑端操作
-
下载必须的资源
解压密码:shipengliang
python-3.10.0-amd64.rar
TraNX-Server-5.0.0.rar
以下插件二选一,我选的是翻译到简体:
TraNX-特斯拉浮层插件-翻译到简体-2.0.0.rar
TraNX-特斯拉浮层插件-翻译到繁体-2.0.0.rar
-
翻译密钥相关操作
本操作仅需一次,记住APP_ID和APP_KEY之后,下次就不用再重复获取了。
按图文教程:如何注册并获取百度翻译的APP_ID和APP_KEY,获取好必须的APP_ID和APP_KEY。
-
运行环境相关操作
本操作仅需一次,python安装之后,下次就不用再重复安装了。
-
解压python-3.10.0-amd64.rar,双击解压后的
python-3.10.0-amd64.exe勾选上底部的
Add Python 3.10 to PATH,然后点Install Now - TraNX-Server-5.0.0.rar移动到C盘,右键解压缩到当前文件夹,解压后会得到TraNX-Server文件夹。
-
-
服务端相关操作
每次都需要操作,毕竟你重启电脑后,服务是不会默认开的。
-
右键开始菜单,选中运行。
输入cmd后回车,打开命令行。
输入
cd C:\TraNX-Server,回车,进入刚才解压好的服务端目录
输入
python -m venv tranx-venv,回车,创建虚拟环境(这个指令只需要执行一次)。
输入
tranx-venv\Scripts\activate,回车,激活虚拟环境。
以下安装相关依赖的指令(只需执行一次),复制粘贴到cmd窗口后回车。
中国用户执行指令:
pip install --upgrade pip -i https://mirrors.aliyun.com/pypi/simple/
pip install paddlepaddle==2.6.2 -f https://www.paddlepaddle.org.cn/whl/windows/cpu-mkl-avx/stable.html -i https://mirrors.aliyun.com/pypi/simple/
pip install paddleocr==2.10.0 -i https://mirrors.aliyun.com/pypi/simple/
pip install flask==3.1.0 pillow==11.0.0 opencv-python==4.11.0.86 sentencepiece==0.2.0 protobuf==3.20.2 requests==2.32.3 symspellpy==6.9.0 -i https://mirrors.aliyun.com/pypi/simple/
非中国用户执行指令:
pip install --upgrade pip
pip install paddlepaddle==2.6.2 -f https://www.paddlepaddle.org.cn/whl/windows/cpu-mkl-avx/stable.html
pip install paddleocr==2.10.0
pip install flask==3.1.0 pillow==11.0.0 opencv-python==4.11.0.86 sentencepiece==0.2.0 protobuf==3.20.2 requests==2.32.3 symspellpy==6.9.0
用前面获取到的APP_ID和APP_KEY替换到下面加粗同名的指令后,逐行复制粘贴后回车,拉起你自己的专属OCR识别+翻译服务。
set BAIDU_TRANSLATOR_APP_ID=APP_ID
set BAIDU_TRANSLATOR_APP_KEY=APP_KEY
python server.py --translator baidu
服务运行起来的示意图如下:
如果你的防火墙提示是否允许访问,全部允许。这样你的Switch才能通过局域网访问到你的服务。
没有报错的话,电脑端的服务就搭建完毕了。
如需关闭服务端,激活cmd命令窗体后,按下快捷键
Ctrl+C即可终止服务。如果你运行时报错:
ImportError: DLL load failed while importing libpaddle,下载并安装这个依赖库:vc_redist.x64.exe。
-
Switch端操作
- Switch连上和电脑处于同一局域网的WiFi。
-
解压刚才下好的TraNX-特斯拉浮层插件,将atmosphere和switch文件夹覆盖到内存卡的根目录。
如果你不知道如何传输这些文件,请参考:Switch 大气层 Hekate下的USB传输
-
返回桌面,同时按下:按L键+↓键+R摇杆,呼出特斯拉浮层,选择TraNX开头的插件。
- 此时,屏幕左上角会出现一个绿色像素块。
- 按一下 L摇杆,左上角的像素块会变为黄色,黄色代表触摸交互模式。
- 按一下 左方向键,左上角的像素块消失,退出TraNX翻译插件。
-
DBI的MTP模式或者Hekate的USB模式,复制
/config/TraNX/config.ini文件到电脑。打开ini文件,修改uploadURL后面的127.0.0.1到刚才服务所在电脑的局域网IP,然后再将配置文件覆盖回去(删除旧文件,粘贴回去)。
此时Switch的配置结束,后面只要电脑局域网IP没变化,就不用再编辑配置文件了。
- 启动要翻译的游戏,同时按下:按L键+↓键+R摇杆,呼出特斯拉浮层,选择TraNX开头的插件,屏幕左上角出现绿色像素块。
- 按一下 L摇杆,左上角的像素块会变为黄色,进入触摸交互模式。
- 按住 右方向键 不要松手,右手拖动选取要翻译的区域,拖动结束后,按一下 R摇杆 发送翻译请求。
-
如果网络正常的话,你电脑端的命令行是会显示收到请求的,此时电脑端浏览器访问 http://127.0.0.1:1785,就能看到游戏的TID和设置界面。
滚动到底部,Translation Settings 下的 Source Language是你需要翻译的文本的原始语言;
Target Language是你要翻译成什么语言;
翻译到中文的记得取消勾选 Text Processing 下的 Split Text into Sentences for Translation 。
设置完毕后,点击Save Settings 保存配置。
-
滚动到上方,Text Recognition Results 的部分点击 Recognize Text 测试翻译结果,如果显示正常,就算全部调试通过了。
-
之后,回到Switch就可以通过按一下 L摇杆,切换到交互模式,按住 右方向键 ,右手拖动选取要翻译的区域后,按一下 R摇杆 翻译,之后再按一下 L摇杆,切回游戏模式进行游戏。
如果翻译区域没变动,每次只需要按一下 L摇杆,切换到交互模式,按一下 R摇杆 翻译,之后再按一下 L摇杆,切回游戏模式进行游戏。
- 如此,以前啃不动的游戏,现在配合这款插件就能一点点玩儿下去了,祝你游戏愉快。
- 加深印象,退出翻译插件是在交互模式下,按一下 左方向键。
相关GitHub
如您从本文得到了有价值的信息或帮助,请考虑扫描下方二维码捐赠和鼓励。
本站资源,请 注册城通账户 后,使用客户端下载,参考教程:城通网盘如何使用客户端下载文件。
如本文对您有用,捐赠和留言 将是对我最好的支持~(捐赠可转为站内积分)
如愿意,请向朋友推荐本站,谢谢。
尊重他人劳动成果。转载请务必附上原文链接,我将感激不尽。