Insert image with Laravel-Excel
18,955
Solution 1
first you need declare Class use PHPExcel_Worksheet_Drawing;
and in controller :
$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');
Solution 2
For new version 3.1
Import
use Maatwebsite\Excel\Concerns\WithDrawings;
use PhpOffice\PhpSpreadsheet\Worksheet\Drawing;
and
class InvoicesExport implements 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;
}
Related videos on Youtube
Author by
Boring person
Updated on September 14, 2022Comments
-
Boring person over 1 year
I'm using this package to generate excel documents with Laravel: https://github.com/Maatwebsite/Laravel-Excel
However, documentation doesn't say anything about inserting images from files into my excel document. I'm pretty sure it's possible with native phpexcel itself, but how to do this through this package?
Some example code would be much appreciated..
-
Crysis over 7 years@randawahyup if we use new PHPExcel_Worksheet_Drawing, its says PHPExcel_Worksheet_Drawing' not found should we need to include any libraries for it.
-
Ashwin Bhamare over 4 years@Crysis, please include >> use PHPExcel_Worksheet_Drawing; at the top of your page
-
Abhinav Keshri over 3 yearsis there a way that, image can be fetched from a url (someimgae.jpg) instead of "public_path('/img/vir.png')"
-
Freddy Daniel over 2 yearsThanks bro. It worked!