// Glyph coverage of the screenshot fonts, per language and role (title / body), and the automatic Noto fallbacks. // `shots fonts` plans the faces with planFonts() (downloads through an injected getter, so tests run offline) and // writes .storebound/fonts/fonts.json; `shots render` re-checks coverage against the local files before rendering // (uncoveredChars) and measures, in the page, which face drew every character (measureFonts). `shots check` turns a // glyph drawn by a fallback the config did not choose, or by a system font, into an ERROR. // // Default stack per script (the template defaults, documented in the README and the store-screenshots skill): // Latin incl. Latin Extended-A / B and Vietnamese, Cyrillic, Greek: the configured title / body font // (defaults: game Paytone One + Montserrat, app Inter + Inter; all four cover Latin Extended and Vietnamese; // Inter and Montserrat cover Cyrillic too). A Cyrillic or Greek line switches to Noto Sans as a whole. // Arabic / Hebrew / Devanagari / Bengali / Thai: Noto Sans Arabic / Hebrew / Devanagari / Bengali / Thai (whole line). // Japanese / Korean / Chinese: Noto Sans JP / KR / SC (TC for zh-Hant, TW, HK) (whole line). // Any character the stack lacks: Noto Sans Display (titles) or Noto Sans (body text) for Latin / Cyrillic / Greek, // Noto Sans