我在Apache POI
中爲XSSFWorkbook
設置自定義字體顏色時遇到了一些問題。當我這樣做:在Apache POI中爲XSSFWorkbook設置自定義字體顏色
yellow = workbook.createCellStyle();
Font whiteFont = workbook.createFont();
whiteFont.setColor(new XSSFColor(new Color(255, 255, 255)).getIndexed());
yellow.setFillForegroundColor(new XSSFColor(yellowRGB));
yellow.setFillPattern(XSSFCellStyle.SOLID_FOREGROUND);
yellow.setFont(whiteFont);
字體保持黑色,我不知道我在做什麼錯,但是。
但問題是我必須使用'getIndexed()',因爲'Font.setColor(short)'使用'short'作爲參數。此外,該方法根本不起作用,因爲我想也許它只是爲了白色,但是當我做了'whiteFont.setColor(new XSSFColor(new Color(234,17,156))。getIndexed());',它仍然保持黑色 – silverAndroid
getIndexed()存在一些問題,它可能是CTColor中的問題,這是XSSFColor在底層使用的問題。你使用的是什麼版本的POI?您仍然可以執行'whiteFont.setColor(HSSFColor.WHITE.index)'或'whiteFont.setColor(IndexedColors.WHITE.index);' –
工作簿的類型是什麼?什麼是您正在使用的Font類的完整類型? (哪個包?) –