PHP COM PowerPoint сохранить в формате PDF и закрыть презентацию

Я хочу конвертировать PPT / PPTX в PDF, используя расширение COM для PHP под Windows. Я много боролся без каких-либо успехов, используя 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

Я был бы очень признателен. Спасибо

0

Решение

Вы должны указать точный путь
так
менять :
$ doc = $ powerpnt-> Presentations-> Open (‘powerpoint.pptx’);
$ doc-> SaveAs (‘powerpoint.pdf’, 32, 1);

TO:
$ doc = $ powerpnt-> Presentations-> Open (‘D: \ powerpoint.pptx’);
$ doc-> SaveAs (‘D: \ powerpoint.pdf’, 32, 1);

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector