Я пытаюсь установить собственный шестнадцатеричный цвет (
Код: Выделить всё
#00458DКод: Выделить всё
headerStyle.setFillForegroundColor(IndexedColors.DARK_BLUE.getIndex());
headerStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND);
Попытка 1: шестнадцатеричный ARGB:
Код: Выделить всё
XSSFColor myColor = new XSSFColor();
myColor.setARGBHex("ff00458d");
headerStyle.setFillForegroundColor(myColor);
Код: Выделить всё
headerStyle.setFillForegroundColor(new XSSFColor(new java.awt.Color(0, 69, 141), new DefaultIndexedColorMap()));
headerStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND);
Код: Выделить всё
IndexedColorMap colorMap = sheet.getWorkbook().getStylesSource().getIndexedColors();
XSSFColor color = new XSSFColor(new byte[]{0, 69, (byte)141}, colorMap);
headerStyle.setFillForegroundColor(color);
headerStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND);
Код: Выделить всё
java.lang.AbstractMethodError: Receiver class org.apache.poi.xssf.usermodel.XSSFColor
does not define or inherit an implementation of the resolved method
'abstract byte[] getStoredRGB()' of abstract class org.apache.poi.ss.usermodel.ExtendedColor.
at org.apache.poi.ss.usermodel.ExtendedColor.getRGBOrARGB(ExtendedColor.java:100)
at org.apache.poi.xssf.usermodel.XSSFColor.getARGB(XSSFColor.java:203)
at org.apache.poi.xssf.usermodel.XSSFColor.sameARGB(XSSFColor.java:392)
at org.apache.poi.xssf.usermodel.XSSFColor.equals(XSSFColor.java:423)
at org.apache.poi.xssf.usermodel.extensions.XSSFCellFill.equals(XSSFCellFill.java:186)
at org.apache.poi.xssf.model.StylesTable.putFill(StylesTable.java:529)
at org.apache.poi.xssf.usermodel.XSSFCellStyle.setFillPattern(XSSFCellStyle.java:1002)
У меня есть Poiji 4.1.1 в пути к классам:
Код: Выделить всё
com.github.ozlerhakan
poiji
4.1.1
compile
Ограничение
Я знаю, что чистое решение — добавить исключения POI в зависимость Poiji:
Код: Выделить всё
org.apache.poi
poi
org.apache.poi
poi-ooxml
Вопрос
Есть ли способ применить собственный цвет RGB (
Код: Выделить всё
#00458DЛюбая помощь приветствуется.>