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");
たとえば、このスニペットでは、実行した後、出力ファイルは、元のファイルの長さが 109363 バイトであるのと比較して、わずか 25321 バイトです (画像のため)。
エラーは生成されません。開発ブランチと 0.7.0 ブランチの両方で試しました。
何か案は?