objective-c - 我如何获得 cocoa 中给定字体系列支持的字体

标签 objective-c macos cocoa

我有一个字体系列弹出按钮,可让用户选择字体。我的用户界面中还有相应的字体弹出按钮和字体大小组合按钮。当用户更改字体系列时,我想使用该字体系列支持的外观/特征来更新字体弹出按钮的菜单。有人可以告诉我这是如何完成的吗?

TextEdit 似乎可以做到这一点,但我不知道如何做到。我附上了文本编辑工具栏字体弹出窗口的屏幕截图。我想在我的应用程序中模仿这些控件。

enter image description here

最佳答案

使用 -[[NSFontManager shareFontManager] availableMembersOfFontFamily:] 获取指定字体系列中的字体描述数组(不是 NSFont 的实例)。如果您已有字体并想要其字体系列,请使用 -[NSFont fontFamily]

返回数组的具体格式参见the documentation对于NSFontManager

关于objective-c - 我如何获得 cocoa 中给定字体系列支持的字体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12518373/

相关文章:

objective-c - 如何抑制 Xcode 上的 "dead store"编译器警告?

iOS 7 UIButtonBarItem 图像不着色

python - 配置: error: cannot find Boost headers version >= 1. 48.0

macos - 当 subview 更改时更改 NSSplitView 中的分隔线位置

c++ - 从命令行用 clang 编译 : compatibility issues mac os X

objective-c - NSTextField 和 FirstResponder

cocoa - NSMenuItem 中的自定义 NSView 未接收鼠标事件

objective-c - 绘制虚线和实线

ios - 应用程序因 startAnimating 方法而崩溃

iphone - Objective C - 适用于 iPad 和 iPhone 的 Storyboard