ChurchApps / FreeShow

FreeShow is a free and open-source, user-friendly presenter software.
https://freeshow.app
GNU General Public License v3.0
436 stars 68 forks source link

Improved PowerPoint import #491

Open JelyMe opened 2 months ago

JelyMe commented 2 months ago

Hey there!

The long boring story

I have recently discovered your wonderful tool and I have begun playing around with it. I program things often and so I thought I would attempt to integrate a feature myself and then merge. I couldn't really figure out how your importing worked and it would probably be best for someone more advanced in TypeScript to implement this.

I would love to migrate my church to use this software but we pretty much require a fancy Powerpoint. This could be solved by using the export as pdf button but me being me thought, "huh, surely libre has a node integration." Which lead me to finding this: https://www.npmjs.com/package/libreoffice-convert?activeTab=readme

The request

My request is that you add an extra option for importing Powerpoints that uses this libreoffice package to convert them to PDFs and then to PNGs. This could reuse existing PDF to PNG logic, and I could even program it but I would need a lot of help to figure everything out.

Thank you so much for making this tool! You are doing the Lord's work lol

vassbo commented 2 months ago

Thanks. Should be doable. I need to redo the entire PDF import also sometime, because it often does not work. Maybe also just have a direct PPT renderer.

JelyMe commented 2 months ago

Great! I remember ProPresenter used to have an option to use PowerPoint as it's renderer. (It was very unstable but I think it just sent inputs to the PowerPoint in present mode.) I wonder if Libre Office will let you do something similar. (Or hopefully better)

XYQuadrat commented 1 month ago

Thanks. Should be doable. I need to redo the entire PDF import also sometime, because it often does not work. Maybe also just have a direct PPT renderer.

If you do manage to integrate a PPT renderer, this would remove the single reason we currently use OpenLP (which is good software, but FreeShow has some great featues we'd love to be able to use). OpenLP spawns a PowerPoint instance in the background and controls it remotely - perhaps this is more feasible than integrating a renderer directly into FreeShow.