Skip to content

SpecterShell/PPTXConverter

Repository files navigation

PPTXConverter

English | 简体中文

PPTXConverter converts PowerPoint .pptx files to editable HTML folders, and can build a .pptx back from those folders.

It is meant for workflows where a person or an agent edits slide content outside PowerPoint, then turns the result back into a deck.

  • Convert .pptx to HTML with local assets.
  • Edit the exported HTML, images, SVG, charts, audio, and video files.
  • Convert the edited folder back to .pptx.

Install

If you are building from source:

git submodule update --init --recursive
dotnet build PPTXConverter.slnx

To create a Windows executable from WSL or Linux:

dotnet publish src/PPTXConverter.Cli/PPTXConverter.Cli.csproj -c Release -r win-x64 --self-contained false -o publish

The executable will be written to publish/PPTXConverter.exe.

Usage

Convert a PowerPoint file to HTML:

PPTXConverter pptx2html deck.pptx deck-html --overwrite

Convert an HTML folder back to PowerPoint:

PPTXConverter html2pptx deck-html deck-edited.pptx --overwrite

When running directly from source, use:

dotnet run --project src/PPTXConverter.Cli -- pptx2html deck.pptx deck-html --overwrite
dotnet run --project src/PPTXConverter.Cli -- html2pptx deck-html deck-edited.pptx --overwrite

HTML Folder Layout

After conversion, the output folder looks like this:

deck-html/
|-- deck-manifest.json
|-- slides/
|   |-- 0001/
|   |   |-- slide.html
|   |   |-- roundtrip.json
|   |   |-- assets/
|   |   |   `-- image.png
|   |   `-- charts/
|   |       |-- chart-001.html
|   |       `-- chart-001.json
|   `-- 0002/
|       `-- slide.html
`-- logs/
    `-- export.jsonl

Most edits should happen in slide.html, assets/, and chart tables such as chart-001.html. Keep manifest and round-trip files unless you intentionally need to change the deck structure.

Languages

PPTXConverter uses your system language when a matching translation is available. If not, it falls back to English.

Currently supported locales:

  • en
  • zh-CN

More locales can be added through the files in resources/i18n.

Notes

The HTML output is intentionally plain slide content, not a presentation viewer with navigation controls.

Some advanced PowerPoint features may be simplified during conversion. When that happens, PPTXConverter keeps the available asset where possible and writes a warning instead of failing the whole deck.

License

This project is licensed under the MIT license.

This project depends on OfficeCLI. OfficeCLI is licensed under the Apache-2.0 license.

About

PPTX <-> HTML converter

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages