gpt4 book ai didi

java - 如何在apache-poi中正确使用样式格式?

转载 作者:行者123 更新时间:2023-11-30 01:53:12 25 4
gpt4 key购买 nike

我正在尝试从我的java代码格式化我的excel生成的文件。这就是我的代码片段的样子:

...
Row row = sheet.createRow(rowNum++);
CellStyle textCellStyle = workbook.createCellStyle();
if (rowNum % 2 == 0) {
textCellStyle.setFillBackgroundColor(IndexedColors.GREEN.getIndex());
textCellStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND);
textCellStyle.setFont(textFonts1);
} else {
textCellStyle.setFont(textFonts2);
}

cell = row.createCell(0);
cell.setCellValue(student != null ? student.getIdNumber() : "");
cell.setCellStyle(textCellStyle);
...

我的期望是所有偶数行都将填充绿色背景,但生成的输出不同,而是生成黑色背景。我已经尝试过不同的颜色,甚至改变了我的填充图案,但我总是变黑。

我正在使用poi-3.17和poi-ooxml-3.17、excel 2007和java 1.6

enter image description here

最佳答案

您已将单元格的填充图案设置为 FillPatternType.SOLID_FOREGROUND。但你没有设置前景色。这意味着标准颜色(黑色)用作前景色。

尝试交换...

textCellStyle.setFillBackgroundColor(IndexedColors.GREEN.getIndex());

...与...

textCellStyle.setFillForegroundColor(IndexedColors.GREEN.getIndex());

...它应该按照您的预期呈现。单元格中的文本也应该可见。

当您想设置背景时,设置前景色和填充图案似乎违反直觉。

关于java - 如何在apache-poi中正确使用样式格式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55356644/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com