4 releases

0.2.1 May 15, 2019
0.2.0 Jan 8, 2019
0.1.1 Jan 3, 2019
0.1.0 Dec 20, 2018

#3 in #powerpoint

MIT license

325KB
4K SLoC

msoffice-pptx-rs

A library to deserialize pptx files in Rust.

Latest version Documentation

Overview

msoffice-pptx-rs is a low level deserializer for Microsoft's OfficeOpen XML pptx file format. It's still WIP, so expect API breaking changes.

The Office Open XML file formats are described by the ECMA-376 standard. The types represented in this library are generated from the Transitional XML Schema's, which is described in ECMA-376 4th edition Part 4, "pml.xsd" file.

Documentation is generated from the "Ecma Office Open XML Part 1 - Fundamentals And Markup Language Reference.pdf" file, found in ECMA-376 4th edition Part 1

Simple usage

extern crate msoffice_pptx;

use msoffice_pptx::document::PPTXDocument;

pub fn main() {
  let document = PPTXDocument::from_file(Path::new("test.pptx")).unwrap();
  
  for (slide_path, slide) in &document.slide_map {
    // Do something with slides
  }
}

Dependencies

~10MB
~239K SLoC