要在ApachePOI3.7及以下版本中为XSSFWorkbook应用自定义颜色是可能的:
java.awt.Color c = new java.awt.Color (1,2,3)
XSSFCellStyle xcs = xssfWorkbook.createCellStyle();
XSSFFont headerFont = xssfWorkbook.createFont();
headerFont.setColor(new XSSFColor(c));
xcs.setFont(headerFont);
cell.setCellStyle(xcs);在4.0版中,XSSFColor(java.awt.Color)被删除。仍然有可能实现同样的目标,只需额外的“黑客”:
XSSFColor xc = new XSSFColor();
xc.setARGBHex(String.format("%02x%02x%02x",c.getRed(),c.getGreen(),c.getBlue()));
headerFont.setColor(xc);但如何才能做到这一点呢?大多数XSSFColor方法都涉及一个IndexedColorMap,但我找不到任何示例说明如何使用它在XSSFWorkbook中设置自定义颜色。
发布于 2018-09-17 03:14:41
byte[] rgb = {120, 100, (byte) 200};
headerFont.setColor(new XSSFColor(rgb, new DefaultIndexedColorMap()));发布于 2020-06-25 14:49:20
XSSFFont font = workbook.createFont();
byte[] rgb = {20, (byte) 230, 25};
XSSFColor xc = new XSSFColor(rgb, null);
font.setColor(xc);以上应该是POI4 4的最佳方式。
https://stackoverflow.com/questions/52357448
复制相似问题