Commit Graph
9 Commits
Author SHA1 Message Date
李进 ba8d17ba62 add: pptxgenjs v4.0.1 full API reference 2026-07-23 12:00:19 +08:00
oldliandClaude Sonnet 5 355b01b9dc PM: html2pptx v4 - add .imported-theme-root slide detection
DashiAI real HTML uses .imported-theme-root > .slide.imported-theme-slide,
not .ppt-deck > .ppt-slide. Added as first priority selector,
. ppt-deck kept as fallback for backward compatibility.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-23 11:27:38 +08:00
oldliandClaude Sonnet 5 0f8a797b7a PM: html2pptx v3 - add rich text preservation + PPTX adapt
- extractRuns(): recursive DOM walker to extract inline formatting
  (bold, italic, color, fontSize, fontFamily) from strong/em/span
- Element data now includes 'runs' array alongside flat text
- PPTX generation: rich text uses pptxgenjs run array format,
  plain text keeps original single-style logic
- Added bounds constraints to prevent textbox overflow
- Verified: 14 slides from dashi-deck, 10 from simple,
  54 rich text elements detected

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-22 20:20:22 +08:00
oldliandClaude Sonnet 5 ca1e4dfa72 PM: html2pptx v3 - fix slide detection to direct children only
- deck.querySelectorAll('.ppt-slide') -> deck.querySelectorAll(':scope > .ppt-slide')
  prevents nested .ppt-slide elements from being counted as separate slides
- Enhanced visibility filter: check opacity, display, visibility in addition to rect size
- Tested: dashi-deck.html now returns 14 slides (was 20), simple.html returns 10

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-22 20:17:39 +08:00
oldli 34d0460130 fix: 修复slide分割/文字聚合/字号计算三个缺陷 2026-07-22 19:29:02 +08:00
oldliandClaude Sonnet 5 dc1320aada feat: core html2pptx implementation
Rewrite with element-based DOM extraction (replacing TreeWalker text node
approach), proper CSS-to-PPTX attribute mapping, robust CLI flag parsing
(-o/-p), auto port selection, 30s timeout guard, and graceful cleanup.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-22 18:46:35 +08:00
oldli d2bc6b3623 chore: init deps and test fixture 2026-07-22 18:03:49 +08:00
李进 39ef403842 add: requirements doc for HTML-to-PPTX export engine 2026-07-22 17:54:46 +08:00
李进 9744adbd52 init: html2pptx project scaffold + requirements doc 2026-07-22 17:54:42 +08:00