Я хочу показать lo go в центре объединенной строки A1: G2, но мой код не работает для изображения - PullRequest
0 голосов
/ 06 мая 2020

Моя версия - PHPExcel 1.8.0, код запущен, а также лист загружается, но изображение не появляется на листе?

Кто-нибудь может помочь?

$objPHPExcel = new PHPExcel();
$sheet = $objPHPExcel->sheetCodeNameExists(1, 'Payments Detail'); 

$objPHPExcel->getProperties()->setCreator("LADNLORD")
->setLastModifiedBy("LANDLORD")
->setTitle("LANDLORDS PAYMENTS REPORTS")
->setSubject("PROPERTY PAYMNET DETAIL")
->setDescription("FOR PROVIDING LANDLORDS PAYMENTS DETAIL")
->setKeywords("PAYNENTS");
    //////merge Cell
$objPHPExcel->getActiveSheet()->mergeCells("A1:G2");
$objPHPExcel->getActiveSheet()->getStyle('A1')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
    ///// LOGO
if (file_exists('assets/images/logo-kamal.svg')) 
{
    $objDrawing = new PHPExcel_Worksheet_Drawing();
    $objDrawing->setName('Logo');
    $objDrawing->setDescription('KAMAL LOGO');
    $logo = 'assets/images/logo-kamal.svg';    
    $objDrawing->setPath($logo);
    $objDrawing->setOffsetX(8);                     
    $objDrawing->setOffsetY(8);                     
    $objDrawing->setCoordinates('A1');             
    $objDrawing->setHeight(75);         
    $objDrawing->setWorksheet($objPHPExcel->getActiveSheet());
}

// SHEET HEADING
$objPHPExcel->getActiveSheet()->mergeCells("A3:G3");
    //////////Heading
$objPHPExcel->getActiveSheet()
->getCell('A3')
->setValue('Landlord '.$landlord->first_name.' '.$landlord->last_name.' Payments Detail Report');
    ///////Text Center
$objPHPExcel->getActiveSheet()
->getStyle('A3')
->getAlignment()
->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
    //////////bold heading
$objPHPExcel->getActiveSheet()->getStyle('A3')->getFont()->setBold(true);
    //////////heading size
$objPHPExcel->getActiveSheet()->getStyle('A3')->getFont()->setSize(13);
    //////////heading Background
$objPHPExcel->getActiveSheet()->getStyle('A3')->applyFromArray(
    array(
        'fill' => array(
            'type' => PHPExcel_Style_Fill::FILL_SOLID,
            'color' => array('rgb' => '008000')
        )
    )
);
    //////////////////heading text color
$objPHPExcel->getActiveSheet()->getStyle('A3')->applyFromArray(
    array(
        'font' => array(
            'type' => PHPExcel_Style_Fill::FILL_SOLID,
            'color' => array('rgb' => 'FFFFFF')
        )
    )
);

$objPHPExcel->setActiveSheetIndex(0)
->setCellValue("A4","#");
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue("B4","Payment Date");
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue("C4","Property Type");
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue("D4","Property Description");
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue("E4","Landlord / Agent");
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue("F4","Amount");
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue("G4","Ref ID");

$i =5;
$count = 1;
$total = 0;
foreach($data as $payment):
    $objPHPExcel->setActiveSheetIndex(0)
    ->setCellValue("A".$i,$count);
    $objPHPExcel->setActiveSheetIndex(0)
    ->setCellValue("B".$i,$payment->payment_date);
    $objPHPExcel->setActiveSheetIndex(0)
    ->setCellValue("C".$i,($payment->sale_type=='rent'?'For Rent':'For Sale'));
    $objPHPExcel->setActiveSheetIndex(0)
    ->setCellValue("D".$i,$payment->name);
    $objPHPExcel->setActiveSheetIndex(0)
    ->setCellValue("E".$i,$payment->first_name.' '.$payment->last_name);
    $objPHPExcel->setActiveSheetIndex(0)
    ->setCellValue("F".$i,$payment->payment_received.' AED');
    $objPHPExcel->setActiveSheetIndex(0)
    ->setCellValue("G".$i,345345);
$count++; 
$i++;
$total += $payment->payment_received;
endforeach;

$totalRecordsIndex = $i + 1;
$totalIndex = $i + 2;
$objPHPExcel->setActiveSheetIndex(0)->setCellValue("F".$totalRecordsIndex,'Total NO. Of Payments =');
$objPHPExcel->setActiveSheetIndex(0)->setCellValue("G".$totalRecordsIndex,count($data));

$objPHPExcel->setActiveSheetIndex(0)->setCellValue("F".$totalIndex,'Total Payments Received =');
$objPHPExcel->setActiveSheetIndex(0)->setCellValue("G".$totalIndex,$total.' AED');
    //////////bold heading
$objPHPExcel->getActiveSheet()->getStyle("F".$totalRecordsIndex)->getFont()->setBold(true);
    //////////heading size
$objPHPExcel->getActiveSheet()->getStyle("F".$totalRecordsIndex)->getFont()->setSize(13);
$objPHPExcel->getActiveSheet()->getStyle("G".$totalRecordsIndex)->getFont()->setSize(13);

    //////////bold heading
$objPHPExcel->getActiveSheet()->getStyle("F".$totalIndex)->getFont()->setBold(true);
    //////////heading size
$objPHPExcel->getActiveSheet()->getStyle("F".$totalIndex)->getFont()->setSize(13);
$objPHPExcel->getActiveSheet()->getStyle("G".$totalIndex)->getFont()->setSize(13);

// TEXT ALIGN
// $objPHPExcel->getActiveSheet()->getStyle('A4:G4')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
$objPHPExcel->getActiveSheet()->getStyle("G".$totalRecordsIndex)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_LEFT);
$objPHPExcel->getActiveSheet()->getStyle("F".$totalRecordsIndex)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
$objPHPExcel->getActiveSheet()->getStyle("F".$totalIndex)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);

$objPHPExcel->getActiveSheet()
->getStyle('A4:G4')
->getFill()
->setFillType(PHPExcel_Style_Fill::FILL_SOLID)
->getStartColor()
->setARGB('FFFF00');
$objPHPExcel->getActiveSheet()->getStyle('A4:G4')->getFont()->setBold(true);
$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setAutoSize(false);
$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(5);
$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setAutoSize(false);
$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(20);
$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setAutoSize(false);
$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(15);
$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setAutoSize(false);
$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(50);
$objPHPExcel->getActiveSheet()->getColumnDimension('E')->setAutoSize(false);
$objPHPExcel->getActiveSheet()->getColumnDimension('E')->setWidth(20);
$objPHPExcel->getActiveSheet()->getColumnDimension('F')->setAutoSize(false);
$objPHPExcel->getActiveSheet()->getColumnDimension('F')->setWidth(28);
$objPHPExcel->getActiveSheet()->getColumnDimension('G')->setAutoSize(false);
$objPHPExcel->getActiveSheet()->getColumnDimension('G')->setWidth(18);


//NAMING AND DOWNLOAD
$objPHPExcel->getActiveSheet(0)->setTitle('Payments Report');
$filename = 'Payment_Report'.'.xlsx';
$objPHPExcel->setActiveSheetIndex(0);
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
ob_end_clean();
header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
header('Content-Disposition: attachment;filename="'.$filename.'"');
header('Cache-Control: max-age=0');
$objWriter->save('php://output');
 // $objWriter->save('../csvfiles/'.$filename);
exit(1);
...