使用C# NPOI 导出Excel时,只更改单元格内部分文本的字体颜色

使用C# NPOI时,有没有办法只更改单元格内部分文本的字体颜色?

我知道你可以改变整个单元格的字体颜色。但我只想更改该单元格中最后4个字符的颜色。

其实这也这是可以做到的,代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
var newFile = @"newbook.core.xlsx";
using (var fs = new FileStream(newFile, FileMode.Create, FileAccess.Write))
{
    var workbook = new XSSFWorkbook();
    var sheet = workbook.CreateSheet("Sheet1");
    var rowIndex = 0;
    var row = sheet.CreateRow(rowIndex);
    var cell = row.CreateCell(0);
    var text = "this is content";
    cell.SetCellValue(text);
    var font = workbook.CreateFont();
    font.Color = HSSFColor.Blue.Index2;
    cell.RichStringCellValue.ApplyFont(text.Length - 4, text.Length, font);
    workbook.Write(fs);
}

  




该代码也适用于.NET框架和NPOI nuget包。

 

 

 
posted @   我是太子殿下  阅读(2009)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
点击右上角即可分享
微信分享提示