Apple platform typography reference (San Francisco fonts, text styles, Dynamic Type, tracking, leading, internationalization) through iOS 26
View on GitHubSelect agents to install to:
npx add-skill https://github.com/CharlesWiltgen/Axiom/blob/main/.claude-plugin/plugins/axiom/skills/axiom-typography-ref/SKILL.md -a claude-code --skill axiom-typography-refInstallation paths:
.claude/skills/axiom-typography-ref/# Typography Reference
Complete reference for typography on Apple platforms including San Francisco font system, text styles, Dynamic Type, tracking, leading, and internationalization through iOS 26.
## San Francisco Font System
### Font Families
**SF Pro** and **SF Pro Rounded** (iOS, iPadOS, macOS, tvOS)
- Main system fonts for most UI elements
- Rounded variant for friendly, approachable interfaces (e.g., Reminders app)
**SF Compact** and **SF Compact Rounded** (watchOS, narrow columns)
- Optimized for constrained spaces and small sizes
- watchOS default system font
**SF Mono** (Code environments, monospaced text)
- Monospaced font for code editors and technical content
- Consistent character widths for alignment
**New York** (Serif system font)
- Serif alternative for editorial content
- Works with text styles just like SF Pro
### Variable Font Axes
#### Weight Axis (9 weights)
- Ultralight, Thin, Light, Regular, Medium, Semibold, Bold, Heavy, Black
- Continuous weight spectrum via variable fonts
- Avoid light weights at small sizes (legibility issues)
#### Width Axis (WWDC 2022)
- **Condensed** — narrowest width
- **Compressed** — narrow width
- **Regular** — standard width (default)
- **Expanded** — wide width
Access via:
```swift
// iOS/macOS
let descriptor = UIFontDescriptor(fontAttributes: [
.family: "SF Pro",
kCTFontWidthTrait: 1.0 // 1.0 = Expanded
])
```
**SF Arabic** (WWDC 2022)
- Matches SF Pro design language for Arabic text
- Proper right-to-left support
#### Optical Sizes
Variable fonts automatically adjust optical size based on point size:
- **Text variant** (< 20pt) — more spacing, sturdier strokes
- **Display variant** (≥ 20pt) — tighter spacing, refined details
- **Smooth transition** (17-28pt) with variable SF Pro
From WWDC 2020:
> "TextKit 2 abstracts away glyph handling to provide a consistent experience for international text."
## Text Styles & Dynamic Type
### System Text Styles
| Text Style | Default Size (iOS) | U