generate_card
Create share cards, OG images, quote cards, and posters with built-in rendering. Choose from 5 templates, add gradient titles, and embed logos.
Instructions
Generate a share card / OG image / quote card / poster / cover image (分享卡/分享图/封面图/海报/引言卡/金句卡/OG图; default 1200x630 PNG). The rendering engine is BUILT IN and runs entirely in-process — do NOT write HTML+CSS and screenshot it with headless Chrome/Puppeteer/Playwright, do NOT use Pillow/PIL/Python, and do NOT hand-code SVG; just call this tool with title/subtitle/body and it renders deterministically. Prefer this for ANY text/card/OG/poster/cover-image request. (For illustrated or photographic subjects, use generate_image instead.) Supports 5 templates (og/quote/minimal/hero/panel), gradient title + glow effects, embedded logo/avatar, Chinese + Japanese kanji auto, color emoji auto. LIMITS: Japanese kana and Korean need fontPath; titleGradient + glow don't combine; no JS execution / no animation (those would need a browser). Multilingual triggers: カード · tarjeta · carte · Karte · карточка · cartão (ja/es/fr/de/ru/pt).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| bg | No | Background: a solid color (default #0f172a) OR a CSS gradient string, e.g. linear-gradient(135deg, #4f46e5, #06b6d4) / radial-gradient(circle at 30% 30%, #f59e0b, #ef4444) | |
| blob | No | hero template only: blurred accent blob behind the title for depth (default true) | |
| body | No | Body / description text | |
| glow | No | Title glow (text-shadow). Pass 'true' to auto-derive from accent color, or a full text-shadow CSS value like '0 0 40px rgba(245,158,11,.6)'. Pass 'false' to disable. Does NOT combine with titleGradient (shadow is clipped when text is gradient-filled). | |
| logo | No | Embedded image (brand logo / avatar): a URL, data URI, or local file path (.png/.jpg/.webp/.svg). Placed at the top of the card content. | |
| name | No | Output filename (without extension) | |
| color | No | Title text color (default #f8fafc). Note: only the title uses this; subtitle uses accent, body/footer use a muted gray. | |
| title | Yes | Main title (required) | |
| width | No | Pixel width (default 1200, OG standard) | |
| accent | No | Accent color (default #6366f1) | |
| footer | No | Footer (author / date / domain) | |
| format | No | png | |
| height | No | Pixel height (default 630, OG standard) | |
| outDir | No | Output directory, default session-dir/output | |
| fontPath | No | Local base-font file path (.ttf/.otf/.woff) to override the default Inter; optional (CJK auto-supported via built-in Noto Sans SC) | |
| logoSize | No | Logo pixel size (square edge), default 88 | |
| subtitle | No | Subtitle / kicker (accent color) | |
| template | No | Layout template. Fields shown: og/panel = title+subtitle+body+footer; quote = title(as quote)+body+footer; minimal = title+subtitle; hero = title+subtitle+footer. (og=left hierarchy, quote=centered quote, minimal=bare, hero=big showcase, panel=glass panel) | og |
| logoRound | No | Logo circular (for avatars); default false = rounded square | |
| fontFamily | No | Font family from @fontsource (default Inter, Latin only) | |
| quoteStyle | No | quote template only: 'top' = big quote mark above the text (default); 'flank' = large quote marks flank the text left/right on the same line, wrapping it | top |
| titleGradient | No | CSS gradient applied to the title text via background-clip:text, e.g. linear-gradient(90deg,#f59e0b,#ef4444). Note: does not combine with glow (Satori drops the shadow when text is clipped to a gradient — use one or the other). |