PHPSpreadsheet - как поместить изображение из ссылки в мой файл Excel? - PullRequest
0 голосов
/ 20 февраля 2019

Я хотел бы поместить изображение в ячейку a1 из моего файла Excel.

Я пробовал разные вещи с сайта phpspreadsheet, но все безуспешно.Как этот пример из них, который не работает.:

$drawing = new \PhpOffice\PhpSpreadsheet\Worksheet\Drawing();
$drawing->setName('Paid');
$drawing->setDescription('Paid');
$drawing->setPath('https://pngimage.net/wp-content/uploads/2018/06/rfhnbyrb-png-6.png');
$drawing->setCoordinates('B15');
$drawing->setOffsetX(110);
$drawing->setRotation(25);
$drawing->getShadow()->setVisible(true);
$drawing->getShadow()->setDirection(45);

Если я создаю черную полосу с текстом внутри нее, она работает с этим кодом.я не получаю изображение в моем файле Excel, пожалуйста, кто хочет помочь мне.

1 Ответ

0 голосов
/ 20 февраля 2019

У меня есть решение для вас.Но, к сожалению, я не смог найти способ использовать URL-адрес, но изображение локально.посмотрите.

require 'vendor/autoload.php';

use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;

$spreadsheet = new Spreadsheet();
$sheet = $spreadsheet->getActiveSheet();

$drawing = new \PhpOffice\PhpSpreadsheet\Worksheet\Drawing();
$drawing->setName('Paid');
$drawing->setDescription('Paid');
$drawing->setPath('images/paid.png'); // put your path and image here
$drawing->setCoordinates('B15');
$drawing->setOffsetX(110);
$drawing->setRotation(25);
$drawing->getShadow()->setVisible(true);
$drawing->getShadow()->setDirection(45);
$drawing->setWorksheet($spreadsheet->getActiveSheet());

$writer = new Xlsx($spreadsheet);
$writer->save('image.xlsx');

Работает просто отлично, наслаждайтесь:)

enter image description here

enter image description here

...