典型的java i18n进程 - 将资源文件发送给翻译公司进行翻译

jwl*_*jwl 5 java resourcebundle internationalization

有很多关于使用Java ResourceBundles来提供多种语言UI的教程.但是,关于与翻译公司的典型互动存在流程问题,我似乎无法找到答案.

假设我不懂法语,需要聘请翻译公司为我的应用程序翻译,我会发送给他们

  1. 默认资源属性文件"whatever_en_US.properties"包括密钥和英文值,并返回"whatever_fr_FR.properties"?
  2. 带有空值的"whatever_fr_FR.properties"和"whatever_en_US.properties"供参考?
  3. 其他一些组合?

Paw*_*yda 5

由于您的问题是关于流程而不是技术,因此我将尽力为您提供全面的解释。假设您的应用程序之前没有经过翻译,理想的流程应如下所示:

  1. 发送英文文件进行翻译。根据您与翻译承包商的协议,您可以使用:

    • 您的默认属性文件(您将负责正确重命名它们)
    • Excel 电子表格包含键、英语短语和用于翻译的空列
    • Gettext *.po 文件(如果您要使用 gettext)
    • 翻译记忆库文件(即 Trados *.tmx 文件)
  2. 当您收到返回的文件时,您将这些翻译放入产品中,创建本地化版本并进行测试。当然,会有一些用户界面问题。其中一些您可以自行修复,一些需要额外的翻译(如硬编码字符串),另一些则需要缩短翻译。同样,您将聘请翻译承包商并向他们提供需要(重新)翻译的字符串。您可以在这里使用电子表格(前提是没有那么多需要翻译的字符串)。

  3. 如果您想同时发货(一次所有语言),您需要尽早聘请翻译人员。由于 UI 字符串会发生变化(假设没有硬 UI 冻结期或翻译冻结期),因此您必须更新翻译。在这种情况下,您需要提供已翻译的文件以及需要翻译的字符串(英文)。如果更改确实很小,您可以仅发送英文字符串并手动合并翻译,否则最好使用某种翻译记忆库交换格式(gettext *.po 或 trados *.tmx 在这里很棒)。

  4. 翻译文件通常是不够的。由于通常没有给出上下文,并且不同的单词在目标语言中可能意味着不同的事物,因此会出现翻译错误。除非您懂得该语言,否则无法知道他们是否在其中。这就是为什么您需要拍摄 UI 屏幕截图并将其发送出去进行审核(可以由您的翻译承包商或其他人根据质量要求进行审核)。

  5. 审核后,您将需要应用翻译更改并测试 UI 问题...

如果我们谈论的是 UI 字符串翻译过程,就这些了。但请注意,正确本地化应用程序还需要很多东西(文档、帮助文件、图标、颜色、声音...)。