如何在Linux上将pptx文件转换为jpg或png(对于每张幻灯片)?

use*_*671 3 linux powerpoint jpeg converter libreoffice

我想将powerpoint演示文稿转换为多个图像.我已经在我的服务器上安装了LibreOffice并将docx转换为pdf没问题.pptx到pdf转换不起作用.我使用以下命令行:

libreoffice --headless --convert-to pdf filename.pptx
Run Code Online (Sandbox Code Playgroud)

有没有办法立即将pptx转换为pngs或者我必须首先将其转换为pdf然后使用ghostscript或其他东西?

那么质量设置呢?有没有办法选择得到的图像的分辨率?

提前致谢!

编辑: 根据此链接,我能够使用简单的命令行将PDF转换为图像:

convert <filename>.pdf <filename>.jpg 
Run Code Online (Sandbox Code Playgroud)

(我猜你需要LibreOffice和ImageMagick,但不确定 - 在我的服务器上运行)

但是pptx-to-pdf转换仍然存在问题.

感谢谷歌搜索和Sebastian Heyn的帮助,我能够用这条线创建一些高质量的图像:

convert -density 400 my_filename.pdf -resize 2000x1500 my_filename%d.jpg
Run Code Online (Sandbox Code Playgroud)

使用后请耐心等待 - 您仍然可以在unix控制台中键入soemthing但是正在处理.只需等待几分钟,即可创建jpg文件.

有关选项的更多信息,请查看此链接

PS:pptx文件的宽高比似乎不是4:3,因为得到的图像大小是1950x1500

use*_*671 7

安装unoconv和LibreOffice后,您可以使用:

unoconv --export Quality=100 filename.pptx filename.pdf 
Run Code Online (Sandbox Code Playgroud)

将您的演示文稿转换为PDF格式.有关更多选项看看这里.

之后你可以 - 如上所述 - 使用:

convert -density 400 my_filename.pdf -resize 2000x1500 my_filename%d.jpg 
Run Code Online (Sandbox Code Playgroud)

接收图像.


Jan*_*zek 7

将 PPTX 转换为 PNG/JPG

此解决方案需要LibreOffice ( soffice) 和Ghostscript ( gs)

sudo apt install libreoffice ghostscript
Run Code Online (Sandbox Code Playgroud)

然后两步:

  1. PPTX -> PDF
soffice --headless --convert-to pdf prezentacja.pptx
Run Code Online (Sandbox Code Playgroud)
  1. PDF -> PNG/JPG
gs -sDEVICE=pngalpha -o slajd-%02d.png -r96 prezentacja.pdf
Run Code Online (Sandbox Code Playgroud)
  • -o slajd-%02d.png- 输出到文件,%02d slajd 编号,两位数
  • -r96- 解决:
    • 96 -> 1280x720
    • 144 -> 1920x1080