github hugohe3/ppt-master v6.3.0

7 hours ago

Important

This release is about fidelity and evidence. Native charts and tables now follow the drawn SVG item by item, Latin text is measured from real glyph advances instead of class averages, templates install with one command, and the examples library grew to 33 decks that cover every visual style, mode, and canvas plus the first spreadsheet-, PDF-, and Style-template-driven decks. Create Template and Edit Native PPTX remain paused (bug fixes only).

Converter

  • Native charts mirror the fallback drawing. Bar order, point markers and per-point colours, area fills without strokes, clustered gaps and overlap, and where a line starts inside the plot are all read from the authored SVG; sparse cell caches import as gaps; companion text is grouped with its chart so one animation moves the whole unit and sits on the fallback baseline. The chart frame grows past the plot so PowerPoint keeps the manual vertical layout instead of collapsing it.
  • Native tables export unfilled cells as noFill, carry defaults.run colour into plain-text cells, let paragraphs cells inherit run defaults, and honour authored row heights over padding.
  • Text width from real glyphs. Arial, Times New Roman, Georgia, Verdana, and Calibri (regular, bold, italic, bold-italic) are measured from a bundled per-glyph advance table (font_advances.json); monospaced faces measure as characters × fixed advance; wide faces (Arial Black) keep their factor. A mixed-case Arial line can now fill about 94% of its text frame before the wrap headroom applies, up from 85%, and the checker and the exporter agree on the same number on every machine.
  • Export correctness fixes: hidden SVG elements and hidden clip shapes stay hidden, hidden groups keep their animation target, single-child group rotation is preserved, inline tspan dx is carried, root and native-gradient opacity apply, out-of-range shape frames and incomplete pattern fills are rejected instead of producing a file PowerPoint repairs, zero-width strokes export as no line, camera MPO JPEGs keep their primary frame, and image tools honour EXIF orientation.

Source conversion

  • Excel values keep full precision, source encodings are detected, inline spacing and absolute links survive web pages, HTML comments are dropped, raw Markdown and plain-text URLs are saved verbatim, pdf_to_md keeps line-leading decimals, --no-images works for web pages, an extension-less -o becomes <name>.md, batch conversion never overwrites an input, and import-sources copies another project's files instead of moving them.
  • The source converter's --help no longer needs optional dependencies installed (#282).

Templates

  • apply_template.py installs selected Brand / Style / Layout / Deck workspaces into a project per the apply-template-workspace runbook: validation, library/explicit provenance, Layout over Deck, roster and asset copy, idempotent re-runs, and a §5.3 receipt.
  • mbb-consulting, a new Style for strategy documents at document density — numbered exhibits with unit lines, a key-message column closing in an implication panel, five to seven modules per page, fixed page chrome, size anchors, fallback colours and typography — distilled from the EV market-priorities example. consulting-decision keeps its restrained method-first defaults.

Checker and authoring tools

  • Chart/table parity findings that would break --native-charts-and-tables are tagged as export-blocking; parity honours number_format, exact ticks, style.body_text for first columns, the centred header default, and names the multi-column rect behind a whole-column fill.
  • text_measure.py calibrate prints CAPS and DIGITS rates, an outline column, and merges --role; the width check reads inline hyperlink runs; validate resolves the real project directory; init resolves the projects root from the skill and checks the page count against the roster.
  • Animation order: unlisted groups follow the nearest listed order instead of their SVG index; static-role chrome animates when the sidecar names it, only structural layers and the slide background stay fixed; list-groups names chrome ids.
  • Slice diagnostics tell drift from overflow, keep the pure key, and flag backing panels; image search pages through a saved candidate pool; rotate_images reports failures.
  • A Tencent Cloud TokenHub image backend (tencent, aliases tokenhub / hunyuan) joins the image generators (#279).

Prompts and rules

  • Animation guidance: chrome is static by default and animates per page when named; Morph endpoints are groups fixed at first draw, continuity carriers are the default Morph; entrance order follows the reading path; illustration roles decide what moves.
  • Text and layout guidance: bounds top and bottom edges are spelled out, role groups still declare bounds, the all-tspan first line carries inline emphasis, digits use the DIGITS rate, calibration rates are sample averages with a 5% margin, and repeated writing forms are treated as method-level at the early gate.
  • Native data: data_labels type support, native objects never Morph-pair, row_heights includes the header row, borders.style form, defaults.cell, and the full chrome token list are documented where the exporter reads them.
  • docs/rules/code-style.md §11 now allows unit tests under skills/ppt-master/scripts/tests/ on stated conditions (stdlib unittest, scripts only, in-test fixtures, no CI); the suite has 212 tests.

Examples

The examples site now holds 33 decks (471 pages), with the first decks driven by a spreadsheet source (Apple FY2025 operating review from XLSX + CSV), by a PDF source (the ResearchStudio-Reel paper reading, English, academic-research Style), and by bundled Style templates (Cloudflare outage postmortem, uv product launch, EV market priorities on mbb-consulting), alongside new photo-, data-, and illustration-led decks (Apollo photo essay, China 2025 economy briefing, pixel-art breakfast atlas, solar-terms long-form and story, tea A4 handout, heritage-goods moments grid, brutalist field guide, WebGPU Quick, banner and header sets). Six May-era examples were migrated to the current checker without regenerating them.

Community

  • #278 (@WodenJay): wrapped Python daemon processes are verified on startup.
  • #282 (@QiuLsG): source converter help stays dependency-free.
  • #279: Tencent Cloud TokenHub backend.

Assets: ppt-master-skill-v6.3.0.zip is the skill-only tree for loading skills/ppt-master/ into any agent tool; the source archive carries the full repository.

Don't miss a new ppt-master release

NewReleases is sending notifications on new releases.