Чтобы применить пользовательский цвет для XSSFWorkbook в Apache POI 3.7 и ниже, возможно следующее:
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.