我知道如何使用自定义字体来显示CCLabel。我还想出了如何本地化标签。但我想知道是否有使用自定义字体显示本地化文本。
例如,当我使用Arial时我没有问题,中文字体显示正确。但是当我使用未包含在XCode中的字体(例如ARLRDBD.TTF)时,中文字符不会显示。
如何在ARLRDBD.TTF中显示中文字符?或者,如果我打算使用LocalizedString,我是否只使用XCode中包含的默认字体?
由于 阿比纳夫
答案 0 :(得分:0)
您应该可以使用任何包含中文字符的字体。
并非所有字体都包含所有语言的字符。许多西方字体只有罗马字母(A-Z)。
您可以使用包含所需字符的字体(如Arial或其他Unicode字体 - 请参阅:http://en.wikipedia.org/wiki/Unicode_typeface),或者为每种语言使用单独的字体。
我建议为每种语言使用不同的字体。 你可以用一个简单的结构来组织它。
typedef struct {
NSString *regionname;
NSString *fontname;
} RegionFont;
//later in the code....
RegionFont some_region;
some_region.regionname = @"China";
some_region.fontname = @"Arial";
您可以通过打开Font Book(标准Mac应用程序)并在“All Fonts”下搜索所需语言来测试字体是否支持给定语言。
我没有安装很多自定义字体,而且有几个支持中文版。
希望这有帮助。
答案 1 :(得分:-1)
您可以在应用中使用自定义字体,但需要使用UIAppFonts
文件中的Info.plist
密钥让系统知道它们存在。有关详细信息,请参阅here。