Compare
pptxboss vs office-oxide.
Both are Rust engines with Python wheels under MIT OR Apache-2.0. office-oxide reads DOCX, XLSX, PPTX, DOC, XLS and PPT files. pptxboss reads and verifies PowerPoint decks only, and on that path it is the faster of the two on every corpus measured. Here is where each one stands.
| pptxboss | office-oxide | |
|---|---|---|
| License | MIT OR Apache-2.0 | MIT OR Apache-2.0 |
| Formats | .pptx (Strict and Transitional) and .ppt | DOCX, XLSX, PPTX, DOC, XLS, PPT |
| Text extraction, 631 decks | 9,868 files/s on all cores, 7,942 on one thread | 3,163 files/s, one thread per file |
| 43-slide, 42 MB deck | 1.38 ms on one thread, 0.44 ms on all cores | 4.89 ms |
| 153 legacy .ppt files, 41 MB | 15 ms | 61 ms |
| Chart and SmartArt text | Included with the slide text | Not produced in the benchmark |
| Speaker notes, comments, sections, properties | Read | Not measured |
| Markdown output | Yes | Not measured |
| Verification | 72 clause-numbered ECMA-376 rules | None |
| Creating decks | From Rust or the CLI | No |
| Master placeholder text | Never included | Included in .ppt output |
Throughput rows come from the pptxboss benchmark harness with office-oxide 0.1.10. Format and feature statements about office-oxide are from its own package description; rows marked “not measured” were not part of the comparison.
Where office-oxide is ahead
What office-oxide does that pptxboss does not.
- Reads Word and Excel files, modern and legacy, from one package. pptxboss reads PowerPoint decks only.
Where pptxboss is ahead
What pptxboss does that office-oxide does not.
- Speed: 2.5 to 3.1 times on the test-suite corpus, 3.5 times on a real 43-slide deck, 4 times on legacy .ppt files, at 27% of the CPU time on the large deck.
- Chart titles, series, categories and values and SmartArt text with the slide text.
- A verifier with 72 clause-numbered rules, and a report of every skipped item returned with the text.
- Deck creation with deterministic output, from Rust or the CLI, Markdown to slides included.
- Slides spread across cores within one deck, with a one-thread mode when the caller owns the parallelism.
Questions
- Is pptxboss faster than office-oxide?
- On the operations measured, yes: 2.5 times on one thread and 3.1 times on all cores over 631 public test-suite decks (7,942 and 9,868 against 3,163 files per second), 3.5 times on a 43-slide, 42 MB deck on one thread (1.38 against 4.89 ms), and 4 times over 153 legacy .ppt files (15 against 61 ms), both engines on one thread.
- Which one should I use?
- office-oxide if you need one library for Word, Excel and PowerPoint files. pptxboss if you work with PowerPoint decks and want the faster reader, chart and SmartArt text, comments, sections, a Markdown renderer, a verifier and a report of everything skipped.
- Do they agree on the text?
- On the legacy .ppt suite the words agree on 87 of the 89 decks that contain text; office-oxide includes master placeholder text and pptxboss never does. On .pptx, pptxboss's paragraphs are checked against python-pptx, because office-oxide does not expose per-slide paragraphs.