@Aricus

PhpSpreadsheet: как добавить изображение (gif) в excel?

Мне нужно добавить в 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" обнаружено содержимое, которое не удалось прочитать. Попробовать восстановить содержимое книги? Если вы доверяете источнику этой книги, нажмите кнопку "Да".

После нажатия на кнопку "Да" он не находит ничего лучше, как удалить картинку:
Была выполнена проверка на уровне файла с последующим восстановлением файла. Некоторые фрагменты документа могли быть восстановлены либо удалены.
Удаленный компонент: Параметры печати.
Удаленный компонент: Рисованная фигура.
  • Вопрос задан
  • 24 просмотра
Пригласить эксперта
Ответы на вопрос 1
cesnokov
@cesnokov
<head>&nbsp;</head>
Возможно вы используете слэши не в ту сторону если в Windows'ах работаете:
..\img\barcode.gif
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы