使用Laravel-Excel插入图片

8

我正在使用这个包在Laravel中生成Excel文档:https://github.com/Maatwebsite/Laravel-Excel

然而,文档没有提到如何将文件中的图片插入到我的Excel文档中。我相信这是可能的,在原生phpexcel中可以实现,但通过这个包如何实现呢?

希望能给出一些示例代码。


我认为你需要创建一个带有表格和单元格中图片的刀片视图,然后使用它来生成Excel文档。如果你知道如何在PHP中实现,请告诉我。 - Bollis
2个回答

13

首先需要声明类 use PHPExcel_Worksheet_Drawing;

然后在控制器中:

$filename = 'File Name';
    
Excel::create($filename, function($excel){    
    $excel->sheet('sheet name', function($sheet){
        $objDrawing = new PHPExcel_Worksheet_Drawing;
        $objDrawing->setPath(public_path('img/headerKop.png')); //your image path
        $objDrawing->setCoordinates('A2');
        $objDrawing->setWorksheet($sheet);
    });
})->export('xls');

如果我们使用新的PHPExcel_Worksheet_Drawing,它会提示找不到'PHPExcel_Worksheet_Drawing',我们需要包含任何库吗? - Crysis
@Crysis,请在你的页面顶部包含 >> use PHPExcel_Worksheet_Drawing; - Ashwin Bhamare

3

新版本3.1

导入

使用Maatwebsite\Excel\Concerns\WithDrawings;

使用PhpOffice\PhpSpreadsheet\Worksheet\Drawing;

类InvoicesExport实现WithDrawings接口。

public function drawings()
{
    $drawing = new Drawing();
    $drawing->setName('Logo');
    $drawing->setDescription('This is my logo');
    $drawing->setPath(public_path('/img/vir.png'));
    $drawing->setHeight(90);
    $drawing->setCoordinates('B3');

    return $drawing;
}

谢谢兄弟,它起作用了! - Freddy Daniel

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接