Update: 将子项目从 submodule 转为完整内容
- 移除 GovAI, nomifun-tauri, 算力盒子 的 submodule 引用 - 添加所有子项目的完整源代码 - 保留原始 .git 为 .git.bak 备份
This commit is contained in:
+314
@@ -0,0 +1,314 @@
|
||||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
OUTPUT="$SCRIPT_DIR/dark__premium_navy.pptx"
|
||||
|
||||
echo "Building: dark--premium-navy (Annual Strategy Review)"
|
||||
rm -f "$OUTPUT"
|
||||
officecli create "$OUTPUT"
|
||||
|
||||
# Colors
|
||||
BG=0C1B33
|
||||
GOLD=C9A84C
|
||||
NAVY=1E3A5F
|
||||
STEEL=8EACC1
|
||||
WHITE=FFFFFF
|
||||
NAVY2=2C4F7C
|
||||
GRAY=5A7A9A
|
||||
|
||||
# Off-canvas position
|
||||
OFFSCREEN=36cm
|
||||
|
||||
# ============================================
|
||||
# SLIDE 1 - HERO
|
||||
# ============================================
|
||||
echo "Building Slide 1: Hero..."
|
||||
|
||||
officecli add "$OUTPUT" '/' --type slide --prop layout=blank --prop background=$BG
|
||||
|
||||
# Scene actors: decorative elements
|
||||
officecli add "$OUTPUT" '/slide[1]' --type shape \
|
||||
--prop 'name=!!bar-gold' \
|
||||
--prop fill=$GOLD \
|
||||
--prop x=7.9cm --prop y=11.5cm --prop width=18cm --prop height=0.08cm
|
||||
|
||||
officecli add "$OUTPUT" '/slide[1]' --type shape \
|
||||
--prop 'name=!!bar-navy' \
|
||||
--prop fill=$NAVY \
|
||||
--prop x=30cm --prop y=2.5cm --prop width=0.06cm --prop height=14cm
|
||||
|
||||
officecli add "$OUTPUT" '/slide[1]' --type shape \
|
||||
--prop 'name=!!frame-gold' \
|
||||
--prop preset=roundRect \
|
||||
--prop fill=$GOLD \
|
||||
--prop opacity=0.15 \
|
||||
--prop x=24cm --prop y=1cm --prop width=8cm --prop height=6cm
|
||||
|
||||
officecli add "$OUTPUT" '/slide[1]' --type shape \
|
||||
--prop 'name=!!frame-navy' \
|
||||
--prop preset=roundRect \
|
||||
--prop fill=$NAVY \
|
||||
--prop opacity=0.3 \
|
||||
--prop x=1.2cm --prop y=12cm --prop width=10cm --prop height=6cm
|
||||
|
||||
officecli add "$OUTPUT" '/slide[1]' --type shape \
|
||||
--prop 'name=!!accent-gold' \
|
||||
--prop preset=ellipse \
|
||||
--prop fill=$GOLD \
|
||||
--prop opacity=0.2 \
|
||||
--prop x=28cm --prop y=14cm --prop width=3cm --prop height=3cm
|
||||
|
||||
officecli add "$OUTPUT" '/slide[1]' --type shape \
|
||||
--prop 'name=!!accent-steel' \
|
||||
--prop preset=ellipse \
|
||||
--prop fill=$STEEL \
|
||||
--prop opacity=0.15 \
|
||||
--prop x=1.5cm --prop y=1cm --prop width=4cm --prop height=4cm
|
||||
|
||||
officecli add "$OUTPUT" '/slide[1]' --type shape \
|
||||
--prop 'name=!!dot-gold' \
|
||||
--prop preset=ellipse \
|
||||
--prop fill=$GOLD \
|
||||
--prop opacity=0.6 \
|
||||
--prop x=26cm --prop y=8cm --prop width=1.5cm --prop height=1.5cm
|
||||
|
||||
officecli add "$OUTPUT" '/slide[1]' --type shape \
|
||||
--prop 'name=!!dot-white' \
|
||||
--prop preset=ellipse \
|
||||
--prop fill=$WHITE \
|
||||
--prop opacity=0.3 \
|
||||
--prop x=5cm --prop y=15cm --prop width=1cm --prop height=1cm
|
||||
|
||||
# Slide 1 hero text (visible)
|
||||
officecli add "$OUTPUT" '/slide[1]' --type shape \
|
||||
--prop 'name=!!hero-title' \
|
||||
--prop text="Annual Strategy Review" \
|
||||
--prop font="Arial" \
|
||||
--prop size=60 \
|
||||
--prop bold=true \
|
||||
--prop color=$WHITE \
|
||||
--prop align=center \
|
||||
--prop fill=none \
|
||||
--prop x=4cm --prop y=4cm --prop width=26cm --prop height=3.5cm
|
||||
|
||||
officecli add "$OUTPUT" '/slide[1]' --type shape \
|
||||
--prop 'name=!!hero-sub' \
|
||||
--prop text="Excellence in Execution" \
|
||||
--prop font="Arial" \
|
||||
--prop size=24 \
|
||||
--prop color=$GOLD \
|
||||
--prop align=center \
|
||||
--prop fill=none \
|
||||
--prop x=4cm --prop y=7.8cm --prop width=26cm --prop height=2cm
|
||||
|
||||
# Pillar card elements (hidden initially, shown on slide 3)
|
||||
officecli add "$OUTPUT" '/slide[1]' --type shape \
|
||||
--prop 'name=!!card-1-num' \
|
||||
--prop text="01" \
|
||||
--prop font="Arial" \
|
||||
--prop size=48 \
|
||||
--prop color=$GOLD \
|
||||
--prop fill=none \
|
||||
--prop x=${OFFSCREEN} --prop y=6.2cm --prop width=4cm --prop height=2.5cm
|
||||
|
||||
officecli add "$OUTPUT" '/slide[1]' --type shape \
|
||||
--prop 'name=!!card-1-title' \
|
||||
--prop text="Vision" \
|
||||
--prop font="Arial" \
|
||||
--prop size=22 \
|
||||
--prop color=$WHITE \
|
||||
--prop fill=none \
|
||||
--prop x=${OFFSCREEN} --prop y=8.8cm --prop width=6.5cm --prop height=2cm
|
||||
|
||||
officecli add "$OUTPUT" '/slide[1]' --type shape \
|
||||
--prop 'name=!!card-1-desc' \
|
||||
--prop text="Setting the direction with bold ambition and strategic foresight" \
|
||||
--prop font="Arial" \
|
||||
--prop size=14 \
|
||||
--prop color=$STEEL \
|
||||
--prop fill=none \
|
||||
--prop x=${OFFSCREEN} --prop y=10.8cm --prop width=6.5cm --prop height=4cm
|
||||
|
||||
officecli add "$OUTPUT" '/slide[1]' --type shape \
|
||||
--prop 'name=!!card-2-num' \
|
||||
--prop text="02" \
|
||||
--prop font="Arial" \
|
||||
--prop size=48 \
|
||||
--prop color=$GOLD \
|
||||
--prop fill=none \
|
||||
--prop x=${OFFSCREEN} --prop y=6.2cm --prop width=4cm --prop height=2.5cm
|
||||
|
||||
officecli add "$OUTPUT" '/slide[1]' --type shape \
|
||||
--prop 'name=!!card-2-title' \
|
||||
--prop text="Execution" \
|
||||
--prop font="Arial" \
|
||||
--prop size=22 \
|
||||
--prop color=$WHITE \
|
||||
--prop fill=none \
|
||||
--prop x=${OFFSCREEN} --prop y=8.8cm --prop width=6.5cm --prop height=2cm
|
||||
|
||||
officecli add "$OUTPUT" '/slide[1]' --type shape \
|
||||
--prop 'name=!!card-2-desc' \
|
||||
--prop text="Delivering results through disciplined operational excellence" \
|
||||
--prop font="Arial" \
|
||||
--prop size=14 \
|
||||
--prop color=$STEEL \
|
||||
--prop fill=none \
|
||||
--prop x=${OFFSCREEN} --prop y=10.8cm --prop width=6.5cm --prop height=4cm
|
||||
|
||||
officecli add "$OUTPUT" '/slide[1]' --type shape \
|
||||
--prop 'name=!!card-3-num' \
|
||||
--prop text="03" \
|
||||
--prop font="Arial" \
|
||||
--prop size=48 \
|
||||
--prop color=$GOLD \
|
||||
--prop fill=none \
|
||||
--prop x=${OFFSCREEN} --prop y=6.2cm --prop width=4cm --prop height=2.5cm
|
||||
|
||||
officecli add "$OUTPUT" '/slide[1]' --type shape \
|
||||
--prop 'name=!!card-3-title' \
|
||||
--prop text="Results" \
|
||||
--prop font="Arial" \
|
||||
--prop size=22 \
|
||||
--prop color=$WHITE \
|
||||
--prop fill=none \
|
||||
--prop x=${OFFSCREEN} --prop y=8.8cm --prop width=6.5cm --prop height=2cm
|
||||
|
||||
officecli add "$OUTPUT" '/slide[1]' --type shape \
|
||||
--prop 'name=!!card-3-desc' \
|
||||
--prop text="Measuring impact with transparent metrics and accountability" \
|
||||
--prop font="Arial" \
|
||||
--prop size=14 \
|
||||
--prop color=$STEEL \
|
||||
--prop fill=none \
|
||||
--prop x=${OFFSCREEN} --prop y=10.8cm --prop width=6.5cm --prop height=4cm
|
||||
|
||||
# ============================================
|
||||
# SLIDE 2 - STATEMENT
|
||||
# ============================================
|
||||
echo "Building Slide 2: Statement..."
|
||||
|
||||
officecli add "$OUTPUT" '/' --from '/slide[1]'
|
||||
officecli set "$OUTPUT" '/slide[2]' --prop transition=morph
|
||||
|
||||
# Move scene actors
|
||||
officecli set "$OUTPUT" '/slide[2]/shape[1]' --prop x=2cm --prop y=9.5cm --prop width=18cm
|
||||
officecli set "$OUTPUT" '/slide[2]/shape[2]' --prop x=3cm --prop y=3cm --prop height=14cm
|
||||
officecli set "$OUTPUT" '/slide[2]/shape[3]' --prop x=26cm --prop y=11cm --prop width=6cm --prop height=5cm
|
||||
officecli set "$OUTPUT" '/slide[2]/shape[4]' --prop x=20cm --prop y=0.5cm --prop width=12cm --prop height=10cm
|
||||
officecli set "$OUTPUT" '/slide[2]/shape[5]' --prop x=1cm --prop y=13cm
|
||||
officecli set "$OUTPUT" '/slide[2]/shape[6]' --prop x=28cm --prop y=2cm
|
||||
officecli set "$OUTPUT" '/slide[2]/shape[7]' --prop x=6cm --prop y=14cm
|
||||
officecli set "$OUTPUT" '/slide[2]/shape[8]' --prop x=30cm --prop y=8cm
|
||||
|
||||
# Update hero text to statement
|
||||
officecli set "$OUTPUT" '/slide[2]/shape[9]' --prop text="Leading Through Change" --prop size=54 --prop y=6cm --prop height=4cm
|
||||
officecli set "$OUTPUT" '/slide[2]/shape[10]' --prop text="Navigating uncertainty with clarity and purpose" --prop size=20 --prop color=$STEEL --prop y=10.5cm
|
||||
|
||||
# ============================================
|
||||
# SLIDE 3 - PILLARS
|
||||
# ============================================
|
||||
echo "Building Slide 3: Pillars..."
|
||||
|
||||
officecli add "$OUTPUT" '/' --from '/slide[2]'
|
||||
officecli set "$OUTPUT" '/slide[3]' --prop transition=morph
|
||||
|
||||
# Move scene actors
|
||||
officecli set "$OUTPUT" '/slide[3]/shape[1]' --prop x=4cm --prop y=2.5cm --prop width=26cm
|
||||
officecli set "$OUTPUT" '/slide[3]/shape[2]' --prop x=12.5cm --prop y=5cm --prop height=12cm
|
||||
officecli set "$OUTPUT" '/slide[3]/shape[3]' --prop preset=roundRect --prop x=2cm --prop y=5.5cm --prop width=9cm --prop height=11cm --prop opacity=0.12
|
||||
officecli set "$OUTPUT" '/slide[3]/shape[4]' --prop preset=roundRect --prop x=12.8cm --prop y=5.5cm --prop width=9cm --prop height=11cm --prop opacity=0.12
|
||||
officecli set "$OUTPUT" '/slide[3]/shape[5]' --prop preset=roundRect --prop x=23.5cm --prop y=5.5cm --prop width=9cm --prop height=11cm --prop opacity=0.12 --prop fill=$NAVY2
|
||||
officecli set "$OUTPUT" '/slide[3]/shape[6]' --prop x=30cm --prop y=1cm --prop width=2cm --prop height=2cm
|
||||
officecli set "$OUTPUT" '/slide[3]/shape[7]' --prop x=1.2cm --prop y=2cm --prop width=1cm --prop height=1cm
|
||||
officecli set "$OUTPUT" '/slide[3]/shape[8]' --prop x=16cm --prop y=2cm --prop width=0.6cm --prop height=0.6cm
|
||||
|
||||
# Update title
|
||||
officecli set "$OUTPUT" '/slide[3]/shape[9]' --prop text="Our Three Pillars" --prop size=40 --prop align=left --prop x=2cm --prop y=0.8cm --prop width=20cm --prop height=2.5cm
|
||||
officecli set "$OUTPUT" '/slide[3]/shape[10]' --prop text="" --prop x=${OFFSCREEN}
|
||||
|
||||
# Show pillar cards
|
||||
officecli set "$OUTPUT" '/slide[3]/shape[11]' --prop x=3.2cm
|
||||
officecli set "$OUTPUT" '/slide[3]/shape[12]' --prop x=3.2cm
|
||||
officecli set "$OUTPUT" '/slide[3]/shape[13]' --prop x=3.2cm
|
||||
officecli set "$OUTPUT" '/slide[3]/shape[14]' --prop x=14cm
|
||||
officecli set "$OUTPUT" '/slide[3]/shape[15]' --prop x=14cm
|
||||
officecli set "$OUTPUT" '/slide[3]/shape[16]' --prop x=14cm
|
||||
officecli set "$OUTPUT" '/slide[3]/shape[17]' --prop x=24.8cm
|
||||
officecli set "$OUTPUT" '/slide[3]/shape[18]' --prop x=24.8cm
|
||||
officecli set "$OUTPUT" '/slide[3]/shape[19]' --prop x=24.8cm
|
||||
|
||||
# ============================================
|
||||
# SLIDE 4 - EVIDENCE
|
||||
# ============================================
|
||||
echo "Building Slide 4: Evidence..."
|
||||
|
||||
officecli add "$OUTPUT" '/' --from '/slide[3]'
|
||||
officecli set "$OUTPUT" '/slide[4]' --prop transition=morph
|
||||
|
||||
# Move scene actors
|
||||
officecli set "$OUTPUT" '/slide[4]/shape[1]' --prop x=1.2cm --prop y=17cm --prop width=32cm
|
||||
officecli set "$OUTPUT" '/slide[4]/shape[2]' --prop x=22cm --prop y=1cm --prop height=17cm
|
||||
officecli set "$OUTPUT" '/slide[4]/shape[3]' --prop preset=roundRect --prop x=1.2cm --prop y=3.5cm --prop width=13cm --prop height=12cm --prop opacity=0.45 --prop fill=$GOLD
|
||||
officecli set "$OUTPUT" '/slide[4]/shape[4]' --prop preset=roundRect --prop x=15.5cm --prop y=3.5cm --prop width=8cm --prop height=8cm --prop opacity=0.35 --prop fill=$NAVY
|
||||
officecli set "$OUTPUT" '/slide[4]/shape[5]' --prop x=28cm --prop y=12cm --prop width=4cm --prop height=4cm --prop opacity=0.25
|
||||
officecli set "$OUTPUT" '/slide[4]/shape[6]' --prop x=25cm --prop y=4cm --prop width=3cm --prop height=3cm --prop opacity=0.15
|
||||
officecli set "$OUTPUT" '/slide[4]/shape[7]' --prop x=30cm --prop y=2cm
|
||||
officecli set "$OUTPUT" '/slide[4]/shape[8]' --prop x=24cm --prop y=16cm
|
||||
|
||||
# Update title to metrics
|
||||
officecli set "$OUTPUT" '/slide[4]/shape[9]' --prop text="Performance Metrics" --prop size=36 --prop align=left --prop x=1.2cm --prop y=0.8cm --prop width=20cm --prop height=2.5cm
|
||||
officecli set "$OUTPUT" '/slide[4]/shape[10]' --prop text="FY2025 Annual Results" --prop size=16 --prop color=$GRAY --prop align=left --prop x=1.2cm --prop y=2.8cm --prop width=12cm --prop height=1.2cm
|
||||
|
||||
# Show metrics (reuse card shapes)
|
||||
officecli set "$OUTPUT" '/slide[4]/shape[11]' --prop text="$128M" --prop size=64 --prop x=2.4cm --prop y=5.5cm --prop width=10cm --prop height=3.5cm
|
||||
officecli set "$OUTPUT" '/slide[4]/shape[12]' --prop text="Revenue" --prop size=24 --prop x=2.4cm --prop y=9cm --prop width=10cm --prop height=2cm
|
||||
officecli set "$OUTPUT" '/slide[4]/shape[13]' --prop text="Year-over-year growth driven by strategic expansion" --prop size=14 --prop x=2.4cm --prop y=11cm --prop width=10cm --prop height=3cm
|
||||
officecli set "$OUTPUT" '/slide[4]/shape[14]' --prop text="34%" --prop size=54 --prop x=16.5cm --prop y=5cm --prop width=6cm --prop height=3cm
|
||||
officecli set "$OUTPUT" '/slide[4]/shape[15]' --prop text="Growth" --prop size=22 --prop x=16.5cm --prop y=8cm --prop width=6cm --prop height=1.8cm
|
||||
officecli set "$OUTPUT" '/slide[4]/shape[16]' --prop text="Outpacing industry average by 2.1x" --prop size=14 --prop x=16.5cm --prop y=9.8cm --prop width=6cm --prop height=2cm
|
||||
officecli set "$OUTPUT" '/slide[4]/shape[17]' --prop text="#1" --prop size=48 --prop x=25cm --prop y=5cm --prop width=6cm --prop height=3cm
|
||||
officecli set "$OUTPUT" '/slide[4]/shape[18]' --prop text="Market Share" --prop size=20 --prop x=25cm --prop y=8cm --prop width=6cm --prop height=1.8cm
|
||||
officecli set "$OUTPUT" '/slide[4]/shape[19]' --prop text="Leading position across all key segments" --prop size=14 --prop x=25cm --prop y=9.8cm --prop width=6cm --prop height=2cm
|
||||
|
||||
# ============================================
|
||||
# SLIDE 5 - CTA
|
||||
# ============================================
|
||||
echo "Building Slide 5: CTA..."
|
||||
|
||||
officecli add "$OUTPUT" '/' --from '/slide[4]'
|
||||
officecli set "$OUTPUT" '/slide[5]' --prop transition=morph
|
||||
|
||||
# Move scene actors
|
||||
officecli set "$OUTPUT" '/slide[5]/shape[1]' --prop x=10cm --prop y=12.5cm --prop width=14cm
|
||||
officecli set "$OUTPUT" '/slide[5]/shape[2]' --prop x=16.9cm --prop y=1cm --prop height=10cm
|
||||
officecli set "$OUTPUT" '/slide[5]/shape[3]' --prop preset=roundRect --prop x=2cm --prop y=13cm --prop width=6cm --prop height=4cm --prop opacity=0.15 --prop fill=$GOLD
|
||||
officecli set "$OUTPUT" '/slide[5]/shape[4]' --prop preset=roundRect --prop x=25cm --prop y=1cm --prop width=7cm --prop height=6cm --prop opacity=0.3 --prop fill=$NAVY
|
||||
officecli set "$OUTPUT" '/slide[5]/shape[5]' --prop preset=ellipse --prop x=30cm --prop y=15cm --prop width=2.5cm --prop height=2.5cm --prop opacity=0.2 --prop fill=$GOLD
|
||||
officecli set "$OUTPUT" '/slide[5]/shape[6]' --prop x=1cm --prop y=14cm --prop width=3cm --prop height=3cm --prop opacity=0.15
|
||||
officecli set "$OUTPUT" '/slide[5]/shape[7]' --prop x=8cm --prop y=16cm
|
||||
officecli set "$OUTPUT" '/slide[5]/shape[8]' --prop x=26cm --prop y=10cm
|
||||
|
||||
# Update to CTA text
|
||||
officecli set "$OUTPUT" '/slide[5]/shape[9]' --prop text="The Road Ahead" --prop size=60 --prop align=center --prop x=4cm --prop y=4cm --prop width=26cm --prop height=3.5cm
|
||||
officecli set "$OUTPUT" '/slide[5]/shape[10]' --prop text="Building the future, together" --prop size=22 --prop color=$GOLD --prop align=center --prop x=4cm --prop y=8cm --prop width=26cm --prop height=2cm
|
||||
|
||||
# Hide metrics
|
||||
officecli set "$OUTPUT" '/slide[5]/shape[11]' --prop text="" --prop x=${OFFSCREEN}
|
||||
officecli set "$OUTPUT" '/slide[5]/shape[12]' --prop text="" --prop x=${OFFSCREEN}
|
||||
officecli set "$OUTPUT" '/slide[5]/shape[13]' --prop text="" --prop x=${OFFSCREEN}
|
||||
officecli set "$OUTPUT" '/slide[5]/shape[14]' --prop text="" --prop x=${OFFSCREEN}
|
||||
officecli set "$OUTPUT" '/slide[5]/shape[15]' --prop text="" --prop x=${OFFSCREEN}
|
||||
officecli set "$OUTPUT" '/slide[5]/shape[16]' --prop text="" --prop x=${OFFSCREEN}
|
||||
officecli set "$OUTPUT" '/slide[5]/shape[17]' --prop text="" --prop x=${OFFSCREEN}
|
||||
officecli set "$OUTPUT" '/slide[5]/shape[18]' --prop text="" --prop x=${OFFSCREEN}
|
||||
officecli set "$OUTPUT" '/slide[5]/shape[19]' --prop text="" --prop x=${OFFSCREEN}
|
||||
|
||||
# ============================================
|
||||
# FINAL VALIDATION
|
||||
# ============================================
|
||||
officecli validate "$OUTPUT"
|
||||
officecli view "$OUTPUT" outline
|
||||
|
||||
echo "✅ Build complete: $OUTPUT"
|
||||
BIN
Binary file not shown.
+78
@@ -0,0 +1,78 @@
|
||||
# 05-premium-navy — Premium Navy & Gold
|
||||
|
||||
## Style Overview
|
||||
|
||||
Deep navy background paired with gold and steel blue accents, creating a premium enterprise-grade visual language.
|
||||
|
||||
- **Scene**: Premium enterprise, annual strategy, board reports
|
||||
- **Mood**: Authoritative, refined, premium, trustworthy
|
||||
- **Tone**: Deep navy base + gold highlights + steel blue auxiliary
|
||||
|
||||
## Color Palette
|
||||
|
||||
| Name | Hex | Usage |
|
||||
| ------------- | -------- | ------------------------------------------------------ |
|
||||
| Deep Navy | `0C1B33` | Background |
|
||||
| Rich Gold | `C9A84C` | Gold horizontal lines, frames, dots, number highlights |
|
||||
| Pure White | `FFFFFF` | Title text |
|
||||
| Mid Navy | `1E3A5F` | Vertical lines, frame base color |
|
||||
| Steel Blue | `8EACC1` | Accent circles, description text |
|
||||
| Navy Emphasis | `2C4F7C` | Card background |
|
||||
|
||||
## Typography
|
||||
|
||||
| Role | Font | Size | Color |
|
||||
| ---------------- | -------------- | ------- | ------ |
|
||||
| Main Title | Segoe UI Black | 60pt | FFFFFF |
|
||||
| Subtitle | Segoe UI Light | 24pt | C9A84C |
|
||||
| Card Number | Segoe UI Black | 48pt | C9A84C |
|
||||
| Card Title | Segoe UI Black | 22pt | FFFFFF |
|
||||
| Card Description | Segoe UI Light | 14pt | 8EACC1 |
|
||||
| Data Numbers | Segoe UI Black | 54-64pt | FFFFFF |
|
||||
| Auxiliary Notes | Segoe UI Light | 16-18pt | 8EACC1 |
|
||||
|
||||
## Design Techniques
|
||||
|
||||
- **Gold fine line separators**: Horizontal gold lines (height=0.08cm), vertical navy lines (width=0.06cm) building refined grid
|
||||
- **Semi-transparent frames**: `roundRect` as card background (opacity 0.12-0.45), alternating gold and navy
|
||||
- **Gold dot accents**: Small `ellipse` as visual anchors, gold opacity 0.6, white opacity 0.3
|
||||
- **High contrast on dark background**: White titles + gold subtitles, forming strong hierarchy on deep navy
|
||||
- **Morph animation**: Gold lines and frames rearrange between pages, frames transform into data area backgrounds
|
||||
|
||||
## Scene Elements
|
||||
|
||||
8 scene elements total, different positions on each page:
|
||||
|
||||
| Name | preset | fill | opacity | Typical Size | Description |
|
||||
| ---------------- | --------- | ------ | ------- | ------------- | --------------------------- |
|
||||
| `!!bar-gold` | rect | C9A84C | 1.0 | 18cm x 0.08cm | Gold horizontal line |
|
||||
| `!!bar-navy` | rect | 1E3A5F | 1.0 | 0.06cm x 14cm | Navy vertical line |
|
||||
| `!!frame-gold` | roundRect | C9A84C | 0.15 | 8cm x 6cm | Gold semi-transparent frame |
|
||||
| `!!frame-navy` | roundRect | 1E3A5F | 0.30 | 10cm x 6cm | Navy semi-transparent frame |
|
||||
| `!!accent-gold` | ellipse | C9A84C | 0.20 | 3cm x 3cm | Gold accent circle |
|
||||
| `!!accent-steel` | ellipse | 8EACC1 | 0.15 | 4cm x 4cm | Steel blue accent circle |
|
||||
| `!!dot-gold` | ellipse | C9A84C | 0.60 | 1.5cm x 1.5cm | Gold small dot |
|
||||
| `!!dot-white` | ellipse | FFFFFF | 0.30 | 1cm x 1cm | White small dot |
|
||||
|
||||
## Page Structure
|
||||
|
||||
5 pages total, Slides 2-5 set `transition=morph`:
|
||||
|
||||
| Slide | Type | Description |
|
||||
| ------- | --------------------- | -------------------------------------------------------------------------------------------------------------------- |
|
||||
| Slide 1 | Hero | Centered large title in white + gold subtitle, gold line across center |
|
||||
| Slide 2 | Statement | Large statement text, gold lines and frames rearranged |
|
||||
| Slide 3 | 3-Column Pillars | Gold lines as column top separators, three roundRect cards (opacity 0.12) side by side, number + title + description |
|
||||
| Slide 4 | Metrics / Performance | Gold frame enlarged as data background area, showing metrics like $128M / 34% / #1 |
|
||||
| Slide 5 | CTA / Closing | Frames shrink to corner accents, centered large title + gold subtitle |
|
||||
|
||||
## Reference Script
|
||||
|
||||
Complete build script is in `build.sh`.
|
||||
**Recommended slides to read for understanding core design techniques**:
|
||||
|
||||
- **Slide 1 (Hero)** — Initial layout of 8 scene actors, combination of gold lines + frames + dots
|
||||
- **Slide 3 (Pillars)** — Frames transform into card backgrounds, gold lines become column top separators
|
||||
- **Slide 4 (Metrics)** — Advanced technique of frames enlarging and changing color to data area background
|
||||
|
||||
No need to read all — skim 2-3 representative slides.
|
||||
Reference in New Issue
Block a user