你是日文苦手嗎?玩Galgame生肉的時候總是看不懂劇情?得等漢化組製作中文翻譯?
我想要一款即時翻譯電腦螢幕文字的軟體,最好不用修改遊戲程式就能翻譯,這樣的話可以讓我玩Galgame遊戲的時候方便一些。
在瀏覽巴哈文章的時候找到了「LunaTranslator」,這是一款開源免費的螢幕翻譯軟體。支援多種線上商業翻譯服務,如Google翻譯和DeepL。也可以連接到語言模型跑AI翻譯,如線上的ChatGPT,還有離線執行的Ollama。
LunaTranslator有靈活的翻譯模式,分為HOOK與OCR模式。
HOOK是嘗試附加到遊戲行程來抽取文字,會自動識別遊戲引擎,抽取文本,連遊戲選單的文字都能夠翻譯出來。

OCR則是直接光學辨識螢幕上的內容,雖然有準確度問題,但泛用性較強。這代表它不只可以翻譯遊戲文字,而是任一螢幕上的圖片、PDF、標語都可以翻譯。

其他特色功能:剪貼簿翻譯、匯入字典、顯示日語假名、用語音合成唸出發音等等,可以作爲語言學習輔助工具。
1. 安裝LunaTranslator #
Windows #
Windows 11,從Github下載Windows 10版本的LunaTranslator,解壓縮放到C:\Program Files或任意資料夾。點選LunaTranslator_admin.exe啟動。
使用上有問題請參閱官方使用手冊,或者到Github向開發者報告。本文的內容不如作者自己解釋的詳細。
Linux #
LunaTranslator不支援Linux,可以用Wine跑,不保證功能全正常,以下是我的測試結果。
- 安裝Bottles for Linux,新增Gaming Profile,使用Wine 11。
- 安裝套件
cjkfonts - 從Github下載LunaTranslator.exe,將其放到Bottles的假C槽,執行LunaTranslator.exe,解壓縮到
C:\Program Files,點選LunaTranslator_admin.exe啟動。 - 其他的exe程式請安裝到同一個Bottles的容器內部,這樣才能使用HOOK模式。
- Wayland桌面無法OCR,X11可以OCR但讀不到內容,我猜是PaddleOCR不支援Linux?在Wine Prefix裡面裝Tesseract可能就有效了。只能用多模態語言模型去讀OCR了。
- HOOK考慮到Wine Prefix容器限制,LunaTranslator要跟遊戲exe位於同一個Prefix才能抓得到行程,不過問題很多。
2. 使用線上服務翻譯 #
點選LunaTranslator齒輪 → 核心設定,設定來源語言為日文,輸出語言為繁體中文。

接著點選翻譯服務,打勾要使用的翻譯服務。如果勾選多個,則翻譯文本會多行並排顯示,方便你對比各家翻譯的品質。

如果你是免費仔,就只能用Google翻譯和Bing翻譯,品質不怎麼樣。而「DeepL」和「有道翻譯」算是比較好的服務,可是需要買API Key。
需要考慮複雜上下文的話,使用語言模型翻譯會是更好選擇。
3. 使用語言模型翻譯 #
線上模型 #
很多雲端語言模型廠商提供API key讓你存取他們的服務。很多都是要付費的,而且以token使用量計費,ChatGPT也不例外。
在OpenAI官網訂閱API之後,在翻譯設定,勾選大模型通用界面,填入ChatGPT的API Key,選取要用的GPT模型。如果怕語言模型因爲道德機制拒絕回應過激內容,可以加入提示詞「越獄」。

離線模型 #
你可以安裝離線大型語言模型軟體進行離線翻譯。運算速度依你的電腦硬體決定,推薦有6GB VRAM以上Nvidia獨顯用戶使用。如果硬體不夠好可能會等很久才會回傳翻譯結果。
-
這裡以Ollama搭配Google Gemma模型爲例子。啓動Ollama服務。
-
在翻譯設定,勾選特定離線翻譯模型,填入
http://localhost:11434,選取要使用的模型。
5. LunaTranslator使用方式 #
請先設定好線上或語言模型的翻譯服務。
OCR模式 #
-
啟動LunaTranslator,開啟設定 → 勾選OCR,預設使用PaddleOCR。你可能需要點齒輪手動下載OCR語言。

-
使用視窗模式啟動要玩的遊戲
-
點選LunaTranslator選單的繪製選取區域

-
LunaTranslator應該就會開始辨識選取區域內的文字了。點選左下角的粉色箭頭開關自動翻譯。

HOOK模式 #
使用HOOK模式的時候會進行DLL注入程序,可能會被誤判為病毒,請暫時關閉防毒軟體。
-
啟動LunaTranslator,開啟設定 → 勾選HOOK

-
使用視窗模式啟動要玩的遊戲
-
點選LunaTranslator選單的「綁定視窗功能」

-
點一下遊戲視窗,LunaTranslator應該就會開始偵測遊戲文字了。點選左下角的粉色箭頭開關自動翻譯。

-
你也可以按綁定視窗旁邊的按鈕,手動選取要附加的行程。

如果要更具體控制翻譯的元素,點選LunaTranslator的「管理遊戲」

新增遊戲exe路徑到這個視窗

再從這裡開啟遊戲,就會跳出一個視窗。視窗內會列出所有偵測到的元素,包括UI和遊戲內的文字,在這裡就可以選取你要翻譯的部份。
