PPTX
Generated by scripts/gen-format-pages.py from docs/data/format-metadata/, FILE_FORMATS.csv and docs/formats-master.csv. Do not edit by hand: change the source, then run the script.
Pptx Preview.
At a glance
| Original creator | Microsoft |
| First published | 2006 |
| Purpose | The Office Open XML presentation format: slides, layouts and notes as PresentationML and DrawingML parts in a ZIP package. |
| Extensions | .pptx |
| Poka parser | poka-pptx |
| Viewer | poka-slide-viewer |
| Depth tier | Parser with a shared viewer (see Depth tiers) |
| Breadth tier | B3 Core (see Breadth tiers) |
How much Poka reads
B3 Core. Only the main content type or types are decoded (for example geometry but not materials, layers or annotations, or only one version family). The list of gaps is substantial.
Confidence: high (the reviewer read the code and a test that proves the claim). Basis: Reviewed 2026-10-16: parsers/poka-pptx/src/lib.rs (sldIdLst order, relationships, p:sp text frames, graphicFrame table text, notesSlide body placeholder), unit tests, and tests/samples.rs over 30 corpus .pptx files (a 48-slide deck with notes and testPPT_comment). Covers PresentationML Transitional; the .ppsx and .potx aliases use the same code but the corpus has none. Strict was not tested (the reader matches local element names, so it may work: judgement).
What Poka does not read
- Pictures, drawn shapes, charts, SmartArt diagrams and embedded media
- Slide layout and positions (geometry is not read; layouts and masters are not followed)
- Text formatting (fonts, bullets, numbering, colours)
- Slide masters, layouts, themes and backgrounds
- Table structure (cell text only, merged and styled cells not shown)
- Slide comments
- Hidden-slide flag, transitions and animations
- Alt text and hyperlink targets
- Slides beyond the first 500 or beyond 400000 characters
- Encrypted packages
Background
The Library of Congress gives ECMA-376 Part 1 (2006) as the first published specification and says PPTX has been PowerPoint's default format since PowerPoint 2007. Later editions of ECMA-376 and ISO/IEC 29500 split it into Strict and Transitional forms; the changes to PresentationML and DrawingML between 2008 and 2016 were mostly corrections. Poka shows the slides in show order, as presentation.xml lists them, with titles, body text, table cells and presenter notes. Positions are not taken from the layouts and masters, so the slide viewer stacks the text blocks in document order. A package with a presentation part but no slide part (the corpus has one) reads as an empty deck, "PowerPoint · no slides"; a ZIP with neither is refused.
Versions
| Version | Identifier | Poka | Note |
|---|---|---|---|
| PPTX Transitional | Read | The form the corpus files use; read by poka-pptx. |
Derived and related formats
- PowerPoint show and template (
.ppsx, .potx): Aliases of poka-pptx in its plugin.json.
Libraries
Libraries Poka uses or has assessed for this format, with the status, licence and language the registry records.
- quick-xml (used; MIT; Rust)
- zip (used; MIT; Rust)
- Open-XML-SDK (candidate; MIT; C#; https://github.com/dotnet/Open-XML-SDK)
- Apache POI (candidate; Apache-2.0; Java; https://github.com/apache/poi)
- ECMA-376 Office Open XML (candidate; public spec; spec; https://ecma-international.org/publications-and-standards/standards/ecma-376/)
Sources
- https://www.loc.gov/preservation/digital/formats/fdd/fdd000399.shtml
- parsers/poka-pptx/src/lib.rs