23

我正在实现多语言(法语、汉语、印地语……等)功能。由于印地语不支持向后兼容(低于 4.0 ICS),我强制使用 Typeface 进行本地化(akshar.ttf)。在用印地语测试我的设置时,我遇到了一个危急情况,见下图:

在这个字符串中,我正在使用अब स्क्रीन शुरू करें(现在,我启动屏幕)和उपयोगी लिंक्स(有用的链接)

支持的设备:三星 ACE、三星 S Plus、Galaxy 551 在此处输入图像描述

不支持的设备:三星 Galaxy S2、HTC Nexus One、HTC Incredible S 在此处输入图像描述

知道为什么会这样吗?

4

3 回答 3

1

问题是您不能直接将印地语字体放入其中,因为我们需要将其转换为 unicode 并将其放入。我们提出了同样的问题,我们通过使用 unicodes 而不是字体来实现它。

于 2013-05-10T10:12:51.047 回答
0

回答可能有点晚,如果这对某人有帮助,仍然会发布。

问题可能与 android unicode 字体渲染有关。

解决您的问题的最简单方法是找到基于 ISO 字符集的字体(如果可用 :),试试这个http://www.gbpuat.ac.in/hindifonts.htm)并嵌入到您的应用程序中。

否则,您需要重新排序 unicode 字符才能使其正常工作。字符的重新排序可能因设备而异。

希望这可以帮助。

于 2013-02-13T06:33:24.523 回答
0

您需要将 unicode 字符放在任何地方以在所有设备上进行确认。这是可以帮助您查找 unicode 的网站

http://unicode-table.com/en/

于 2013-04-10T10:46:55.417 回答