先说在前面,NOPI的单元格填充色设置 确实有些反人类,怎么设都不行,网上的教程基本都有问题。
NOPI版本:2.7.0
仅适用于:.xlsx文件
using NPOI.OpenXmlFormats.Spreadsheet;
using NPOI.SS.UserModel;
using NPOI.XSSF.UserModel;
using System.Drawing;
XSSFWorkbook workbook = new XSSFWorkbook();
XSSFCellStyle borderStyle = (XSSFCellStyle)workbook.CreateCellStyle();
Color color = (Color)converter.ConvertFromString("#99FFFF");
NPOI.OpenXmlFormats.Spreadsheet.CT_Color cT_Color = new CT_Color();
cT_Color.SetRgb(co.R, co.G, co.B);
// 单元格颜色设置
borderStyle.FillForegroundXSSFColor = color;
borderStyle.FillPattern = FillPattern.SolidForeground;
.....
ICell cell;
cell.CellStyle = borderStyle;
注意事项:
FillForegroundColor、FillBackgroundColor、FillForegroundColorColor、FillBackgroundColorColor等属性 无法设置填充色,只有FillForegroundXSSFColor属性有效!- 必须设置
borderStyle.FillPattern = FillPattern.SolidForeground,否则颜色不生效。设置之后单元格默认为黑色。