在Manual上,他们展示了如何使用 HSSF 和 XSSF 设置自定义颜色。我们的应用程序需要处理这两种格式。是否可以分配贴在 SS 模型上的自定义颜色?
短代码应该澄清我的问题:
final Workbook wb = new XSSFWorkbook();
final Sheet sheet = wb.createSheet();
final Row row = sheet.createRow(0);
final Cell cell = row.createCell(0);
// apply SS style here:
final CellStyle style = wb.createCellStyle();
// This one is not supported:
// style.setFillForegroundColor(128, 0, 128);
在 HSSF 模型中,我们使用了Color Palettes,但SS模型不支持。
此代码显示了我们如何将HSSFColor.GOLD
更改为自定义颜色。
final HSSFPalette palette = ((HSSFWorkbook) workbook).getCustomPalette();
palette.setColorAtIndex(HSSFColor.GOLD.index, (byte) 253, (byte) 205, (byte) 111);
使用SS模型,引入了 IndexColors ,但这些是不可改变的。