/** * Write the front page of the Excel spreadsheet * * @param PHPExcel_Worksheet $worksheet * @param array $config * @param array $DProps */ function writeFrontPageContent($worksheet, $config, $DProps) { $worksheet->SetTitle('Front Page'); // add logo $objDrawing = new PHPExcel_Worksheet_Drawing(); $objDrawing->setWorksheet($worksheet); $objDrawing->setName($DProps['Front Page']['Logo Name']); $objDrawing->setDescription($DProps['Front Page']['Logo Description']); $apath = __DIR__ . DIRECTORY_SEPARATOR . 'images' . DIRECTORY_SEPARATOR; $objDrawing->setPath($apath . $config->ParameterArray['PDFLogoFile']); $objDrawing->setCoordinates('A1'); $objDrawing->setOffsetX(5); $objDrawing->setOffsetY(5); // set the header of the print out $header_range = $DProps['Front Page']['HeaderRange']; $fillcolor = $config->ParameterArray['HeaderColor']; $fillcolor = strpos($fillcolor, '#') == 0 ? substr($fillcolor, 1) : $fillcolor; $worksheet->getStyle($header_range)->getFill()->getStartColor()->setRGB($fillcolor); $org_font_size = 20; $worksheet->setCellValue('A2', $config->ParameterArray['OrgName']); $worksheet->getStyle('A2')->getFont()->setSize($org_font_size); $worksheet->getStyle('A2')->getFont()->setBold(true); $worksheet->getRowDimension('2')->setRowHeight($org_font_size + 2); $worksheet->setCellValue('A4', 'Report generated by \'' . $DProps['Doc']['User'] . '\' on ' . date('Y-m-d H:i:s')); $worksheet->setCellValue('A7', 'Notes'); $worksheet->getStyle('A7')->getFont()->setSize(14); $worksheet->getStyle('A7')->getFont()->setBold(true); $max_remarks = count($DProps['Front Page']['remarks']); $offset = 8; for ($idx = 0; $idx < $max_remarks; $idx++) { $row = $offset + $idx; $worksheet->setCellValueExplicit('B' . $row, $DProps['Front Page']['remarks'][$idx], PHPExcel_Cell_DataType::TYPE_STRING); } $worksheet->getStyle('B' . $offset . ':B' . ($offset + $max_remarks - 1))->getAlignment()->setWrapText(true); $worksheet->getColumnDimension('B')->setWidth(120); $worksheet->getTabColor()->setRGB($fillcolor); }