Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How can I programmatically create PowerPoint presentations. On Linux. For Free.

I'd like to create a PowerPoint (not Javascript/HTML/PDF/Keynote/.mov) using code (any language, C preferred) for free.

(I've seen this SO question which references how to create them in C#)

Is this even possible? How can I write the raw bits that make up a PowerPoint file? Any good libraries for doing this?

UPDATE The Microsoft Reference Page for the binary format is here.

like image 386
Nate Murray Avatar asked Nov 30 '09 17:11

Nate Murray


People also ask

Can Python make a PowerPoint?

PowerPoint File BasicsPython-pptx can create blank PowerPoint files but most people are going to prefer working with a predefined template that you can customize with your own content. Python-pptx's API supports this process quite simply as long as you know a few things about your template.

How do I make a PowerPoint in Ubuntu?

The LibreOffice suite comes in-built in Ubuntu and is available in the Software launcher. The icon of LibreOffice is encircled in red in the above screenshot. Once we click on the icon, the Impress Software will launch and the following screen will pop up. The interface looks quite similar to Microsoft PowerPoint.

How do I open PowerPoint in Terminal Linux?

4 Answers. Ubuntu comes with LibreOffice, an office suite that replaces Microsoft Office. The LibreOffice equivalent to Microsoft PowerPoint is called Libreoffice Impress. You should be able to open your PPT or PPTX files by simply double-clicking the file.


2 Answers

Open Office has an API. You can use the C++ bindings (doc available here). If you really need C, you'll have to do some wrapping.. but hey, it's Christmas, isn't it ;-)

Open Office has export functions to create .ppt compatible files.

like image 157
jldupont Avatar answered Sep 24 '22 05:09

jldupont


PowerPoint you may not, but OpenOffice Impress you may. (Yoda style answer :) )

Take a look at the ODF Toolkit project. They aim to produce lots of libraries for generating this kind of content programatically.

like image 44
Kico Lobo Avatar answered Sep 21 '22 05:09

Kico Lobo