Skip to content

Tags: mosjin/ppt-master

Tags

v2.9.0

Toggle v2.9.0's commit message
Release v2.9.0 - upstream v2.11 sync + single-panel guard (#11)

v11.0-standard

Toggle v11.0-standard's commit message
v11.0 标准冻结基线 — EduForge v11.0 七联帧 Q→P→D→B→M→A→I + 五幕 RLSIΣ + 58项检查清单

v2.7.3

Toggle v2.7.3's commit message
fix: parse_hex_color accepts CSS named colors + rgb() — bump 2.7.3 (f…

…ixes eduForge hugohe3#19)

Bug:
- parse_hex_color() in drawingml_utils.py rejected non-hex inputs
- Callers fell back to '000000' (black) when None returned
- SVGs using fill="white" (and other CSS named colors) rendered as
  BLACK text in DrawingML output
- On dark-themed slides (e.g., #0D1117 bg), white-on-dark text became
  black-on-dark → entire pages appeared blank/black in PowerPoint

Reproducer (eduForge hugohe3#19):
- LLM generated dark-theme SVGs with fill="white" / fill="navy" / etc.
- ppt-master converted them; every named-color fill collapsed to '000000'
- User: "95% of PPT pages render as black images"
- Verified on dp_lis P01.svg: 6 fill="white" text runs were silently
  converted to fill="000000" before this fix

Fix:
1. Added _CSS_NAMED_COLORS dict (147 CSS Color Module Level 3 names →
   6-digit hex, including SVG additions like 'rebeccapurple', 'transparent')
2. Extended parse_hex_color to handle:
   - #RRGGBB (canonical hex, unchanged)
   - #RGB (3-digit shorthand, unchanged)
   - CSS named colors (case-insensitive lookup, NEW)
   - rgb(R, G, B) / rgb(R G B) functional notation (NEW)
3. Documented hugohe3#19 root cause inline so future readers don't reintroduce.

Verification (e2e on dp_lis P01.svg):
  Before fix: 0 white runs (all collapsed to black)
  After fix:  6 white runs preserved correctly as FFFFFF

Version bump 2.7.2 → 2.7.3 (marketplace.json + SKILL.md).

ppt-master--v2.7.2

Toggle ppt-master--v2.7.2's commit message
v2.7.2

ppt-master--v2.7.1

Toggle ppt-master--v2.7.1's commit message
ppt-master 2.7.1

ppt-master--v2.7.0

Toggle ppt-master--v2.7.0's commit message
ppt-master 2.7.0