You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在macOS的SwiftUI中列出所有可用字体?

在macOS SwiftUI中列出所有可用字体的实现方法

在macOS环境下,只需将iOS实现中的UIFont替换为AppKit框架下的NSFont,即可完成可用字体的列表展示,具体代码如下:

import SwiftUI
import AppKit

struct FontListView: View {
    // 获取系统所有可用字体名称
    let allFontNames = NSFont.familyNames.flatMap { NSFont.fontNames(forFamilyName: $0) }
    
    var body: some View {
        List(allFontNames, id: \.self) { fontName in
            Text(fontName)
                .font(Font.custom(fontName, size: 12))
        }
        .navigationTitle("可用字体列表")
    }
}

代码说明

  • 通过NSFont.familyNames获取系统中所有字体家族名称,再调用fontNames(forFamilyName:)提取每个家族下的具体字体,最后用flatMap合并为完整的字体名称数组。
  • 在SwiftUI的List中逐个展示字体名称,同时使用对应字体渲染文本,可直观查看字体的实际显示效果。

内容的提问来源于stack exchange,提问作者KevinF

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 18:54:52