在apache服务器上使用PHP将ppt/pptx转换为JPG/PNG
有人知道在apache服务器上使用PHP将ppt/pptx幻灯片转换为服务器上的图像的方法吗 据我所知,一种方法是在服务器上安装microsoft powerpoint(或者openoffice?),以便将powerpoint保存为图像 您将如何在服务器上安装它 如果无法在服务器上安装程序怎么办 我见过COM类用来在本地机器上打开应用程序并将ppt/pptx保存为图像。。。但在远程计算机上,COM类不存在 任何帮助/线索都将不胜感激 编辑: 我看到COM类是一个仅限Windows的扩展。。。那么还有什么其他的方法呢在apache服务器上使用PHP将ppt/pptx转换为JPG/PNG,php,image,powerpoint,Php,Image,Powerpoint,有人知道在apache服务器上使用PHP将ppt/pptx幻灯片转换为服务器上的图像的方法吗 据我所知,一种方法是在服务器上安装microsoft powerpoint(或者openoffice?),以便将powerpoint保存为图像 您将如何在服务器上安装它 如果无法在服务器上安装程序怎么办 我见过COM类用来在本地机器上打开应用程序并将ppt/pptx保存为图像。。。但在远程计算机上,COM类不存在 任何帮助/线索都将不胜感激 编辑: 我看到COM类是一个仅限Windows的扩展。。。那么
再次感谢 OpenOffice支持一个名为UNO的编程接口,可以使用扩展从PHP调用该接口,它可以在Windows或Linux(但不是Mac)服务器中使用
它确实需要在服务器上安装OpenOffice,启用Java支持并在TCP/IP套接字上侦听。由于这不是默认配置,因此需要进行一些设置。您还必须下载PUNO并将其添加到您的PHP配置中。从PHP中的幻灯片中获取图像可能会像Mark Baker所描述的那样非常痛苦,但是,如果您现在使用一些VBA,您可以非常简单地制作一个VBA marco以将每张幻灯片导出到jpg。比起一次上传所有的jpg,我觉得这是一个更容易的解决办法,因为这并不是你想要的。只是我的两种感觉 下面是一个VBA示例:
服务器是Amazon EC2实例,因此在大多数情况下,它是唯一的CLI 我所做的是: 我已经安装了用于在PHP中使用
exec()
将文档转换为PDF的程序
在此基础上,我还使用ghostscript(已安装在服务器上)从生成的PDF中提取图像,方法是使用
exec()
。您可以使用以下库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');