- 移除自定义 UI 字体,界面统一系统原生:删 BrandFonts.swift(Orbit/Maple woff2 运行期 CTFontManager 注册 + UIKit 外观代理)+ AppDelegate 的 register 调用 + CDropApp 全局 .environment(\.font, .oBody);9 视图 .font(.o语义) → .font(.语义) 系统语义(日志 LogView 消息行本就 .caption.monospaced() 原生等宽);删 Sources/Fonts/(Orbit/Maple woff2 ~20MB)。仅留品牌字标 Fredoka(logo Wordmark),Justfile ios-fonts 改 Fredoka-only、.gitignore 收窄、新增 Shared/Fonts/README.md - iPad 适配:RootView TabView 加 .tabViewStyle(.sidebarAdaptable)(iPad 常规宽度侧边栏 / iPhone 底部标签栏)+ ConversationView 消息线程 maxWidth 680 居中;project.yml 补方向键 UISupportedInterfaceOrientations(iPhone 竖 + 横)/ ~ipad(全 4 向),消除 iPad 多任务方向构建告警 - 登录页内容约束 maxWidth 420 居中,避免 iPad 宽屏主登录按钮 / 二维码区横向拉满(iPhone 不受影响) - 文档:ios/PLAN.md §11.2 改系统原生字体 + 新增 §13 iPad;ios/PARITY.md 字体分叉条目回退 + 导航条目加 iPad + 2026-07-07 漂移行 - 已装 iPhone 15 Pro C + iPad Pro 13" M4 双端、用户确认
1.6 KiB
品牌字标字体 Fredoka(不入库,构建前拉取)
iOS App 的 UI 界面字体已统一用系统原生字体(.font(.body) / .headline / … 语义样式随 Dynamic Type
缩放;日志等宽处用 .system(…, design: .monospaced) 原生等宽字体)。唯一保留的自定义字体是品牌字标
Fredoka——仅用于 logo 的 Wordmark(「Commilitia Drop」,见 Shared/Brand.swift),与 web 品牌资产一致。
| 角色 | 字体 | 落地 | 来源 |
|---|---|---|---|
| 字标(Wordmark,仅 logo) | Fredoka SemiBold | Shared/Fonts/Fredoka-SemiBold.ttf |
Google Fonts 变量字体实例化(OFL) |
为什么不提交进仓库
Fredoka 虽为开源(OFL),仍统一走拉取以保持仓库精简;经 .gitignore 排除,本 README 入库作说明。
如何备齐
just ios-fonts
幂等(已存在则跳过)。just ios-device / just ios-sim-build 构建前已自动 chain 本步,正常无需手动跑。
前置:curl;造 Fredoka 静态实例需 python3 + fonttools(python3 -m pip install --user fonttools)。
接入方式(代码)
Fredoka 是 ttf,经 UIAppFonts(各 target 的 Info.plist)注册;Wordmark(Shared/Brand.swift)用
.font(.custom("Fredoka-SemiBold", size:))。主 app、Share 扩展、控件扩展均可用(字标体积小,无 CJK)。
历史:早先曾为 UI 引入 Orbit Gothic(Sans)+ Maple Mono(Mono)自定义字体栈,后统一回退系统原生字体 移除(仅保留 Fredoka 字标)。故不再有
Sources/Fonts/与运行期CTFontManagerRegisterFontsForURL注册。