0
我必须基于包含文本列的mysql查询创建Excel报表。其中一列存储图像的绝对路径。我想知道是否可以创建包含图像可见的报告(如ole?)。我可以在从SQL查询创建的Excel报告中包含图像吗?
基本上,在Excel中,我可以显示图像如果我有它的路径?
我必须基于包含文本列的mysql查询创建Excel报表。其中一列存储图像的绝对路径。我想知道是否可以创建包含图像可见的报告(如ole?)。我可以在从SQL查询创建的Excel报告中包含图像吗?
基本上,在Excel中,我可以显示图像如果我有它的路径?
你可以用PHPExcel做到这一点。首先,你需要下载最新版本:https://phpexcel.codeplex.com/
这里是它的一个例子是使用:
include 'PHPExcel.php';
// Create new PHPExcel object
$objPHPExcel = new PHPExcel();
// Set properties
$objPHPExcel->getProperties()->setCreator("Jobin Jose");
$objPHPExcel->getProperties()->setLastModifiedBy("Jobin Jose");
$objPHPExcel->getProperties()->setTitle("Office 2007 XLSX Test Document");
$objPHPExcel->getProperties()->setSubject("Office 2007 XLSX Test Document");
$objPHPExcel->getProperties()->setDescription("Test document for Office 2007 XLSX, generated using PHPExcel classes.");
// Add some data
// echo date('H:i:s') . " Add some data\n";
$objPHPExcel->setActiveSheetIndex(0);
$objPHPExcel->getActiveSheet()->SetCellValue('A1', 'Hello');
$objPHPExcel->getActiveSheet()->SetCellValue('B2', 'world!');
//$objPHPExcel->getActiveSheet()->SetCellValue('C1', 'Hello');
$objPHPExcel->getActiveSheet()->SetCellValue('D2', 'world!');
$objPHPExcel->getActiveSheet()->setTitle('Simple');
$gdImage = imagecreatefromjpeg('uploads/t12.jpg');
// Add a drawing to the worksheetecho date('H:i:s') . " Add a drawing to the worksheet\n";
$objDrawing = new PHPExcel_Worksheet_MemoryDrawing();
$objDrawing->setName('Sample image');
$objDrawing->setDescription('Sample image');
$objDrawing->setImageResource($gdImage);
$objDrawing->setRenderingFunction(PHPExcel_Worksheet_MemoryDrawing::RENDERING_JPEG);
$objDrawing->setMimeType(PHPExcel_Worksheet_MemoryDrawing::MIMETYPE_DEFAULT);
$objDrawing->setHeight(150);
$objDrawing->setCoordinates('C1');
$objDrawing->setWorksheet($objPHPExcel->getActiveSheet());
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
$objWriter->save(str_replace('.php', '.xlsx', __FILE__));
// Echo done
echo date('H:i:s') . " Done writing file.\r\n";
,因为它使用2007的Excel类如果你想在上面的代码将创建一个“XLSX”格式的文件“XLS”格式只是与2005年类尽量不为得到更改文件格式为“XLS”,而2005年使用
见here为例
这是可能的 - 使用Excel VBA(或任何其他编程语言,可以马调整excel对象模型)。但我不确定这是不是一个好主意。这会使excel文件变得庞大,而且你必须处理图像高度。也许你可以通过使它成为超链接来妥协? – Shadow
PHPExcel库中有一些函数允许您执行此操作 – Hexana