今天,我学习了如何本地化我的Flex应用程序并支持多种语言。在线教程非常棒。但是,他们中没有提到阿拉伯语区域。
基本上,我使用:
在SDK文件夹中创建了阿拉伯语(Jordan)语言环境文件copylocale en_US ar_JO
我导航到locale文件夹,我能够在那里看到ar_JO
文件夹...所以我认为一切顺利。
接下来,我按照教程(www.babelfx.org)进行了操作,并能够用英语,法语和阿拉伯语本地化我的测试应用程序。点击这些语言中的任何一种语言都会将我简单表格的标签切换为所需的语言......但是:
我在这里可能缺少什么想法?
我尝试将我的应用程序的字体(我将应用程序标记设置为fontFamily
)更改为Simplified Arabic
,默认情况下是在Windows上。
由于
答案 0 :(得分:0)
您是否在可以呈现阿拉伯语的swf
中嵌入了字体?你使用的是那种字体吗?如果答案都是否定,那么我建议reading up on the subject。
要记住关于Flash和字体的一件事是它具有令人难以置信的能力,这是因为人们能够将实际字体嵌入swf本身。人们还需要记住,Flash是非常挑剔的,如果你不这样做,就很容易抛出。
答案 1 :(得分:0)
我找到了解决方案。实际上,我没有嵌入任何字体或任何东西以使其正常工作。
我的问题是resources.properties
文件中的编码。我在Notepad ++中打开它,然后我注意到了Encoding
菜单。那时,我记得读过一些关于资源文件的编码应该是UTF-8
的内容。所以我将编码转换为UTF-8
从菜单编译,它不起作用!经过几次重试和清理项目,它成功运作!!!
只是提醒所有人(因为我在解决这个问题时遇到了这个问题):
对于mx
组件,嵌入字体必须将embedAsCFF
设置为false
。
答案 2 :(得分:0)
解决方案是将context-type更改为UTF-8。在Flex Builder中实现此目的的三种方法:
显示属性窗口后,您会看到将文件编码从默认更改为其他(UTF-8)的选项。
注意:至少对我而言,一旦我将内容类型更改为UTF-8,我就必须关闭未保存的文件,将其打开,然后将我的内容粘贴回文件为了清除错误信息。然后清理项目(Project - > Clean ...)并让它重建。