在Cocoa中未定位的字体集合名称

在Cocoa中未定位的字体集合名称,cocoa,fonts,Cocoa,Fonts,我使用[[NSFontManager sharedFontManager]collectionNames]获取所有集合,但我看到一些未翻译的字符串(例如“com.apple.AllFonts”)。有没有办法将它们本地化?我看那本字体书翻译得很成功。也许我做错了什么 谢谢 -Albe苹果在其所有内部集合名称前加上“com.Apple”前缀,可能是为了避免冲突。根据您正在做的工作,您可以: 跳过任何以“com.apple”开头的集合名称——它们不是用户创建的集合 如果一个集合以“com.apple

我使用
[[NSFontManager sharedFontManager]collectionNames]
获取所有集合,但我看到一些未翻译的字符串(例如“com.apple.AllFonts”)。有没有办法将它们本地化?我看那本字体书翻译得很成功。也许我做错了什么

谢谢


-Albe

苹果在其所有内部集合名称前加上“com.Apple”前缀,可能是为了避免冲突。根据您正在做的工作,您可以:

  • 跳过任何以“com.apple”开头的集合名称——它们不是用户创建的集合
  • 如果一个集合以“com.apple”开头,将其拆分,只获取名称的最后一部分。类似于
    if([name hasPrefix:@“com.apple”])name=[[name componentsSeparatedByString:@”。]objectAtIndex:2]将起作用

这只适用于英语。如果系统的区域设置不同,那么它们仍然是错误的。