Typography & Supported Scripts

Built-in typefaces, font weights, Unicode script coverage, and glyph fallback policies.

The Open Graph Image Generator bundles high-quality, open-source typefaces embedded directly within the edge worker. Font files are pre-loaded in memory to eliminate external network requests during rendering.


Available Typefaces

Font IDFamily NameClassificationAvailable WeightsRecommended Pairing
inter (Default)Inter VariableSans-Serif400 (Regular), 600 (SemiBold), 700 (Bold)Clean UI, modern web apps, SaaS documentation, product announcements.
source-serif-4Source Serif 4Serif400 (Regular), 700 (Bold)Long-form editorial articles, opinion pieces, literary blogs, newsletters.
jetbrains-monoJetBrains MonoMonospace400 (Regular), 700 (Bold)Code walkthroughs, API docs, release notes, CLI announcements.

To select a font, set the font query parameter:

GET /v1/images/minimal.png?title=Modern+Engineering&font=jetbrains-mono

Supported Unicode Scripts

All bundled typefaces include full glyph coverage for the following Unicode script ranges:

  1. Basic Latin: ASCII U+0020 to U+007E (English, standard punctuation).
  2. Latin Extended (A & B): European accented characters (French, German, Spanish, Portuguese, Italian, Scandinavian, Polish, Czech, Turkish, etc.).
  3. Cyrillic & Cyrillic Supplementary: Modern Russian, Ukrainian, Belarusian, Bulgarian, and Serbian alphabets.
  4. Greek & Coptic: Modern Greek alphabet and mathematical Greek symbols.

Script Coverage Limitations (MVP Scope)

To maintain ultra-low edge cold starts and comply with Cloudflare Worker memory and bundle limits:

  • No CJK Support: Chinese (Hanzi), Japanese (Hiragana/Katakana/Kanji), and Korean (Hangul) are not currently bundled. Characters from these ranges will not render.
  • No Complex Script Shaping: Complex bidirectional scripts (Arabic, Hebrew, Devanagari) are not supported in the initial version.
  • No Emoji Glyph Bundling: System emojis (such as 😀, 🚀, 🔥) are not rendered as colored bitmaps. We recommend using textual badges or clean SVG logos via the logo parameter instead.

If your workflow requires CJK or custom brand font uploads, vote for custom fonts on our Roadmap Feedback.