2008-09-09 30 views
8

我正在多語言環境中構建一個C++/MFC程序。我有一種主要(國家)語言和三種國際語言。每當我爲該計劃增加一項功能時,我都必須使國際語言與國家語言保持同步。 Visual Studio中的資源編輯器不是非常有用,因爲我經常最終留下字符串,對話框等,未翻譯。您是否知道編輯/翻譯資源(.rc)文件的好程序?

我不知道,如果你們知道,可以編輯資源(.RC)文件和

  • 構建一個只包括要翻譯的字符串和它們各自的ID和接受相同文件的程序(或相似的)文件(這會很有幫助,因爲通常翻譯是由其他人完成的),或者
  • 處理翻譯本身,允許同時查看不同語言的相同字符串。
+0

我不能重新標記我的100點代表級別,但我們應該添加I18N和Windows(也許Win32?)到這個問題。 – Aardvark 2008-09-09 14:38:40

回答

0

如果沒有一個,那麼循環遍歷一個資源中的所有字符串並將它們與國際資源進行比較會非常容易。你可以用一個簡單的網格來做到這一點。

0

最後,我們最終建立了自己的外部工具來管理這個工具。我們的開發人員在英文字符串表中工作,每個自動構建都會將我們添加/更改並刪除的字符串發送給翻譯管理員。他還可以隨時從舊版本運行報告來確定翻譯所需的內容。

1

根據我的經驗,國際化需要的不僅僅是翻譯字符串。翻譯時有很多字符串,在對話框上需要更多的空間。正因爲如此,能夠爲每種語言定製對話框是有用的。否則,您必須爲翻譯後的字符串創建帶有額外空間的對話框,然後在以英語顯示時看起來不太理想。

半響後,我用了一個MFC應用程序翻譯工具,但所生產的軟件停止銷售其公司。當我試圖找到一個價格合理的替代品時,我沒有找到一個。

0

結賬RC-WinTrans。它是我公司使用的商業工具。它基本上將我們的.RC文件(或.resx文件)導入到我們發送到另一個辦公室進行翻譯的數據庫中。然後該工具可以從數據庫中爲每種語言導出翻譯後的.RC文件(或.resx文件)。它甚至還有一個基本的對話框編輯器,因此翻譯者可以調整對話框中各種控件的大小,以確保翻譯後的文本符合要求。

它也接受了一些命令行參數,並具有COM自動化接口讓您可以更輕鬆地集成到一個構建過程。它的工作原理相當不錯了我們,我們從字面上有成千上萬的字符串和對話框等

(我們目前有7個版本,所以我說的話可能比他們的最新版本有點不同8)

2

這是我用來生成資源文件以用不同語言進行測試的腳本。它只是解析從Babelfish平臺的響應如此清晰地翻譯就會約高品質作爲一個醉酒的猴子做,但它是用於測試和這樣


for i in $trfile 
do 
    key=`echo $i | sed 's/^\(.*\)=\(.*\)$/\1/g'` 
    value=`echo $i | sed 's/^\(.*\)=\(.*\)$/\2/g'` 
    url="http://babelfish.altavista.com/tr?doit=done&intl=1&tt=urltext&lp=$langs&btnTrTxt=Translate&trtext=$value" 
    wget -O foo.html -A "$agent" "$url" *&> /dev/null 
    tx=`grep "<td bgcolor=white class=s><div style=padding:10px;>" foo.html` 
    tx=`echo $tx | iconv -f latin1 -t utf-8 | sed 's/<td bgcolor=white class=s><div style=padding:10px;>\(.*\)<\/div><\/td>/\1/g'` 
    echo $key=$tx 
done 

rm foo.html 
0

也可以嘗試AppTranslator:http://www.apptranslator.com/。它有一個內置資源編輯器,以便翻譯人員可以在需要時擴大文本框。它爲開發人員和翻譯人員提供不同的版本。

2

退房appTranslator,它相對便宜,工作得很好。開發它的人真的對增強請求和錯誤報告有反應,所以你得到了很好的支持。

0

我們正在使用Multilizer(http://www.multilizer.com/),儘管有時候使用起來有點棘手,但最終還是有點耐心,它的工作非常好。

我們甚至有翻譯網站,翻譯人員可以下載我們的項目,然後使用Multilizer命令行功能上傳翻譯。

2

你可以看看Sisulizer http://www.sisulizer.com。昂貴的,但。我們正在對其進行評估,以供我的公司使用,以管理正在進行的翻譯工作。我在他們的About頁面上看到,該公司由離開Multilizer和其他類似公司的人創立。

0

ResxCrunch即將推出,它將在一張表中編輯多種語言的多個資源文件。

+0

但它會編輯ResX文件,而不是RC文件... – djeidot 2009-03-23 16:54:12

0

我最近寫了這個,它集成到VS:

https://github.com/ekkis/Powershell/blob/master/MT.ps1

主要是因爲我是不滿意的解決方案在那裏。你需要從M $獲得一個客戶端ID(但他們會給你2M字/月的翻譯免費 - 不錯)

+0

嗨ekkis,這聽起來不錯,但它似乎只適用於ResX文件,而不是RC文件。我對麼? – djeidot 2015-08-24 09:01:41

相關問題