Мне нужно добавить в excel изображение с помощью PhpSpreadsheet. Согласно документации
https://phpspreadsheet.readthedocs.io/en/latest/to... сформировал следующий код:
require_once(getenv('DOCUMENT_ROOT')."/".explode('/',$_SERVER["REQUEST_URI"])[1]."/test/vendor/autoload.php");
$Reader = new PhpOffice\PhpSpreadsheet\Reader\Xlsx();
$spreadsheet = $Reader->load('..\..\templates\somefile.xlsx');
/* Тест: загрузка картинок */
$drawing = new \PhpOffice\PhpSpreadsheet\Worksheet\Drawing();
$drawing->setName('Logo');
$drawing->setDescription('Logo');
$drawing->setPath('../img/barcode.gif');
$drawing->setHeight(36);
$drawing->setCoordinates('B15');
$drawing->setWorksheet($spreadsheet->getActiveSheet());
/* Конец теста */
$writer = new PhpOffice\PhpSpreadsheet\Writer\Xlsx($spreadsheet);
$writer->save('..\..\current\somefile.xlsx');
При скачивании и открытии получившегося файла всплывает ошибка excel (использую excel 2007):
В книге "somfile.xlsx" обнаружено содержимое, которое не удалось прочитать. Попробовать восстановить содержимое книги? Если вы доверяете источнику этой книги, нажмите кнопку "Да".
После нажатия на кнопку "Да" он не находит ничего лучше, как удалить картинку:
Была выполнена проверка на уровне файла с последующим восстановлением файла. Некоторые фрагменты документа могли быть восстановлены либо удалены.
Удаленный компонент: Параметры печати.
Удаленный компонент: Рисованная фигура.