当前位置: 首页 > news >正文

NOPI用法之自定义单元格背景色(3)

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;//设置

相关文章:

NOPI用法之自定义单元格背景色(3)

NPOI针对office2003使用HSSFWorkbook,对于offce2007及以上使用XSSFWorkbook;今天我以HSSFWorkbook自定义颜色为例说明,Office2007的未研究呢 在NPOI中默认的颜色类是HSSFColor,它内置的颜色有几十种供我们选择,如果不…...

数据分析中常见标准的参考文献

做数据分析过程中,有些分析法方法的标准随便一搜就能找到,不管是口口相传还是默认,大家都按那样的标准做了。日常分析不细究出处还可以,但是正式的学术论文你需要为你写下的每一句话负责,每一个判断标准都应该有参考文…...

辨析 变更请求、批准的变更请求、实施批准的变更请求

变更请求、批准的变更请求、实施批准的变更请求辨析 辨析各种变更请求,不服来辨。 变更请求 定义:对正规受控的文件或计划(范围、进度、成本、政策、过程、计划或程序)等的变更,以反映修改或增加的意见或内容 根据变更请求的工作内容可将变…...

leetcode 561. 数组拆分

题目描述解题思路执行结果 leetcode 561. 数组拆分 题目描述 数组拆分 给定长度为 2n 的整数数组 nums ,你的任务是将这些数分成 n 对, 例如 (a1, b1), (a2, b2), ..., (an, bn) ,使得从 1 到 n 的 min(ai, bi) 总和最大。 返回该 最大总和 。 示例 1&am…...

AviatorScript

AviatorScript 是一门高性能、轻量级寄宿于 JVM (包括 Android 平台)之上的脚本语言 特性介绍 支持数字、字符串、正则表达式、布尔值、正则表达式等基本类型,完整支持所有 Java 运算符及优先级等。函数是一等公民,支持闭包和函…...

Oracle跨服务器取数——DBlink 初级使用

前言 一句话解释DBlink是干啥用的 实现跨库访问的可能性. 通过DBlink我们可以在A数据库访问到B数据库中的所有信息,例如我们在加工FDS层表时需要访问ODS层的表,这是就需要跨库访问 一、DBlink的分类 private:用户级别,只有创建该dblink的用户才可以使…...

200人 500人 园区网设计

实验要求: ① 设置合理的STP优先级、边缘端口、Eth-trunk ② 企业内网划分多个vlan ,减少广播域大小,提高网络稳定性 ③ 所有设备,在任何位置都可以telnet远程管理 ④ 出口配置NAT ⑤ 所有用户均为自动获取ip地址 ⑥ 在企业…...

netstat命令解析

一、linux系统中netstat命令的帮助信息 └──╼ $netstat -h usage: netstat [-vWeenNcCF] [<Af>] -r netstat {-V|--version|-h|--help}netstat [-vWnNcaeol] [<Socket> ...]netstat { [-vWeenNac] -i | [-cnNe] -M | -s [-6tuw] }-r, --route …...

API接口的自我阐述

API&#xff08;Application Programming Interface&#xff09;&#xff0c;翻译为应用程序接口&#xff0c;是一套定义程序之间如何通讯的接口。API可以实现软件的可重用性、可维护性和互操作性&#xff0c;同时也可以提升软件的性能和安全性。API接口是一个软件系统中的重要…...

Day32内部类

内部类 内部类就是在一个类中定义一个类&#xff0c;&#xff08;在A类中定义一个B类&#xff0c;B类就被称为内部类&#xff09; 格式&#xff1a;public class 类名{ 修饰符 class 类名{} } 如&#xff1a;public class Outer{ public class Inner {} } //内部类可以访问外部…...

用户画像系列——HBase 在画像标签过期策略中的应用

一、背景 前面系列文章介绍了用户画像的概念、用户画像的标签加工、用户画像的应用。本篇文章主要介绍一些画像的技术细节&#xff0c;让大家更加详细的了解画像数据存储和处理的逻辑 举个现实中的例子&#xff1a; 例子1&#xff1a;因为疫情原因&#xff0c;上线一个平台(…...

时下热门话题:ChatGPT能否取代人类?

时下热门话题&#xff1a;ChatGPT能否取代人类&#xff1f; 2022年11月底&#xff0c;人工智能对话聊天机器人ChatGPT推出&#xff0c;迅速在社交媒体上走红&#xff0c;短短5天&#xff0c;注册用户数就超过100万。2023年1月末&#xff0c;ChatGPT的月活用户已突破1亿&#x…...

每日刷题记录(十七)

目录 第一题&#xff1a;求12...n解题思路&#xff1a;代码实现&#xff1a; 第二题&#xff1a;两两交换链表中的节点解题思路&#xff1a;代码实现&#xff1a; 第三题&#xff1a;只出现一次的数字 II解题思路&#xff1a;代码实现&#xff1a; 第四题&#xff1a;根据字符串…...

开放原子训练营(第三季)RT-Thread Nano学习营一探究竟

前言 不知道从什么时候起&#xff0c;智能设备开始普及到了我们日常生活的方方面面。下班还未到家&#xff0c;热水器就可以调到合适的温度&#xff1b;上班刚进公司&#xff0c;忘关空调也不再是什么烦恼&#xff1b;诸如夜晚的灯光变换&#xff0c;白昼的窗帘适应等更给我们…...

数据库系统概论(二)关系数据库,SQL概述和数据库安全性

作者的话 前言&#xff1a;总结下知识点&#xff0c;自己偶尔看一看。 目录 一、关系模型概述 1.1关系数据结构及形式化定义 1.1.1域&#xff08;Domain&#xff09; 1.1.2笛卡尔积&#xff08;Cartesian Product&#xff09; 1.1.3关系&#xff08;Relation&#xff09; …...

【VM服务管家】VM4.x算子SDK开发_3.1 环境配置类

目录 3.1.1 环境配置&#xff1a;CSharp算子SDK开发环境配置方法3.1.2 算子封装&#xff1a;使用C封装算子SDK的方法3.1.3 异常中断&#xff1a;算子SDK软件运行报错“托管调试助手”中断的解决方法3.1.4 深度学习&#xff1a;GPU运行深度学习算子引发StackOverFlow异常的方法 …...

Java核心书籍1

1.《Java核心技术》是一本深入浅出的Java编程指南&#xff0c;适合初学者和有一定Java编程基础的读者。这本书的主要作者是Cay S. Horstmann和Gary Cornell&#xff0c;他们都是Java领域的知名专家。这本书的最新版本是第10版&#xff0c;其中涵盖了Java SE 9、10和11的新特性&…...

crontab详细用法 定时任务

使用crontab可以在指定时间执行一个shell脚本或者一系列Linux命令 crontab的使用方法 方法1.使用crontab命令 例如添加一个新的或者编辑已有的,使用: crontab -e就可以进入配置文件.此时配置crontab的执行者是当前登入用户,如果当前有用户是root,需要为其他用户配置,可以使用…...

基于ArcGIS Pro、Python、USLE、INVEST模型等多技术融合的生态系统服务构建生态安全格局

查看原文>>>基于ArcGIS Pro、Python、USLE、INVEST模型等多技术融合的生态系统服务构建生态安全格局 目录 第一章、生态安全评价理论及方法介绍 第二章、平台基础 第三章、数据获取与清洗 第四章、基于USLE模型的土壤侵蚀评价 第五章、基于风蚀修正模型的防风固…...

开心档之MySQL 创建数据类型

MySQL 数据类型 MySQL 中定义数据字段的类型对你数据库的优化是非常重要的。 MySQL 支持多种类型&#xff0c;大致可以分为三类&#xff1a;数值、日期/时间和字符串(字符)类型。 数值类型 MySQL 支持所有标准 SQL 数值数据类型。 这些类型包括严格数值数据类型(INTEGER、S…...

NY345固态MT29F32T08GWLBHD6-24T:B

NY345固态MT29F32T08GWLBHD6-24T:B在智能制造、交通控制、能源监测等关键领域&#xff0c;每一次写入与读取都决定着系统运行的可靠性。美光&#xff08;Micron&#xff09;MT29F32T08GWLBHD6-24T:B&#xff0c;以其32Tb大容量、工业级封装和多模式灵活切换&#xff0c;成为嵌入…...

别只傻等候补了!用Bypass分流抢票监控12306“捡漏”全攻略(含微信通知设置)

别只傻等候补了&#xff01;用Bypass分流抢票监控12306"捡漏"全攻略&#xff08;含微信通知设置&#xff09; 春节临近&#xff0c;当你在12306官网上看到心仪车次显示"候补"或"无票"时&#xff0c;是否已经放弃希望&#xff1f;其实&#xff0c…...

Claude Code + Superpowers 实战:AI 驱动智能客服管理系统开发

当"会干活的 AI"遇上"会按流程干活的 AI"&#xff0c;研发效率的质变由此开始 一、引言&#xff1a;AI 编程的"甜蜜陷阱" 在 AI 编程助手普及的今天&#xff0c;你可能有这样的体验&#xff1a; 让 AI "加个购物车功能"&#xff0c;它…...

RWKV vs. LLaMA2:在论文审稿任务上,我为什么第一版选了它(以及为什么后来放弃了)

RWKV与LLaMA2在论文审稿任务中的技术选型反思 当面对一个需要处理长文档的AI审稿系统时&#xff0c;模型选型往往成为决定项目成败的关键因素。2023年第三季度&#xff0c;我们在构建论文审稿GPT第一版时&#xff0c;做出了一个在当时看来合理但事后证明值得商榷的决策——选择…...

Lusca CSP策略完全指南:构建安全的内容安全策略

Lusca CSP策略完全指南&#xff1a;构建安全的内容安全策略 【免费下载链接】lusca Application security for express apps. 项目地址: https://gitcode.com/gh_mirrors/lu/lusca Lusca是一款专为Express应用打造的安全中间件&#xff0c;提供了全面的内容安全策略&…...

别再只问ChatGPT答案了!试试这个Prompt技巧,让大模型把解题思路‘说’给你听

解锁大模型思维密码&#xff1a;用Prompt技巧让AI展示完整推理路径 当你向ChatGPT抛出一个复杂问题时&#xff0c;是否曾对那个突然出现的最终答案感到困惑&#xff1f;就像看到魔术师从空帽子中变出兔子&#xff0c;却不知道机关在哪里。现代大型语言模型确实能给出惊人准确的…...

态是相关,势是因果,感是具身,知是离身

态是相关&#xff0c;势是因果&#xff0c;感是具身&#xff0c;知是离身&#xff0c;用四个高度概括的词&#xff0c;切中了“人机环境系统智能”中态势感知四个核心维度的本质属性。我们可以结合之前的探讨&#xff0c;来深入拆解一下这句“十六字真言”&#xff1a;态是相关…...

别再手动分色了!用MaterialIDsRandomGenerator插件5分钟搞定游戏模型贴图规划

游戏美术革命&#xff1a;用MaterialIDsRandomGenerator实现材质ID智能分配 在独立游戏开发中&#xff0c;一把生锈的骑士剑模型正静静躺在3dMax视口中。它的剑刃需要金属质感&#xff0c;剑柄需要皮革纹理&#xff0c;护手部分则需要复杂的雕花细节。传统工作流程中&#xff0…...

使用coze为连锁服装品牌打造门店智能导购助手

### 业务背景&#xff1a;一线导购的“三座大山”客户是拥有 400 多家门店的快时尚品牌。一线导购每天面临的挑战很典型&#xff1a;- **信息记不住**&#xff1a;每周上百款新品上市&#xff0c;每款的成分、库存、搭配建议都要背&#xff0c;新员工培训周期长。 - **找货效率…...

Qlib实战:如何用自定义数据(比如可转债)跑通你的量化筛选器?

Qlib实战&#xff1a;从可转债数据到动态筛选策略的全流程解析 在量化投资领域&#xff0c;标准化的股票数据往往难以满足专业投资者的特殊需求。当我们需要处理可转债、加密货币或其他另类资产时&#xff0c;如何将这些非标准数据整合到强大的量化框架中&#xff0c;成为许多开…...