gpt4 book ai didi

java - POI 将单元格背景设置为自定义颜色

转载 作者:IT老高 更新时间:2023-10-28 20:57:57 27 4
gpt4 key购买 nike

我想为单元格的背景设置自定义颜色。
我使用 HSSFWorkbook(不能使用其他任何东西)。

HSSFPalette palette = aWorkBook.getCustomPalette();             
Color col = new Color(backgroundColor);
HSSFColor myColor = palette.addColor((byte) 10, (byte) 11, (byte) 12);

我收到此错误:java.lang.RuntimeException: 找不到免费颜色索引

最佳答案

您收到此错误是因为托盘已满。您需要做的是覆盖预设颜色。这是我正在使用的函数示例:

public HSSFColor setColor(HSSFWorkbook workbook, byte r,byte g, byte b){
HSSFPalette palette = workbook.getCustomPalette();
HSSFColor hssfColor = null;
try {
hssfColor= palette.findColor(r, g, b);
if (hssfColor == null ){
palette.setColorAtIndex(HSSFColor.LAVENDER.index, r, g,b);
hssfColor = palette.getColor(HSSFColor.LAVENDER.index);
}
} catch (Exception e) {
logger.error(e);
}

return hssfColor;
}

稍后将其用作背景颜色:

HSSFColor lightGray =  setColor(workbook,(byte) 0xE0, (byte)0xE0,(byte) 0xE0);
style2.setFillForegroundColor(lightGray.getIndex());
style2.setFillPattern(CellStyle.SOLID_FOREGROUND);

关于java - POI 将单元格背景设置为自定义颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10528516/

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