Converting revealjs slides to PowerPoint

Anthony • Jul 05, 2022

Since it’s a thing I just figured out how to do and anticipate having to do again some day, here’s one way to convert a reveal.js presentation to MS PowerPoint format using LibreOffice.

revealjs → PDF

Visit https://yourdomain/yourpresentation/?print-pdf in a web browser. In other words, go to the URL you would use to view your Reveal.js slides, add a trailing / if there isn’t one, and put ?print-pdf at the end.

From there, print the file to PDF in whichever way you normally do that. I use Ctrl-P, then select “Print to PDF” from the pulldown, then hit OK.

In the end you should have a PDF file that looks more or less like your slides. There will probably be formatting issues. Don’t worry about those yet.

PDF → odg

Next, open your slides in LibreOffice. LibreOffice should convert the PDF file to a LibreOffice Draw file. File→Save As this file with the usual .odg extension.

odg → odp

Literally change the name of the file you saved in the previous step from yourfile.odg to yourfile.odp

odp → PowerPoint

Open the resulting .odp file in LibreOffice again. This time it should open as an Impress presentation instead of a drawing. Now you can File→Save As a PowerPoint file, and you’re done.

Remember those formatting issues you may have noticed before? You might have to fix them now. In my case, they magically went away. With any luck you will also enjoy this magic.