Introduction
PPT is the binary presentation format of
Microsoft PowerPoint
97 to 2003, and the default until PowerPoint 2007 replaced it with
PPTX. PowerPoint still opens and saves it as
“PowerPoint 97–2003 Presentation”. Earlier versions of PowerPoint also used
.ppt for older formats of their own.
Microsoft publishes the format in full as [MS-PPT]. .pps is the same
format saved to open straight into the slide show, and .pot a
template.
Structure
The file is a compound file, which starts with the signature
D0 CF 11 E0 A1 B1 1A E1 and holds named streams. The
PowerPoint Document stream holds the presentation as a tree of records,
each with an 8-byte header: a version and instance (2 bytes), a record type (2 bytes)
and a length (4 bytes). Container records hold other records, so slides, masters, notes
and the text and shapes on them nest inside each other. The Current User
stream points to the latest edit in the document stream, because PowerPoint can save
by appending changes. Pictures are kept in a Pictures stream.
cfbCurrent User points to the latest user editstreamcfbPowerPoint Document records for slides, masters, notes, text and shapesstreamcfbPictures images used on the slidesoptionalcfbSummaryInformation, DocumentSummaryInformation title, author, datesstreams
Links
Software
- Microsoft PowerPoint (Windows, macOS, web, mobile)
- LibreOffice Impress (Windows, macOS, Linux)
- Google Slides (web browsers)
- Apple Keynote (macOS, iOS)
Developers
- Apache POI, Java library for Office files,
.pptthrough its HSLF classes
Reference
- [MS-PPT]: PowerPoint (.ppt) Binary File Format, Microsoft
- [MS-CFB]: Compound File Binary File Format, Microsoft