我需要準備Delphi 2007應用程序進行本地化。現在,需要翻譯的約80%實際上是Delphi運行時庫。我無法想象這些東西需要重複翻譯,每個開發者都將他/她的軟件本地化。德爾福運行時是否有任何翻譯記憶庫/知識庫/術語表?
因此,我正在尋找可以爲Delphi 2007運行時獲得「翻譯記憶」/「詞彙表」的位置,無論是免費還是金錢。我對繁體中文特別感興趣。
我需要準備Delphi 2007應用程序進行本地化。現在,需要翻譯的約80%實際上是Delphi運行時庫。我無法想象這些東西需要重複翻譯,每個開發者都將他/她的軟件本地化。德爾福運行時是否有任何翻譯記憶庫/知識庫/術語表?
因此,我正在尋找可以爲Delphi 2007運行時獲得「翻譯記憶」/「詞彙表」的位置,無論是免費還是金錢。我對繁體中文特別感興趣。
看一看 GNU Gettext for Delphi and C++ Builder。
此工具能夠將exe中定義的所有resourcestring
翻譯成任何語言。因此它可以將Delphi RTL使用的resourcestring
翻譯成任何語言。
AFAIK有幾種pre-made translations可用於多種語言(超過官方的法文/德文/日文/英文版本)。
更新:我使用了一些關於the i18n features of our mORMot framework的GetText的想法,用於UI部分。這將使用純文本文件進行翻譯,而不是使用.po或其他專有系統,並且更具特定的Delphi特性(例如,解析dfm內容)。這是專門用於我們的框架(例如,它使用它的RTTI類),但如果你想編寫自己的單元可能是一個好的開始,相比於GetText或Delphi IDE,它有一些增強。
GNU Gettext是足夠的侵入性不是一個很好的選擇。由於Delphi自己的本地化工具得到了改進(但它在D2007中仍然存在問題),它是恕我直言的一個更好的解決方案,特別是在表單本地化方面,因爲它具有預覽功能,並且不僅可以本地化字符串,還可能需要修改圖形元素給目標客戶,尤其是當他們在文化和傳統非常不同的國家時。 –
即使您沒有(想要)在Delphi中使用GNU Gettext,您仍然可以使用其預製的Delphi RTL翻譯。哦,並且一定要從dxgettext svn倉庫取得德文翻譯,因爲在過去的幾個月裏我已經大幅改進了它們。 – dummzeuch
@dummzeuch感謝您分享您的工作! –
德爾福本身沒有中文翻譯......但我同意,一些公司/翻譯人員已經做到了。
有關信息,德爾福現有語言(法語,德語&日)內,也有與源子翻譯特定的文件,例如:... \ RAD Studio在\ 8.0 \源\ VCL \ FR,.. \ RAD Studio在\ 9.0 \源\ RTL \ COMMON \德,...
例如,法國人開始Vcl.Consts.pas:
{*******************************************************}
{ }
{ Delphi Visual Component Library }
{ }
{ Copyright(c) 1995-2011 Embarcadero Technologies, Inc. }
{ }
{*******************************************************}
unit Vcl.Consts;
interface
resourcestring
SOpenFileTitle = 'Ouvrir';
SCantWriteResourceStreamError = 'Impossible d'#39'écrire dans un flux en lecture seule';
SDuplicateReference = 'WriteObject appelé deux fois pour la même instance';
SClassMismatch = 'La ressource %s est d'#39'une classe incorrecte';
SInvalidTabIndex = 'Index d'#39'onglet hors limites';
SInvalidTabPosition = 'Position d'#39'onglet incompatible avec le style d'#39'onglet en cours';
SInvalidTabStyle = 'Style d'#39'onglet incompatible avec la position d'#39'onglet en cours';
SInvalidBitmap = 'Image de bitmap non valide';
SInvalidIcon = 'Image d'#39'icône non valide';
SInvalidMetafile = 'MetaFichier incorrect';
SInvalidPixelFormat = 'Format de pixel non valide';
SInvalidImage = 'Image non valide';
SBitmapEmpty = 'Bitmap vide';
從我瞭解這是否不存在...要麼免費。您只有vcl.consts單位的法文/德文/日文版本。對於需要翻譯的所有內容,您需要自己完成。
很久以前,IIRC就是Delphi 5,Borland發佈了支持一些語言(但不包括中文)的自己的本地化工具translation repository file。它仍然有效,可以作爲添加更多翻譯的基礎,這是一個好主意,但Delphi中的許多好點子很快就被遺忘了。恕我直言,我不會浪費時間提供本地化的IDE版本,我會使用這些資源爲RTL/VCL提供「翻譯庫」,這將更有用。
雖然只有3種語言(德語/法語/日語),但Delphi XE2仍具有存儲庫,因此不會「很快被遺忘」。唉,只有3種語言:-( – haimg
啊,很高興知道他們現在已經將實際翻譯版本添加到版本庫中了,我猜只有三個,因爲這些是德爾福本身已經本地化的語言,可惜沒有其他國家的Delphi開發者彌補了差距,不幸的是,德爾福的社區貢獻遠低於其他語言。 –
我很驚訝你需要翻譯delphi運行時文本。運行時的哪一部分向用戶顯示文本。 –
@David:我會猜想異常消息如「''a''不是一個有效的整數值。」 –
@Andreas幾乎沒有任何這些,你肯定不會向用戶展示它們。不能真的是80%。 –