package excelutil import "github.com/xuri/excelize/v2" type style struct { file *excelize.File } func NewStyle(file *excelize.File) *style { return &style{ file: file, } } func (s *style) NewBoldTitleStyleId() (int, error) { styleID, err := s.file.NewStyle(&excelize.Style{ // 标题加粗 Font: &excelize.Font{ Bold: true, Color: "000000", }, // 居中 Alignment: &excelize.Alignment{ // 水平对齐: Horizontal: "center", // 垂直对齐 Vertical: "center", // 单元格内容过多则自动换行 WrapText: true, }, }) return styleID, err } func (s *style) NewBoldBorderTitleStyleId() (int, error) { styleID, err := s.file.NewStyle(&excelize.Style{ // 标题加粗 Font: &excelize.Font{ Bold: true, Color: "000000", }, // 设置边框 Border: []excelize.Border{ {Type: "left", Color: "000000", Style: 1}, {Type: "top", Color: "000000", Style: 1}, {Type: "bottom", Color: "000000", Style: 1}, {Type: "right", Color: "000000", Style: 1}, }, // 居中 Alignment: &excelize.Alignment{ // 水平对齐: Horizontal: "center", // 垂直对齐 Vertical: "center", // 单元格内容过多则自动换行 WrapText: true, }, }) return styleID, err } func (s *style) NewGreenBoldBorderTitleStyleId() (int, error) { styleID, err := s.file.NewStyle(&excelize.Style{ // 标题加粗 Font: &excelize.Font{ Bold: true, Color: "FFFFFF", }, // 设置边框 Border: []excelize.Border{ {Type: "left", Color: "000000", Style: 1}, {Type: "top", Color: "000000", Style: 1}, {Type: "bottom", Color: "000000", Style: 1}, {Type: "right", Color: "000000", Style: 1}, }, // 图案填充-绿色 Fill: excelize.Fill{ Pattern: 1, Type: "pattern", Color: []string{"2EA121"}, }, // 居中 Alignment: &excelize.Alignment{ // 水平对齐: Horizontal: "center", // 垂直对齐 Vertical: "center", // 单元格内容过多则自动换行 WrapText: true, }, }) return styleID, err } func (s *style) NewYellowBoldBorderTitleStyleId() (int, error) { styleID, err := s.file.NewStyle(&excelize.Style{ // 标题加粗 Font: &excelize.Font{ Bold: true, Color: "FFFFFF", }, // 设置边框 Border: []excelize.Border{ {Type: "left", Color: "000000", Style: 1}, {Type: "top", Color: "000000", Style: 1}, {Type: "bottom", Color: "000000", Style: 1}, {Type: "right", Color: "000000", Style: 1}, }, // 图案填充-黄色 Fill: excelize.Fill{ Pattern: 1, Type: "pattern", Color: []string{"FFC60A"}, }, // 居中 Alignment: &excelize.Alignment{ // 水平对齐: Horizontal: "center", // 垂直对齐 Vertical: "center", // 单元格内容过多则自动换行 WrapText: true, }, }) return styleID, err } func (s *style) NewDefaultValueStyleId() (int, error) { styleID, err := s.file.NewStyle(&excelize.Style{ // 居中 Alignment: &excelize.Alignment{ // 水平对齐: Horizontal: "center", // 垂直对齐 Vertical: "center", }, }) return styleID, err } func (s *style) NewDefaultValueStyleIdWithBorder() (int, error) { styleID, err := s.file.NewStyle(&excelize.Style{ // 设置边框 Border: []excelize.Border{ {Type: "left", Color: "000000", Style: 1}, {Type: "top", Color: "000000", Style: 1}, {Type: "bottom", Color: "000000", Style: 1}, {Type: "right", Color: "000000", Style: 1}, }, // 居中 Alignment: &excelize.Alignment{ // 水平对齐: Horizontal: "center", // 垂直对齐 Vertical: "center", }, }) return styleID, err } func (s *style) NewDefaultTimeStyleId() (int, error) { styleID, err := s.file.NewStyle(&excelize.Style{ // 居中 Alignment: &excelize.Alignment{ // 水平对齐: Horizontal: "center", // 垂直对齐 Vertical: "center", }, NumFmt: 22, }) return styleID, err } func (s *style) NewDefaultTimeStyleIdWithBorder() (int, error) { styleID, err := s.file.NewStyle(&excelize.Style{ // 设置边框 Border: []excelize.Border{ {Type: "left", Color: "000000", Style: 1}, {Type: "top", Color: "000000", Style: 1}, {Type: "bottom", Color: "000000", Style: 1}, {Type: "right", Color: "000000", Style: 1}, }, // 居中 Alignment: &excelize.Alignment{ // 水平对齐: Horizontal: "center", // 垂直对齐 Vertical: "center", }, NumFmt: 22, }) return styleID, err }