在apache服务器上使用PHP将ppt / pptx转换为JPG / PNG

问题描述 投票:2回答:4

有人知道在apache服务器上使用PHP将ppt / pptx幻灯片转换为服务器上的图像的方法吗?

据我了解,一种方法是在服务器上安装microsoft powerpoint(或openoffice)?以便将powerpoint保存为图像?

你会如何在服务器上安装它?

如果无法在服务器上安装程序怎么办?

我已经看到COM类用于在本地机器上打开应用程序并将ppt / pptx保存为图像......但是在远程机器上,COM类不存在。

任何帮助/潜在客户将不胜感激!

编辑:

我看到COM类是Windows Only扩展......那么还有其他什么方法呢?

再次感谢!

php image powerpoint
4个回答
5
投票

OpenOffice支持一个名为UNO的编程接口,可以使用PUNO扩展从PHP调用,该扩展可以在Windows或Linux(但不是Mac)服务器中使用。

它确实需要在服务器上安装Open Office,并启用Java支持并在TCP / IP套接字上进行侦听。由于这不是默认配置,它确实涉及一些设置。您还必须下载PUNO并将其添加到您的PHP配置中。


2
投票

服务器是Amazon EC2实例,因此在大多数情况下,它是唯一的CLI。

我所做的是:

我已经安装了Libreoffice (headless),用于在PHP中使用exec()将文档转换为PDF文件。

从那里我使用ghostscript(已经安装在服务器上)通过使用exec()从生成的PDF中提取图像。


1
投票

您可以使用以下Library API将ppt文件转换为jpg

require __DIR__ . '/../lib/ConvertApi/autoload.php';

use \ConvertApi\ConvertApi;    ConvertApi::setApiSecret(CONVERT_API_SECRET);
    $result = ConvertApi::convert('jpg', [
            'File' => '/path/to/ppt',
        ], 'pptx'
    );
    $result->saveFiles('/path/to/result/dir');

Convert PPT to JPG


0
投票

从Mark中获取幻灯片中的图片可能会让Mark Ba​​ker描述得很痛苦,但是如果你现在有些VBA,你可以简单地制作一个vba marco来将每个幻灯片导出到jpg。而不是一次性将jpg全部上传到我身上似乎是一个更容易解决的问题,ofcaurse这不是你想要的。只是我的两个感觉。

这是一个VBA示例:http://vbadud.blogspot.nl/2009/05/save-powerpoint-slides-as-images-using.html

© www.soinside.com 2019 - 2024. All rights reserved.