Git Product home page Git Product logo

pptx-blueprint's People

Contributors

fahro avatar kimwiese avatar lysnikolaou avatar michaelosthege avatar timhoffm avatar

Stargazers

 avatar

Watchers

 avatar  avatar

pptx-blueprint's Issues

Support placeholders in the slide master

This is a desired feature.

To be checked: Is this already covered by handling all shapes in all slides, or do we need to handle shapes on the slide master separately?

Inserting data into existing table

Apart from replacing a placeholder with a table, a valid use case is layouting a table in the template and only populating the fields with values.

This needs a bit of design consideration. Typical usecases:
a) replace all fields, including row/column headers
b) keep row/column headers and replace only the other fields.

Can this be handled sufficiently good in ´python-pptx? If so, should we just expose the underlying Presentation` object?

Export to PDF

Add a method to Template:

def save_pdf(self, filename):
~~

Since `python-pptx` does not provide this capability. We need to rely on external programs (LibreOffice and/or PowerPoint).

LibreOffice can be used on the command line with

libreoffice --headless --convert-to pdf --outdir . filename.pptx


Tasks:
1. Check if LibreOffice is available on the system, if not fail
2. Create a temporary directory and save the tempate there as ´pptx`.
3. Run the above command in the temporary directory and target the output dir the user wants.
4. Cleanup

Optional:
Extend this to work with PowerPoint as well. Way of interaction with PowerPoint to be defined. I don't know if it can be controlled via command line.

Placeholder ID persistency

Using text labels as placeholder is convenient for creation by the user. However, on the downside, the placeholder information vanishes once it is replaced.

  • Upon opening a Template, parse all shapes for placeholders.
  • For each placeholder shape update it's name attribute with the placeholder ID
  • From then on, only use the name attribute as ID.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.