在文件夹中包含excel中的图片

时间:2018-10-08 08:03:35

标签: php mysql excel

我需要将Windows文件夹中的图像添加到excel工作表中,以便将每个图像放置在包含文件名的行条目的前面。

类似这样的-(文件名与该行中的id列条目相同) enter image description here

我可以使用哪种代码/语言来执行此操作?

我在Mysql中也有此数据库,是否可以使用php在excel中包含图像。

非常感谢

1 个答案:

答案 0 :(得分:1)

假设您将phpExcel库包含在您的项目中,

include 'PHPExcel.php';
// you  create new PHPExcel object
$objPHPExcel = new PHPExcel();
// Set properties
$objPHPExcel->getProperties()->setCreator("Yassine CHABLI");
$objPHPExcel->getProperties()->setLastModifiedBy("Yassine CHABLI");
$objPHPExcel->getProperties()->setTitle("make whatever you want");
$objPHPExcel->getProperties()->setSubject("whatever you want");
$objPHPExcel->getProperties()->setDescription("including images test (example)");
// Add some data
$objPHPExcel->setActiveSheetIndex(0);

$objPHPExcel->getActiveSheet()->setTitle('image example');

$Image = imagecreatefromjpeg('yassine.jpg');

$objDrawing = new PHPExcel_Worksheet_MemoryDrawing();
$objDrawing->setName('image');
$objDrawing->setDescription('image');
$objDrawing->setImageResource($Image);
$objDrawing->setRenderingFunction(PHPExcel_Worksheet_MemoryDrawing::RENDERING_JPEG);
$objDrawing->setMimeType(PHPExcel_Worksheet_MemoryDrawing::MIMETYPE_DEFAULT);
$objDrawing->setHeight(150);
$objDrawing->setCoordinates('A1');
$objDrawing->setWorksheet($objPHPExcel->getActiveSheet());
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
$objWriter->save(str_replace('.php', '.xlsx', __FILE__));

有关更多信息,请访问下面的链接:

https://packagist.org/packages/phpoffice/phpexcel

  

注意:这将创建一个“ xlsx”格式的文件,因为它使用   2007年的Excel班。如果您想使用“ xls”格式,请尝试使用2005年课程   并且不要忘记在使用2005时将文件格式更改为“ xls”。