У меня проблемы с загрузкой файла PowerPoint 2007 (.pptx) и последующим сохранением. Даже без каких-либо изменений в нем изображения из исходного файла в конечном итоге отсутствуют.
require_once 'PHPPresentation-develop/src/PhpPresentation/Autoloader.php';
\PhpOffice\PhpPresentation\Autoloader::register();
require_once 'Common-0.2.6/src/Common/Autoloader.php';
\PhpOffice\Common\Autoloader::register();
use PhpOffice\PhpPresentation\Autoloader;
use PhpOffice\PhpPresentation\Settings;
use PhpOffice\PhpPresentation\IOFactory;
use PhpOffice\PhpPresentation\Slide;
use PhpOffice\PhpPresentation\Slide\SlideLayout ;
use PhpOffice\PhpPresentation\PhpPresentation;
use PhpOffice\PhpPresentation\AbstractShape;
use PhpOffice\PhpPresentation\DocumentLayout;
use PhpOffice\PhpPresentation\Shape\Drawing;
use PhpOffice\PhpPresentation\Shape\RichText;
use PhpOffice\PhpPresentation\Shape\RichText\BreakElement;
use PhpOffice\PhpPresentation\Shape\RichText\TextElement;
use PhpOffice\PhpPresentation\Shape\Media;
use PhpOffice\PhpPresentation\Style\Alignment;
use PhpOffice\PhpPresentation\Style\Bullet;
use PhpOffice\PhpPresentation\Style\Color;
error_reporting(E_ALL);
$oReader = IOFactory::createReader('PowerPoint2007');
$readPPTX = $oReader->load(__DIR__ . '/input.pptx');
$oWriterPPTX = IOFactory::createWriter($readPPTX, 'PowerPoint2007');
$oWriterPPTX->save(__DIR__ . "/output.pptx");
В этом фрагменте, например, после того, как я его выполню, выходной файл будет только 25321 байт по сравнению с оригиналом длиной 109363 байт — из-за изображений.
Ошибки не генерируются. Я пробовал это как с разработкой, так и с ветвями 0.7.0.
Есть идеи?
Задача ещё не решена.
Других решений пока нет …