| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 | <?phpnamespace App\Exports;use PhpOffice\PhpSpreadsheet\Style\Border;use PhpOffice\PhpSpreadsheet\Style\Fill;class CommonExport{    protected function setCellWidth($event, $cells)    {        //设置列宽        $event->sheet->getDelegate()->getColumnDimension('A')->setWidth(5);        $event->sheet->getDelegate()->getColumnDimension('B')->setWidth(35);        $event->sheet->getDelegate()->getColumnDimension('C')->setWidth(30);        $event->sheet->getDelegate()->getColumnDimension('D')->setWidth(25);        $event->sheet->getDelegate()->getColumnDimension('E')->setWidth(25);        $event->sheet->getDelegate()->getColumnDimension('F')->setWidth(20);        $event->sheet->getDelegate()->getColumnDimension('G')->setWidth(20);        $event->sheet->getDelegate()->getColumnDimension('H')->setWidth(20);        $event->sheet->getDelegate()->getColumnDimension('I')->setWidth(20);        $event->sheet->getDelegate()->getColumnDimension('J')->setWidth(20);        $event->sheet->getDelegate()->getColumnDimension('K')->setWidth(20);        $event->sheet->getDelegate()->getColumnDimension('L')->setWidth(20);        $event->sheet->getDelegate()->getColumnDimension('M')->setWidth(20);        $event->sheet->getDelegate()->getColumnDimension('N')->setWidth(20);        $event->sheet->getDelegate()->getColumnDimension('O')->setWidth(20);        $event->sheet->getDelegate()->getColumnDimension('P')->setWidth(20);        $event->sheet->getDelegate()->getColumnDimension('Q')->setWidth(20);        $event->sheet->getDelegate()->getColumnDimension('R')->setWidth(20);        $event->sheet->getDelegate()->getColumnDimension('S')->setWidth(20);        for ($i = 0; $i <= 1000; $i++) {            $event->sheet->getDelegate()->getRowDimension($i)->setRowHeight(30);        }        foreach ($cells as $k => $v) {            //设置区域单元格垂直居中            $event->sheet->getDelegate()->getStyle($v)->getAlignment()->setVertical('center');            //设置区域单元格水平居中            $event->sheet->getDelegate()->getStyle($v)->getAlignment()->setHorizontal('center');            $event->sheet->getDelegate()->mergeCells($v);        }    }    protected function setCellColor($cells, $event, $rgb = 'acc8cc')    {        foreach ($cells as $cell) {            //设置区域单元格字体、颜色、背景等,其他设置请查看 applyFromArray 方法,提供了注释            $event->sheet->getDelegate()->getStyle($cell)->applyFromArray([                'font' => [                    'name' => 'Arial',                    'bold' => true,                    'italic' => false,                    'strikethrough' => false,                    'color' => [                        'rgb' => '000000'                    ]                ],                'fill' => [                    'fillType' => Fill::FILL_SOLID, //线性填充,类似渐变                    'rotation' => 0, //渐变角度                    'startColor' => [                        'rgb' => $rgb //初始颜色                    ],                    //结束颜色,如果需要单一背景色,请和初始颜色保持一致                    'endColor' => [                        'argb' => $rgb                    ]                ]            ]);        }    }    protected function setCellColorBorders($cells, $event)    {        foreach ($cells as $cell) {            $event->sheet->getDelegate()->getStyle($cell)->getBorders()->applyFromArray(                [                    'allBorders' => [                        'borderStyle' => Border::BORDER_THIN,                        'color' => [                            'rgb' => '5F9EA0'                        ]                    ]                ]            );        }    }}
 |