A short post on how to convert PPTX file to images. There are two steps. The first step is to from PPTX to PDF, and the second step is from PDF to JPEG image.

Step one

First, we need to install libreoffice:

apt update && apt install libreoffice

To convert PPTX to image, we need to first convert it to PDF

soffice --headless --convert-to pdf test.pptx

This will create a file named test.pdf.

Step two

In order to turn PDF to images, we can use imagemagick or poppler.

With Imagemagick

We need to install imagemagick:

apt install imagemagick

Then we can convert PDF file to image using convert:

convert -density 150 test.pdf -quality 80 output-%3d.jpg

Possible issues

During conversion, two errors occur after issuing the convert command:

convert-im6.q16: not authorized `multiple_img.pdf' @ error/constitute.c/ReadImage/412.
convert-im6.q16: no images defined `output-%3d.jpg' @ error/convert.c/ConvertImageCommand/3258.

For the first error, you can edit /etc/ImageMagick-6/policy.xml and change the following line:

<policy domain="coder" rights="none" pattern="PDF" />

to

<policy domain="coder" rights="read|write" pattern="PDF" />

For the second error, this is because ghostscript has not been installed on the system. Try to install it:

apt install ghostscript

After that, you should be fine to generate from PPTX to jpg/png images.

With poppler

We need to install poppler-utils:

apt-get update && apt-get install -y poppler-utils

For further steps, refer to this post.

References