0

通常在我们的 iOS 项目中,我们有多种支持的语言。它们存储在标准的 .string 文件中,如下所示:

/* News section */
"news_title" = "News";
"ok_button_title" = "Ok";

这个文件当然可以邮寄给非技术翻译,他会被告知“只需将右侧的内容替换为法语中的等效文本即可”。这对他们来说并不容易理解,他们可能会在 wordpad.exe 中打开文件并将其保存为一种奇怪的格式,或者通常会弄乱文件。

其他人是如何解决这些问题的?是否有可用的工具可以提供帮助?

这可能不是 iOS 开发所独有的——我想 Rails、C#、Java 开发人员面临同样的挑战?

4

9 回答 9

1

https://www.transifex.com/可以处理 iOS 文件。像这样的其他平台也可以。

于 2013-02-08T13:24:48.190 回答
0

您可以考虑为您未来的 iOS+Android 项目使用 DMLocalizedString。目前源代码仅适用于 iOS,但我相信制作 Android 版本非常容易。

于 2013-09-08T14:51:30.067 回答
0

苹果开发网站上有推荐的翻译机构,其中一些提供与开发环境的集成。例如,查看tethras.com - http://kb.tethras.com/localizing-your-ios-app

电子表格是另一种选择,但您应该包括描述或使用字符串的位置以及屏幕截图,因为上下文就是翻译中的一切!应包括任何长度限制(对于较长的字符串,比英语扩展 +30%,对于短字符串,扩展为 200% 等),还应包括有关如何处理标记的说明。避免向他们发送任何嵌入代码的东西,因为它有被破坏和提高测试要求的风险。

于 2013-02-09T19:26:07.190 回答
0

这个问题绝对不是 iOS 独有的——它通常与软件本地化有关,我在一家软件公司负责。这表示:

  • 我自己翻译用户界面。
  • 如果我做不到,也许我们在国外的办事处之一可以提供帮助,所以我会与他们协调。
  • 或者我们与代理机构合作。

我们使用 CAT 工具来执行此操作(CAT = 计算机辅助翻译)。在我们的例子中,它是 SDL Passolo,但这只是一个示例。以前我们有不同的工具,功能和工作流程几乎相同。

CAT 工具旨在确保在翻译过程中保留源文件格式。例如,Passolo 将默认读取 Windows 资源 DLL 或 Java 属性。它将提取需要翻译的内容并确保其他所有内容(例如字符串 ID)都受到写保护。我的 Passolo 版本不会自动识别 iOS 格式,但我可以使用正则表达式轻松地为这些文件定义一组规则。

此外,在更新的情况下,我只需导入新的源文件,该工具就会以不同的颜色突出显示新的和更改的字符串,并允许我对其进行过滤。其他所有内容都是自动预翻译的。这称为翻译记忆库。

我们的 Windows 客户端包含数万个字符串,并且每年会更新数次。虽然我们的翻译可能在语言上很糟糕,但更新总是很快完成,而且我们从来没有因为本地化而损坏目标文件或功能问题。

缺点是:这些工具并不便宜(尽管情况有所改善,在我们的案例中,投资很快就得到了回报)。如果您不想自己购买 CAT 工具,请确保您与使用这些工具的代理机构或翻译人员合作。

您可能希望查看http://www.proz.com和 CAT 工具:http ://wiki.proz.com/wiki/index.php/Category:CAT_tools 。

于 2013-02-10T17:47:20.810 回答
0

我们使用了一个电子表格文件,我们将其发送给了翻译人员。翻译者只需添加一个包含翻译文本的列。请参阅下面的示例文件:

http://members.home.nl/bas.de.reuver/files/multilanguage.zip

或者,您可以使用更易于在线共享的 Google 文档电子表格。

于 2013-02-08T23:29:28.533 回答
0

我想你可能误解了字符串文件格式。我应该看起来更像这样,每个要本地化的字符串都有注释,如本地化指南中所示,即

/* Error string used for unknown error types. */ 
"ErrorString_1" = "An unknown error occurred.";

确保使用描述性文本填写评论字段NSLocalizedString(),这就是评论的来源。

此页面看起来很有帮助:https ://developer.apple.com/library/mac/#documentation/MacOSX/Conceptual/BPInternational/Articles/NotesForLocalizers.html

您应该使用该genstrings工具为您生成字符串文件。

于 2013-02-10T17:56:17.003 回答
0

Apple 的“国际化编程主题简介”页面上可以找到很多信息,这可能有点吓人,但至少在某种程度上浏览一下是值得的。

是的,本地化您的应用程序可能就像将字符串文件从一种语言更改为另一种一样简单,但某些语言可以将几个单词分解成一个句子或从根本上改变对话框的外观(在这种情况下,实际的 xib 可能需要修改为了在该语言上看起来正确——幸运的是,您有特定于语言的资源文件夹,其中包含特定于语言的 xib 文件,您可以将其放入应用程序包的资源区域等)。因此,您需要熟悉添加其他语言时可能出现的潜在问题和陷阱。

于 2013-02-08T06:06:36.383 回答
0

如果翻译无法理解“只需将右侧的内容替换为法语中的等效文本”,那么他可能不应该担任翻译。这很好。最多,明确告诉他们使用文本编辑器而不是文字处理器 - 即记事本或 Gedit 或 TextEdit 适用,Word、OpenOffice Writer 和 Pages 不适用。

于 2013-02-08T06:08:34.380 回答
0

我开发了一个名为lokaligo.com的在线工具。它可以处理 iOS 和 Android 项目,并允许您邀请自己的翻译。

它还可以在 iOS 上自动截屏。

于 2015-10-08T09:08:39.183 回答