Maatwebsite-Excel如何单独设置标题的颜色

Maatwebsite-Excel如何单独设置标题的颜色

如图希望导出的execl的标题星号出来是红色,让用户显眼的看到是必填项, 目前导出是黑色,希望知道的大神告知下如何实现.
Laravel版本6.X
Maatwebsite-Excel版本3.X

《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
讨论数量: 1
自由与温暖是遥不可及的梦想
protected $colors = [];

public function map($order): array
{
    $info = [
        $data->id,
        $data->no,
    ];
    if (empty($this->colors)) {
          $last_color = ['start' => 1, 'end' => 1];
    } else {
          $last_color = $this->colors[count($this->colors) - 1];
    }
    $color = [
          'start' => $last_color['end'] + 1,
        'end' => $last_color['end']
    ];
    $color['end'] = $color['start'] + $i - 1;
    array_push($this->colors, $color);
}

public function registerEvents(): array
    {
        return [
            AfterSheet::class => function (AfterSheet $event) {
                $event->sheet->getColumnDimension('A')->setAutoSize(true);
                $event->sheet->getColumnDimension('B')->setAutoSize(true);
                $event->sheet->getColumnDimension('C')->setAutoSize(true);
                $event->sheet->getColumnDimension('D')->setAutoSize(true);

                for ($i = 0; $i <= $this->_data->count(); $i++) {
                    $event->sheet->getDelegate()->getRowDimension($i)->setRowHeight(20);
                }

                if (count($this->colors) > 1) {
                    $color_arr = ['2b957a', '000000'];

                    foreach ($this->colors as $index => $color) {
                        $str = 'A'.$color['start'].':'.'S'.$color['end'];
                        if ($index%2 == 0) {
                            $rgb = $color_arr[0];
                        } else {
                            $rgb = $color_arr[1];
                        }

                        $event->sheet->getDelegate()->getStyle($str)->applyFromArray([
                            'font' => [
                                'color' => [
                                    'rgb' => $rgb
                                ]
                            ]
                        ]);
                    }
                }
            }
        ];
    }

大概这样子

3年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!