PHP COM PowerPoint保存为PDF并关闭演示文稿



我想在Windows下使用PHP的COM扩展将PPT/PPTX转换为PDF。我在使用ExportAsFixedFormat时遇到了很多困难,但没有成功,而是使用了SaveAs方法()。PDF确实生成了,但脚本永远不会完成。打开任务管理器我可以看到PowerPoint进程仍在运行。。。我关不上。

有了Word,一切都可以用这个代码:

$word->ActiveDocument->Close(false);
$word->Quit();
$word = null;
unset($word);

使用PowerPoint,我使用的代码没有运气:

$powerpnt = new COM('powerpoint.application') or die('Unable to load PowerPoint');
$powerpnt->Visible = true;
// Open an existing document
$doc = $powerpnt->Presentations->Open('powerpoint.pptx');
$doc->SaveAs('powerpoint.pdf', 32, 1);
$doc->Close();
$powerpnt->Quit();
$powerpnt = null;
unset($powerpnt);

我也尝试过,但仍然没有成功:

$powerpnt->Presentations[1]->Close();
$powerpnt->Presentations("powerpoint.pptx")->Close();
$powerpnt->ActivePresentation->Close(); // this generates an error

我真的很感激你的真知灼见。感谢

您必须指定确切的路径所以更改:$doc=$powerpt->演示文稿->打开('powerpoint.pptx');$doc->SaveAs('powerpoint.pdf',32,1);

收件人:$doc=$powerpoint->演示文稿->打开('D:\ppowerpoint.pptx');$doc->SaveAs('D:\powerpoint.pdf',32,1);

最新更新