diff --git a/skills/baoyu-cover-image/SKILL.md b/skills/baoyu-cover-image/SKILL.md index af456c9..f37c83f 100644 --- a/skills/baoyu-cover-image/SKILL.md +++ b/skills/baoyu-cover-image/SKILL.md @@ -50,6 +50,7 @@ Generate elegant cover images for articles with 5-dimensional customization. | `--style ` | Preset shorthand (expands to palette + rendering, see [Style Presets](references/style-presets.md)) | | `--text ` | Text density: none, title-only, title-subtitle, text-rich | | `--mood ` | Emotional intensity: subtle, balanced, bold | +| `--font ` | Font style: clean, handwritten, serif, display | | `--aspect ` | 16:9 (default), 2.35:1, 4:3, 3:2, 1:1, 3:4 | | `--lang ` | Title language (en, zh, ja, etc.) | | `--no-title` | Alias for `--text none` | @@ -65,6 +66,7 @@ Generate elegant cover images for articles with 5-dimensional customization. | **Rendering** | Line quality, texture, depth, element style | flat-vector, hand-drawn, painterly, digital, pixel, chalk | auto | | **Text** | Text density, information hierarchy | none, title-only, title-subtitle, text-rich | title-only | | **Mood** | Emotional intensity, visual weight | subtle, balanced, bold | balanced | +| **Font** | Typography style, character feel | clean, handwritten, serif, display | clean | Dimensions can be freely combined. Auto-selection rules: [references/auto-selection.md](references/auto-selection.md) @@ -127,6 +129,17 @@ Rendering definitions: [references/renderings/](references/renderings/) Full guides: [references/dimensions/text.md](references/dimensions/text.md) | [references/dimensions/mood.md](references/dimensions/mood.md) +## Font Gallery + +| Font | Description | Best For | +|------|-------------|----------| +| `clean` | Modern geometric sans-serif | Tech, professional, minimal | +| `handwritten` | Warm hand-lettered style | Personal, friendly, lifestyle | +| `serif` | Classic elegant typography | Editorial, academic, luxury | +| `display` | Bold decorative headlines | Announcements, entertainment | + +Full guide: [references/dimensions/font.md](references/dimensions/font.md) + ## Style Presets & Compatibility - **Style Presets**: `--style X` expands to palette + rendering. See [references/style-presets.md](references/style-presets.md) @@ -175,7 +188,7 @@ Cover Image Progress: - [ ] File path given → saved to refs/ ✓ - [ ] No path → asked user OR extracted verbally - [ ] 1.2 Output directory determined -- [ ] Step 2: Confirm options (5 dimensions) ⚠️ REQUIRED unless --quick or all specified +- [ ] Step 2: Confirm options (6 dimensions) ⚠️ REQUIRED unless --quick or all specified - [ ] Step 3: Create prompt - [ ] References in prompt ONLY if files exist in refs/ - [ ] Extracted style/palette appended to prompt body (if no file) @@ -196,7 +209,7 @@ Input → [Step 0: Preferences] ─┬─ Found → Continue │ ┌───────────────────────────────────────────────────────────────────────────┘ ↓ -Analyze + Save Refs → [Output Dir ⚠️] → [Confirm: 5 Dimensions] → Prompt → Generate → Complete +Analyze + Save Refs → [Output Dir ⚠️] → [Confirm: 6 Dimensions] → Prompt → Generate → Complete ↓ (skip if --quick or all specified) ``` @@ -233,7 +246,7 @@ Preferences loaded from [project/user]: • Quick mode: [enabled/disabled] | Language: [value or "auto"] ``` -**EXTEND.md Supports**: Watermark | Preferred type | Preferred palette | Preferred rendering | Preferred text | Preferred mood | Default aspect ratio | Default output directory | Quick mode | Custom palette definitions | Language preference +**EXTEND.md Supports**: Watermark | Preferred type | Preferred palette | Preferred rendering | Preferred text | Preferred mood | Preferred font | Default aspect ratio | Default output directory | Quick mode | Custom palette definitions | Language preference Schema: [references/config/preferences-schema.md](references/config/preferences-schema.md) @@ -326,14 +339,14 @@ For each reference image: ### Step 2: Confirm Options ⚠️ -Validate all 5 dimensions + aspect ratio. Full confirmation flow: [references/workflow/confirm-options.md](references/workflow/confirm-options.md) +Validate all 6 dimensions + aspect ratio. Full confirmation flow: [references/workflow/confirm-options.md](references/workflow/confirm-options.md) **Skip Conditions**: | Condition | Skipped | Still Asked | |-----------|---------|-------------| -| `--quick` or `quick_mode: true` | 5 dimensions | Aspect ratio (unless `--aspect`) | -| All 5 + `--aspect` specified | All | None | +| `--quick` or `quick_mode: true` | 6 dimensions | Aspect ratio (unless `--aspect`) | +| All 6 + `--aspect` specified | All | None | ### Step 3: Create Prompt @@ -431,7 +444,7 @@ Cover Generated! Topic: [topic] Type: [type] | Palette: [palette] | Rendering: [rendering] -Text: [text] | Mood: [mood] | Aspect: [ratio] +Text: [text] | Mood: [mood] | Font: [font] | Aspect: [ratio] Title: [title text or "visual only"] Language: [lang] | Watermark: [enabled/disabled] References: [N images (direct/style/palette) or "extracted style" or "none"] @@ -463,7 +476,7 @@ All modifications automatically backup existing `cover.png` before regenerating. - Cover must be readable at small preview sizes - Visual metaphors > literal representations - Title: readable, impactful -- Two confirmation points: Step 0 (first-time setup) + Step 2 (options) - skip Step 2 with `--quick` +- Two confirmation points: Step 0 (first-time setup) + Step 2 (6 dimensions) - skip Step 2 with `--quick` - Use confirmed language for title text - Maintain watermark consistency if enabled - Check compatibility matrices when selecting combinations @@ -485,7 +498,7 @@ All modifications automatically backup existing `cover.png` before regenerating. ## References -**Dimensions**: [text.md](references/dimensions/text.md) | [mood.md](references/dimensions/mood.md) +**Dimensions**: [text.md](references/dimensions/text.md) | [mood.md](references/dimensions/mood.md) | [font.md](references/dimensions/font.md) **Palettes**: [references/palettes/](references/palettes/) **Renderings**: [references/renderings/](references/renderings/) **Auto-Selection**: [references/auto-selection.md](references/auto-selection.md) diff --git a/skills/baoyu-cover-image/references/auto-selection.md b/skills/baoyu-cover-image/references/auto-selection.md index 290732d..def4b00 100644 --- a/skills/baoyu-cover-image/references/auto-selection.md +++ b/skills/baoyu-cover-image/references/auto-selection.md @@ -58,3 +58,14 @@ Default: `title-only` | Launch, announcement, promotion, event, gaming, entertainment | `bold` | Default: `balanced` + +## Auto Font Selection + +| Signals | Font | +|---------|------| +| Personal, lifestyle, human, warm, friendly, story | `handwritten` | +| Technical, professional, clean, modern, minimal, data | `clean` | +| Editorial, academic, luxury, classic, literary | `serif` | +| Announcement, entertainment, promotion, bold, event, gaming | `display` | + +Default: `clean` diff --git a/skills/baoyu-cover-image/references/compatibility.md b/skills/baoyu-cover-image/references/compatibility.md index fb786b4..6de4d49 100644 --- a/skills/baoyu-cover-image/references/compatibility.md +++ b/skills/baoyu-cover-image/references/compatibility.md @@ -48,3 +48,12 @@ | metaphor | ✓✓ | ✓✓ | ✓ | | scene | ✓✓ | ✓✓ | ✓ | | minimal | ✓✓ | ✓✓ | ✗ | + +## Font × Rendering + +| | flat-vector | hand-drawn | painterly | digital | pixel | chalk | +|---|:---:|:---:|:---:|:---:|:---:|:---:| +| clean | ✓✓ | ✗ | ✗ | ✓✓ | ✓ | ✗ | +| handwritten | ✓ | ✓✓ | ✓✓ | ✓ | ✗ | ✓✓ | +| serif | ✓ | ✗ | ✓ | ✓✓ | ✗ | ✗ | +| display | ✓✓ | ✓ | ✓ | ✓✓ | ✓✓ | ✓ | diff --git a/skills/baoyu-cover-image/references/dimensions/font.md b/skills/baoyu-cover-image/references/dimensions/font.md new file mode 100644 index 0000000..e8364c8 --- /dev/null +++ b/skills/baoyu-cover-image/references/dimensions/font.md @@ -0,0 +1,163 @@ +--- +name: font-dimension +description: Typography style dimension for cover images +--- + +# Font Dimension + +Controls typography style and character feel. + +## Values + +| Font | Visual Style | Line Quality | Character | +|------|--------------|--------------|-----------| +| `clean` | Geometric sans-serif | Sharp, uniform | Modern, precise, neutral | +| `handwritten` | Hand-lettered, brush | Organic, varied | Warm, personal, friendly | +| `serif` | Classic serifs, elegant | Refined, structured | Editorial, authoritative | +| `display` | Bold, decorative | Heavy, expressive | Attention-grabbing, playful | + +## Detail + +### clean + +Modern, universal typography with neutral character. + +**Characteristics**: +- Geometric sans-serif letterforms +- Sharp, uniform line weight +- Clean edges, no flourishes +- High readability at all sizes +- Minimal personality, maximum clarity + +**Use Cases**: +- Technical documentation +- Professional/corporate content +- Minimal design approaches +- Data-driven articles +- Modern brand aesthetics + +**Prompt Hints**: +- Use clean geometric sans-serif typography +- Modern, minimal letterforms +- Sharp edges, uniform stroke weight +- High contrast against background + +### handwritten + +Warm, organic typography with personal character. + +**Characteristics**: +- Hand-lettered or brush style +- Organic, varied line weight +- Natural imperfections +- Approachable, human feel +- Casual yet intentional + +**Use Cases**: +- Personal stories +- Lifestyle content +- Wellness and self-improvement +- Creative tutorials +- Friendly brand voices + +**Prompt Hints**: +- Use warm hand-lettered typography with organic brush strokes +- Friendly, personal feel +- Natural variation in stroke weight +- Approachable, human character + +### serif + +Classic, elegant typography with editorial authority. + +**Characteristics**: +- Traditional serif letterforms +- Refined, structured strokes +- Elegant proportions +- Timeless sophistication +- Formal, trustworthy feel + +**Use Cases**: +- Editorial content +- Academic articles +- Luxury brand content +- Historical topics +- Literary pieces + +**Prompt Hints**: +- Use elegant serif typography with refined letterforms +- Classic, editorial character +- Structured, proportional spacing +- Authoritative, sophisticated feel + +### display + +Bold, decorative typography for maximum impact. + +**Characteristics**: +- Heavy, expressive letterforms +- Decorative elements +- Strong visual presence +- Playful or dramatic character +- Designed for headlines + +**Use Cases**: +- Announcements +- Entertainment content +- Promotional materials +- Event marketing +- Gaming topics + +**Prompt Hints**: +- Use bold decorative display typography +- Heavy, expressive headlines +- Strong visual impact +- Attention-grabbing character + +## Default + +`clean` — Universal, pairs well with most rendering styles. + +## Rendering Compatibility + +| Font × Rendering | flat-vector | hand-drawn | painterly | digital | pixel | chalk | +|------------------|:-----------:|:----------:|:---------:|:-------:|:-----:|:-----:| +| clean | ✓✓ | ✗ | ✗ | ✓✓ | ✓ | ✗ | +| handwritten | ✓ | ✓✓ | ✓✓ | ✓ | ✗ | ✓✓ | +| serif | ✓ | ✗ | ✓ | ✓✓ | ✗ | ✗ | +| display | ✓✓ | ✓ | ✓ | ✓✓ | ✓✓ | ✓ | + +✓✓ = highly recommended | ✓ = compatible | ✗ = not recommended + +## Type Compatibility + +| Font × Type | hero | conceptual | typography | metaphor | scene | minimal | +|-------------|:----:|:----------:|:----------:|:--------:|:-----:|:-------:| +| clean | ✓ | ✓✓ | ✓✓ | ✓ | ✗ | ✓✓ | +| handwritten | ✓✓ | ✓ | ✓ | ✓✓ | ✓✓ | ✓ | +| serif | ✓ | ✓ | ✓✓ | ✓ | ✓ | ✓ | +| display | ✓✓ | ✓ | ✓✓ | ✓ | ✓ | ✗ | + +## Palette Interaction + +Font style adapts to palette characteristics: + +| Palette Category | clean | handwritten | serif | display | +|------------------|-------|-------------|-------|---------| +| Warm (warm, earth, pastel) | Softer weight | Natural fit | Warm tones | Playful energy | +| Cool (cool, mono, elegant) | Perfect match | Contrast | Classic pairing | Bold statement | +| Dark (dark, vivid) | High contrast | Glow effects | Dramatic | Maximum impact | +| Vintage (retro) | Modern contrast | Nostalgic fit | Period-appropriate | Retro headlines | + +## Auto Selection + +When `--font` is omitted, select based on signals: + +| Signals | Font | +|---------|------| +| Personal, lifestyle, human, warm, friendly, story | `handwritten` | +| Technical, professional, clean, modern, minimal, data | `clean` | +| Editorial, academic, luxury, classic, literary | `serif` | +| Announcement, entertainment, promotion, bold, event, gaming | `display` | + +Default: `clean` diff --git a/skills/baoyu-cover-image/references/style-presets.md b/skills/baoyu-cover-image/references/style-presets.md index 587f1b0..71e2be7 100644 --- a/skills/baoyu-cover-image/references/style-presets.md +++ b/skills/baoyu-cover-image/references/style-presets.md @@ -22,6 +22,7 @@ | `vector-illustration` | `retro` | `flat-vector` | | `vintage` | `retro` | `hand-drawn` | | `warm` | `warm` | `hand-drawn` | +| `warm-flat` | `warm` | `flat-vector` | | `watercolor` | `earth` | `painterly` | ## Override Examples diff --git a/skills/baoyu-cover-image/references/workflow/confirm-options.md b/skills/baoyu-cover-image/references/workflow/confirm-options.md index fb5722f..30264d3 100644 --- a/skills/baoyu-cover-image/references/workflow/confirm-options.md +++ b/skills/baoyu-cover-image/references/workflow/confirm-options.md @@ -2,22 +2,22 @@ ## Purpose -Validate all 5 dimensions + aspect ratio. +Validate all 6 dimensions + aspect ratio. ## Skip Conditions | Condition | Skipped Questions | Still Asked | |-----------|-------------------|-------------| -| `--quick` flag | Type, Palette, Rendering, Text, Mood | **Aspect Ratio** (unless `--aspect` specified) | -| All 5 dimensions + `--aspect` specified | All | None | -| `quick_mode: true` in EXTEND.md | Type, Palette, Rendering, Text, Mood | **Aspect Ratio** (unless `--aspect` specified) | -| Otherwise | None | All 6 questions | +| `--quick` flag | Type, Palette, Rendering, Text, Mood, Font | **Aspect Ratio** (unless `--aspect` specified) | +| All 6 dimensions + `--aspect` specified | All | None | +| `quick_mode: true` in EXTEND.md | Type, Palette, Rendering, Text, Mood, Font | **Aspect Ratio** (unless `--aspect` specified) | +| Otherwise | None | All 7 questions | **Important**: Aspect ratio is ALWAYS asked unless explicitly specified via `--aspect` CLI flag. User presets in EXTEND.md are shown as recommended option, not auto-selected. ## Quick Mode Output -When skipping 5 dimensions: +When skipping 6 dimensions: ``` Quick Mode: Auto-selected dimensions @@ -26,8 +26,9 @@ Quick Mode: Auto-selected dimensions • Rendering: [rendering] ([reason]) • Text: [text] ([reason]) • Mood: [mood] ([reason]) +• Font: [font] ([reason]) -[Then ask Question 6: Aspect Ratio] +[Then ask Question 7: Aspect Ratio] ``` ## Confirmation Flow @@ -91,7 +92,26 @@ options: description: "Polished, precise, subtle gradients" ``` -### Q4: Other Settings (skip if all remaining dimensions already specified) +### Q4: Font (skip if `--font`) + +```yaml +header: "Font" +question: "Which font style?" +multiSelect: false +options: + - label: "[auto-recommended font] (Recommended)" + description: "[reason based on content signals]" + - label: "clean" + description: "Modern geometric sans-serif - tech, professional" + - label: "handwritten" + description: "Warm hand-lettered - personal, friendly" + - label: "serif" + description: "Classic elegant - editorial, luxury" + - label: "display" + description: "Bold decorative - announcements, entertainment" +``` + +### Q5: Other Settings (skip if all remaining dimensions already specified) Combine remaining settings into one question. Include: Output Dir (if no preference + file path input), Text, Mood, Aspect. Show auto-selected values as recommended option. User can accept all or type adjustments via "Other". diff --git a/skills/baoyu-cover-image/references/workflow/prompt-template.md b/skills/baoyu-cover-image/references/workflow/prompt-template.md index d924b66..acf3d67 100644 --- a/skills/baoyu-cover-image/references/workflow/prompt-template.md +++ b/skills/baoyu-cover-image/references/workflow/prompt-template.md @@ -26,6 +26,7 @@ Cover theme: [2-3 words visual interpretation] Type: [confirmed type] Palette: [confirmed palette] Rendering: [confirmed rendering] +Font: [confirmed font] Text level: [confirmed text level] Mood: [confirmed mood] Aspect ratio: [confirmed ratio] @@ -44,6 +45,13 @@ Language: [confirmed language] - balanced: "Use medium contrast, normal saturation, balanced visual weight" - bold: "Use high contrast, vivid saturated colors, heavy visual weight, dynamic energy" +# Font Application +[Based on font style:] +- clean: "Use clean geometric sans-serif typography. Modern, minimal letterforms." +- handwritten: "Use warm hand-lettered typography with organic brush strokes. Friendly, personal feel." +- serif: "Use elegant serif typography with refined letterforms. Classic, editorial character." +- display: "Use bold decorative display typography. Heavy, expressive headlines." + # Composition Type composition: - [Type-specific layout and structure]