在Windows中,我们可以收集有关字体系列支持的脚本的信息。
即家族名称:AdobeArabic Regular
脚本:西文:阿拉伯文: Mac
如何在Mac中知道同样的事情?
获取样式(粗体、粗体、斜体等)我们可以使用NSFontManager支持。
NSArray* familyFonts = [NSFontManager sharedFontManager availableMembersOfFontFamily:“AdobeArabic阿拉伯语-Regular”];
但是没有得到任何关于脚本的信息..
有什么解决方案吗?
发布于 2014-07-11 22:07:17
我不知道这是否有帮助,因为这可能不是最简单的方法,但我希望这能让你走上正确的方向:
您正在寻找的是OpenType布局标签(有时也称为“功能标签”),其中这些标签的子集还定义了受支持的脚本。这些是四个字符的代码,就像阿拉伯文字的“阿拉伯”(扩展列表见下文)。由于CoreText不支持读取这些标签,我想看看NSFontManager的CTFont框架,它提供了读取字体属性的深度功能。在那里我会看一看CTFontCopyFeatures,或者CTFontCopyAvailableTables和CTFontCopyAttribute。我还没有测试过,但希望他们中的一个也能够读取布局/功能标签。
您可以在此处找到OpenType layout tags、TrueType layout tags和CoreText Reference的列表。
发布于 2016-01-14 06:58:18
CTFontDescriptorCopyAttribute(ctFontDescriptor,kCTFontLanguageAttribute)是最接近的,但遗憾的是,这是关于语言的,而不是关于脚本的……
https://stackoverflow.com/questions/24574439
复制相似问题