使用 Apache POI 在条件格式中自定义背景颜色
Posted
技术标签:
【中文标题】使用 Apache POI 在条件格式中自定义背景颜色【英文标题】:Custom background color in conditional formatting using Apache POI 【发布时间】:2014-12-28 14:47:07 【问题描述】:我有一个 XSSF 工作簿,我想在定义了条件格式的一组单元格中定义自定义背景颜色,但问题是 PatternFormatting
类中的 setFillBackgroundColor()
方法只接受类型短参数,而不是像这样的XSSFColor
:
PatternFormatting fill = rule1.createPatternFormatting();
fill.setFillBackgroundColor(new XSSFColor(new java.awt.Color(80, 80, 100));
fill.setFillPattern(PatternFormatting.SOLID_FOREGROUND);
我可以fill.setFillBackgroundColor(IndexedColors.RED.index)
,但我想定义一个自定义颜色。我该怎么做?。
【问题讨论】:
fill.setFillBackgroundColor(new XSSFColor(new java.awt.Color(80, 80, 100));
是自定义 R=80 G=80 B=100 对吗?使用它有什么问题?
@Angga 问题是PatternFormatting
类中的setFillBackgroundColor()
方法只接受类型短参数,而不接受XSSFColor
。
相关:***.com/questions/10912578/…
【参考方案1】:
对于仍在阅读本文并遇到请求者在 2014 年描述的问题的任何人,您可能使用的是 3.13 之前的 Apache POI 版本。尝试升级到至少 3.13,您确实应该能够做到:
fill.setFillBackgroundColor(new XSSFColor(new java.awt.Color(80, 80, 100))
(另见此处:https://bz.apache.org/bugzilla/show_bug.cgi?id=56774)
【讨论】:
以上是关于使用 Apache POI 在条件格式中自定义背景颜色的主要内容,如果未能解决你的问题,请参考以下文章