将远程图像添加到PhpSpreadseet单元中

问题描述 投票:0回答:2

网站上有一个简单的两栏表格:产品名称和产品图片。用HTML呈现非常容易。任务是使用这些列创建Xlsx文件。图像未存储在本地,但是它们都是具有完整URL的远程图像。导出包含约100-200行。

我试图使用imagecreatefromjpeg创建资源,并通过MemoryDrawing添加它,但是它占用了大量资源。我尝试使用HTML助手的toRichTextObject和一个简单标签,但结果为空。

如何将远程图像添加到PhpSpreadsheet单元格?它不需要脱机工作,打开文件时可以加载远程图像。

php image phpspreadsheet
2个回答
0
投票

根据示例和文档,指定图像的坐标可能会有所帮助

$objDrawing->setCoordinates('A3');

请注意,图像不在单元格/列/行中,而是在与该单元格/列/行相同的位置上覆盖在主表上


0
投票

有一个示例如何将图像添加到您的excel导出:

$spreadsheet = new \PhpOffice\PhpSpreadsheet\Spreadsheet();

$drawing = new \PhpOffice\PhpSpreadsheet\Worksheet\Drawing();
$drawing->setName('Paid');
$drawing->setDescription('Paid');
$drawing->setPath('/images/image-1.png'); // put your path and image here
$drawing->setHeight(30);
$drawing->setCoordinates('A5');
$drawing->setOffsetX(110);
$drawing->setRotation(25);
$drawing->getShadow()->setVisible(true);
$drawing->getShadow()->setDirection(45);
$drawing->setWorksheet($spreadsheet->getActiveSheet());
© www.soinside.com 2019 - 2024. All rights reserved.