PPT
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.
PowerPoint Binary Preview.
At a glance
| Original creator | Microsoft |
| First published | 1997 |
| Purpose | The binary PowerPoint presentation format of PowerPoint 97 to 2003: slides, notes and their text as a tree of records in an OLE2 compound file. |
| Extensions | .ppt |
| Poka parser | poka-ppt |
| 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-ppt/src/lib.rs (MS-PPT record tree, persist directory and edit chain, SlideListWithText, OfficeArtClientTextbox walk, notes), unit tests, and tests/samples.rs over the 4 corpus .ppt files (testPPT, testPPT_various, testPPT_masterFooter, ecdl paris.ppt which is PowerPoint 4.0). Covers PowerPoint 97-2003 decks; slide text, table-cell text and speaker notes only, with all geometry left at zero.
What Poka does not read
- Pictures, drawn shapes, charts, OLE objects and media
- Slide layout and positions (every text block is stacked in order)
- Text formatting (fonts, bullets, colours, indentation)
- Slide masters, layouts and backgrounds (only a master footer that appears on a slide is shown)
- Table structure (cell text only)
- Hidden-slide flag, transitions and animations
- Slide comments
- Slides beyond the first 500
- Encrypted decks (named as encrypted, no text)
- PowerPoint 4.0 decks (named, text not read)
- PowerPoint 95 (7.0) decks (not listed in the metadata and not covered by a corpus sample)
Background
PowerPoint began in 1984 at Forethought Inc., which Microsoft bought in 1987. The Library of Congress page describes the PPT format introduced with PowerPoint 97 in 1997, the default until PowerPoint 2007 made PPTX the default; earlier PowerPoint versions also used the .ppt extension. Poka shows each slide's title, body text, other text boxes and table cells, and the speaker notes. It follows the persist directory, so after an incremental save it shows the live copy of each slide rather than an old one.
Versions
| Version | Identifier | Poka | Note |
|---|---|---|---|
| PowerPoint 4.0 | PP40 stream |
Not read | Recognised and named; its own record format is not read. |
| PowerPoint 97-2003 | PowerPoint Document stream |
Read | An encrypted deck is named as such and its slide text is not read. |
Libraries
Libraries Poka uses or has assessed for this format, with the status, licence and language the registry records.
- cfb (used; MIT; Rust; https://github.com/mdsteele/rust-cfb)
- Apache POI (candidate; Apache-2.0; Java; https://github.com/apache/poi)
- [MS-PPT] PowerPoint Binary File Format (candidate; public spec; spec; https://learn.microsoft.com/en-us/openspecs/office_file_formats/ms-ppt/)
Sources
- https://www.loc.gov/preservation/digital/formats/fdd/fdd000511.shtml
- parsers/poka-ppt/src/lib.rs