github hugohe3/ppt-master v6.8.0

2 hours ago

The OpenAI image backend now defaults to gpt-image-2.5-sunburst, and image generation accepts any W:H aspect ratio. This release also brings a round of Edit Native, template-import, and source-conversion fixes that stop content from being silently dropped, plus PowerPoint-exact animation timing.

AI image generation

  • The OpenAI backend now defaults to gpt-image-2.5-sunburst. Measured on the official endpoint at 1024×1024 medium, it used about a quarter of the output tokens of gpt-image-2 (~$0.013 vs ~$0.053) and returned in about half the time. It also returns real RGBA for OPENAI_BACKGROUND=transparent. OPENAI_MODEL still overrides it (fc7aa7c, 27be992, af5029c).
  • aspect_ratio accepts any positive W:H, decimals included (e.g. 1.85:1). Unsupported ratios no longer fail a request: each backend picks the nearest size its model allows, reports the adaptation, and placement crops to the requested shape (b1b7f1b, be8a19d, e61c34e).
  • Rate limits are handled properly. Retry-After is honored by every backend and by manifest requeues. Waits are capped so that a huge header value can no longer crash the run or block it for a day, and a run that stops with items still pending exits non-zero (c02689f, 230afab, 4c3961a, 625e05a).
  • --filename values containing dots (gpt-image-2.5-sunburst_hero) are no longer truncated at the last dot, which made each such run silently overwrite the previous file (c02689f).

Edit Native PPTX

  • When only a chart's data changes, the imported chart is now patched in place instead of being rebuilt from JSON. Gradient fills, slice separators, legend layout, per-point data labels, marker outlines, and style and theme overrides now survive the edit (78759bf).
  • Charts that do get rebuilt keep the gap width, overlap, inner layout, axis label typography, and chart language. A rebuild no longer borrows an unrelated frame (0396656). Theme font tokens such as +mn-ea stay in their East Asian and complex-script slots (78fcef9). Charts whose source does not vary point colors are no longer imported as varied (351041e).
  • Editing any cell of an imported table with merged cells no longer makes --native-charts-and-tables fail (48ee45f).
  • New objects on a rebuilt slide keep their SVG stacking order. A new full-canvas rect is kept as an object instead of being dropped as a background (bc11148, 523e5bd).

PPTX import and Create Template

  • Real-world PPTX files with zero-size geometry no longer hard-fail. This covers horizontal and vertical rules, collinear groups, and vertical CJK text groups. Geometry that cannot be recovered is kept and reported instead of silently dropped. Thanks @SunshineLin-li (#329; 5832c3a, 6965c0d, cafb4cc, 83ac084, ce1a622, e8ac905).
  • Theme line styles (a:lnRef) now resolve to the theme's width, cap, dash, and alpha instead of a 1px stroke (83ac084). Imported custom-geometry connectors export correctly (3b86578).
  • Content the author hid in PowerPoint no longer leaks into source Markdown, the Beautify inventory, or rebuilt speaker notes, and each exclusion is reported (2cdae00).
  • Beautify now includes chart titles in its frozen inventory and verifier, so a dropped title fails --verify (694bdac).

Source conversion (source_to_md)

  • PowerPoint: Office Math is kept as LaTeX, and the Fallback of mc:AlternateContent (3D models, ink, zoom) is read. Chart titles and picture alt text are used as labels (0501129, fd17372, 6d1cb8f).
  • DOCX: text now matches what Word displays. Simple-field results (caption numbers, document properties) are kept, hidden runs are excluded, and footnote and endnote math is converted (1ad85c1).
  • EPUB, ODT, and RTF: text the readers skipped is recovered, including EPUB footnote files (f3660bf). HTML <template> markup no longer leaks into page text (b7a2d9f).

Animations

  • Animation timing now follows PowerPoint's beat semantics. An after-previous row waits for every effect in its click group to finish, every with-previous delay counts from the beat start, and each beat's rows are grouped under one shared timing node, matching what PowerPoint writes. Thanks @Victor-Quqi (#331; 5b7e56b, e897e76, dea06b9, 6615a22).

Finalize and live preview editor

  • Splitting text rows, and other finalize or editor rewrites, now keep the element's id, name, role, visibility, and references, so hidden text no longer becomes visible and locators no longer break (06f0d11).

Quality checker

  • Hyperlinks are compared after XML decoding, so &amp; in a query string, an alternate xlink prefix, or a numeric character reference no longer raises a false outline-hyperlink error. Thanks @I1eanch (#338).

Installation and docs

  • Supported Python is now capped at 3.14. The Windows guide adds troubleshooting for source builds: on 3.15, PyYAML has no wheel yet and pip falls back to compiling it (15baa7c).
  • The spec-lock reference states that icons.inventory is none when no icon is prepared (687a00a).

Don't miss a new ppt-master release

NewReleases is sending notifications on new releases.