All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- All slide elements now have a second
ElementPositionparameter to save vertical and horizontal hierarchy include_slide_commentsparameter to theParserConfigto control the comments should be added to the Markdown or not (<!-- Slide [n] ->)
- The parser now parses grouped elements (
<p:grpSp>) recursively to find every base element inside of groups withnnested groups SlideElementsare now sorted vertically before the Markdown conversion to preserve the visual hierachybasic_usage.rsnow uses a second cmd parameter to control if images are extracted or not (for debug purposes)
- Reworked the extraction of images by adding
ImageHandlingModeto theParserConfig. With this, users can decide to manually extract images and handle the logic (#19) - New example
manual_image_extraction.rsto show how to handle images manually ManualImagestruct to encapsulate data and meta data of imagesImageHandlingMode::Saveto save images in a given output path and adding context to the Markdown file (#20)
image_extractionfrom examples directory (replaced bymanual_image_extraction.rs)
- Updated README.md to document new
ParserConfigparameters
- multithreading support for the parsing of slides (#6)
ParserConfig: A config struct that increases the customizability for the devs (#9)- Optional compression of extracted images (#10)
- Simple GitHub-Action to run all tests before merging a pull request (
rust.yml) - unit tests for modules
parse_xml.rs,parse_rels.rsandslide.rs(#8) performance_testexample to run benchmarks- Started the Changelog (#15)
- minor bug fixes
- Updated README.md to show the latest working examples and features