NPOI 自定义单元格背景颜色-Excel
NPOI针对office2003使用HSSFWorkbook,对于offce2007及以上使用XSSFWorkbook;今天我以HSSFWorkbook自定义颜色为例说明,Office2007的未研究呢
在NPOI中默认的颜色类是HSSFColor,它内置的颜色有几十种供我们选择,如果不够怎么办,不能修改底层的HSSFColor类;
大概解决思路:
1、将颜色的RGB值添加进调色板HSSFPalette中
2、调用HSSFPalette中FindColor方法获取HSSFColor实例
3、在需要使用颜色的地方使用HSSFColor的Indexed属性获取index值(NPOI.dll版本不同,也可能是GetIndex方法节能Index值)
第一步:将颜色的RGB值添加进调色板HSSFPalette
HSSFWorkbook hssfWorkbook = new HSSFWorkbook();//工作簿实例
HSSFPalette palette = hssfWorkbook.GetCustomPalette(); //调色板实例
palette.SetColorAtIndex((short)8 ,(short)184,(short)204,(short)228);
参数解析
第一个参数:设置调色板新增颜色的编号,自已设置即可;取值范围8-64
第二、第三、第四个参数,组成RGB值
这里还有一点需要注意,如何去找到相应的RGB值呢,如果去用肉眼去找到匹配的太难;
可以下载调色板来拾取,也可以通过Excel固定模板去取,本次我讲解通过Excel去取颜色
客户可能给某个模板,模板中自带背景色,我们如何找到这个前景色的RGB值呢,通过以下方式
第二步:调用HSSFPalette中FindColor方法获取HSSFColor实例
HSSFColor hssFColor = palette.FindColor((short)184,(short)204,(short)228);
第一步中自定义设置的RGB值,直接复制过来使用;通过FindColor直接找到HSSFColor实例
第三步:设置具体对象颜色
//创建一个单元格(具体网上查查,本次不做重点讲解)
ISheet sheet = hssfWorkbook.GetSheetAt(0);
IRow row = sheet.CreateRow(0);
ICell cell = row.CreateCell(0);
//设置单元格颜色
ICellStyle cellStyle= hssfWorkbook.CreateCellStyle();
cellStyle.FillPattern = FillPattern.SolidForeground; 老版本可能这样写FillPatternType.SOLID_FOREGROUND;
cellStyle.FillForegroundColor = hssFColor.Indexed;
cell.CellStyle = cellStyle;//设置
NPOI 自定义单元格背景颜色-Excel的更多相关文章
- NPOI自定义单元格背景颜色
经常在NPOI群里聊天时发现有人在问NPOI设置单元格背景颜色的问题,而Tony Qu大神的博客里没有相关教程,刚好最近在做项目时研究了一下这一块,在这里总结一下. 在NPOI中默认的颜色类是HSSF ...
- 【转】NPOI自定义单元格背景颜色
经常在NPOI群里聊天时发现有人在问NPOI设置单元格背景颜色的问题,而Tony Qu大神的博客里没有相关教程,刚好最近在做项目时研究了一下这一块,在这里总结一下. 在NPOI中默认的颜色类是HSSF ...
- NPOI 自定义单元格背景颜色 XSSFWorkbook - Excel
x 网上找到了,HSSFWorkbook自定义颜色的例子(讲的还挺细致的),但是XSSFWorkbook确没找到...研究了一下,坑掉了一地... NPOI.XSSF.UserModel.XSSFWo ...
- 转载 NPOI Excel 单元格背景颜色对照表
NPOI Excel 单元格颜色对照表,在引用了 NPOI.dll 后可通过 ICellStyle 接口的 FillForegroundColor 属性实现 Excel 单元格的背景色设置,FillP ...
- NPOI Excel 单元格背景颜色对照表
NPOI Excel 单元格颜色对照表,在引用了 NPOI.dll 后可通过 ICellStyle 接口的 FillForegroundColor 属性实现 Excel 单元格的背景色设置,FillP ...
- <转载>NPOI Excel 单元格背景颜色对照表
我转载地址:http://www.holdcode.com/web/details/117 NPOI Excel 单元格颜色对照表,在引用了 NPOI.dll 后可通过 ICellStyle 接口的 ...
- Easyui之datagrid实现点击单元格修改单元格背景颜色
前段时间有个需求中有点击datagrid的单元格实现某种事件,调用datagrid的onclickCell这个方法很容易实现,但是体验不好啊,完全不知道自己刚才点击的是哪个单元格,然后就尝试单击单元格 ...
- [Xcode 实际操作]五、使用表格-(5)设置UITableView的单元格背景颜色
目录:[Swift]Xcode实际操作 本文将演示单元格背景颜色的设置 在项目导航区,打开视图控制器的代码文件[ViewController.swift] import UIKit //首先添加两个协 ...
- C#使用NPOI导出excel设置单元格背景颜色
ICellStyle cellStyle = workbook.CreateCellStyle(); cellStyle.FillPattern = FillPattern.SolidForegrou ...
随机推荐
- Linux第01天
Linux第01天 1.虚拟机安装linux(centos 32bit) 1.1 虚拟机安装前置工作的准备,如内存.硬盘.CPU分配.镜像下载等 1.2 安装方式(图形界面或者命令行 推荐图形界面即直 ...
- foreach的用法
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- hdu 3632 A Captivating Match(区间dp)
题目链接:http://acm.split.hdu.edu.cn/showproblem.php?pid=3632 题意:n个人进行比赛,每个人有一个价值a[i],最后冠军只有一个,只能相邻两个人进行 ...
- iOS--NSTimer设置定时器的两种方法
//方法一: //创建定时器 NSTimer *timer=[NSTimer timerWithTimeInterval:2.0 target:self selector:@selector(next ...
- 在Lingo中输入矩阵(通过Excel)
举例说明:我要将'C:\Users\Lenovo\Desktop\lingodata.xlsx'里的数据导入lingo1.左键拖动选中'C:\Users\Lenovo\Desktop\lingodat ...
- DataTable 的使用
DataTable CFHMXdt = new DataTable(); CFHMXdt.Columns.Add("group", typeof(System.String)); ...
- makefile 笔记
1.Makefile中命令前的@和-符号 如果make执行的命令前面加了@字符,则不显示命令本身而只显示它的结果; Android中会定义某个变量等于@,例如 hide:= @ 通常make执行的命令 ...
- JAVA自定义异常
创建自定义异常是为了表示应用程序的一些错误类型,为代码可能发生的一个或多个问题提供新含义. 可区分代码运行时可能出现的相似问题的一个或多个错误,或给出应用程序中一组错误的特定含义. //自定义异常类需 ...
- C#转摘
尽量用Func和lambda解决函数变量问题,用var, dynamic来解决动态变量问题
- 骑士游历/knight tour - visual basic 解决
在visual baisc 6 how to program 中文版第七章的练习题上看到了这个问题,骑士游历的问题. 在8x8的国际象棋的棋盘上,骑士(走法:一个方向走两格,另一个方向一格)不重复走完 ...