创建多语言ActionScript 3.0站点

时间:2009-04-24 21:01:50

标签: flash actionscript-3 actionscript multilingual

我知道Flash IDE中内置的“Strings”面板,但这是现在创建多语言AS3站点/应用程序的最佳方式吗?

是否有推荐的第三方API /框架?理想情况下,我希望能够动态更改语言并支持尽可能多的字符集,我还将处理静态和动态文本内容。

我还想在不使用Flex的情况下实现这一目标。

任何建议都将不胜感激 - 谢谢。

6 个答案:

答案 0 :(得分:2)

如果您愿意使用Flex,Flex 3可以为每个区域设置创建资源包。 - 这里有更多信息:http://www.herrodius.com/blog/123

如果没有,我通常最终会创建包含所有文本内容和fonts.swf的巨型xml文件,但我想这与使用字符串面板没什么不同。

答案 1 :(得分:2)

我的工作方式是让xml文件包含我的所有副本,我用它来填充翻译单例类。然后在每个ui类中我都有一个public translate()方法,它从Translation类中获取适当的内容并显示它。您可以在构造函数中调用translate()方法,并且只要您想要更改副本。您还可以在翻译时收听CHANGE事件,并在文本更改时再次调用翻译。

答案 2 :(得分:1)

就动作脚本3而言,我使用的唯一第三方API是PureMVC,如果您对Flex 3开放,您可能还需要查看swiz framework。它使用IoC模式和我认为它会像春天一样,所以你可以注入你的角色集,这将是一些有趣的东西。 swiz框架虽然很新,但我还没有花很多时间去研究它。

答案 3 :(得分:1)

这是一个很大的主题,在几段回答中涵盖,所以我会尝试指出你正确的方向。

FlashExtentions.com的罗伯特·泰勒就此问题进行了一些讨论。我建议看看他的Session notes。请务必在多语言Flash应用程序上下载工作簿摘要PDF 材料ZIP 。这些将使您对该主题有一个很好的理解。这些示例在AS2中,但我并不认为您的问题是基于语言的,而是一般的软件架构问题。

在处理其他语言时,字体是一个非常大的问题,所以请查看WestBrents在this post上的答案

希望有所帮助。

答案 4 :(得分:0)

我使用静态文本的属性文件(flex内置本地化)和动态文本的数据库,一切正常。

我遇到的唯一问题是:

  • 将翻译转换为正确的字符编码。我用Notepad ++来做这个,我发现并丢失了一个更好的批处理工具
  • 调整大小 - 并不奇怪某些语言比其他语言长得多

答案 5 :(得分:0)

splinkresource可能就是你要找的东西