我有一个需求,希望在我的iOS应用程序中为不同的语言使用不同的字体。
一开始,我考虑使用本地化版本的.ttf文件。我尝试在不同语言的本地化项目文件夹中添加带有相同文件名和字体名称的本地化.ttf文件。但这并没有起作用。
然后,我查看了不同语言的InfoPlist.strings文件。它似乎是主要Info.plist中找到的“key”字符串的键值组合。我发现了针对键“UIAppFonts”的字体条目,它是一个数组。我无法弄清楚如何将本地化的字体文件名作为数组放入InfoPlist.strings中。
最后,我考虑在Localizable.stings文件中添加本地化的字体名称,根据当前语言环境选择字体名称,并替换我在项目中使用字体的所有出现位置(显然这很麻烦)。例如:
UIFont *font = [UIFont fontWithName:NSLocalizedString(@"font-name", nil) size:16];
如果有人以前做过这个,请协助一下。如果能够实现前两个想法中的任意一个,那就太好了。