Skip to main content

pptxboss_core/
lib.rs

1//! PresentationML (.pptx) reader written from the ECMA-376 specification.
2//!
3//! The crate is layered. [`zip`] reads the container through a positioned
4//! source so only the parts a caller opens are ever read. [`Package`] is the
5//! raw Open Packaging Conventions view: every ZIP item, content type and
6//! relationship exactly as written, defects included, so a verifier can see
7//! them. [`Document`] sits on top and is lenient: it resolves the
8//! presentation, its slides and their text, recovering from damaged
9//! packages where the structure still allows it and reporting what it
10//! skipped.
11
12pub mod cfb;
13pub mod chart;
14pub mod comments;
15pub mod crc32;
16pub mod diagram;
17pub mod document;
18pub mod encoding;
19pub mod error;
20pub mod hash;
21pub mod inflate;
22pub mod markdown;
23pub mod mce;
24pub mod model;
25pub mod opc;
26pub mod package;
27pub mod pml;
28pub mod ppt;
29pub mod presentation;
30pub mod properties;
31pub mod slide;
32pub mod text;
33pub mod xml;
34pub mod zip;
35
36pub use chart::{ChartData, Series};
37pub use comments::{Comment, CommentAuthor};
38pub use diagram::{DiagramData, DiagramItem};
39pub use document::{Document, DocumentSeed, ImageRef, ObjectRef, Slide, SlideRef, SlideSection};
40pub use error::{Error, Result};
41pub use markdown::MarkdownOptions;
42pub use model::{Content, Paragraph, Run, Shape, SlideContent, TextBody};
43pub use package::{Package, PackageDefects, PackageSeed, Part};
44pub use presentation::{Presentation, Section};
45pub use properties::{AppProperties, CoreProperties};
46pub use slide::SlideReport;
47pub use text::{ExtractReport, TextOptions};