mirror of
https://github.com/storytold/wordcraft.git
synced 2026-10-24 10:27:44 -06:00
The screenshots in #486 show exactly the characters BIZ UDPGothic (the Japanese interface face) lacks: 选项规语简户另为导 … in Simplified and 啟內另 … in Traditional, with "?" in the Inter-based medium/semibold families (no U+25FB replacement glyph) and boxes in the proportional one. That is the font chain of v0.4.0 and earlier, which embedded no Chinese face and had no installed-font fallback; v0.5.0 (#248) embeds Noto Sans CJK SC. This hardens the chain so it can't silently regress: - The installed CJK font is chosen by coverage: it is added after the embedded faces whenever they leave a CJK character of the CJK catalogs or the language names without a glyph (not only when no "Hans" face exists), and the face picked is the one mapping the most of those characters. - macOS: look inside com_apple_MobileAsset_Font<N>/<hash>.asset/AssetData (bounded, one level) where macOS 10.15+ keeps PingFang.ttc, also under /System/Library/Assets; PingFangUI.ttc as a last resort. - Test: every CJK character of the zh-hans, zh-hant and ja catalogs and the language names has a glyph in the embedded chain in all three interface weights (skips without craft-fonts; fails with a Japanese-only craft-fonts, listing exactly the characters from the screenshots). Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: Brandon Thomas <echelon@gmail.com>