HSSFWorkbook hwb = new HSSFWorkbook(); HSSFPalette palette = hwb.getCustomPalette(); // get the color which most closely matches the color you want to use HSSFColor myColor = palette.findSimilarColor(255, 0, 0); // get the palette index of that color short palIndex = myColor.getIndex(); // code to get the style for the cell goes here style.setFillForegroundColor(palIndex);
@Override public HSSFColor getTopBorderColorColor() { return workbook.getCustomPalette().getColor( borderFormatting.getTopBorderColor() ); }
@Override public HSSFColor getLeftBorderColorColor() { return workbook.getCustomPalette().getColor( borderFormatting.getLeftBorderColor() ); }
/** * get the color value for the font */ public HSSFColor getHSSFColor(HSSFWorkbook wb) { HSSFPalette pallette = wb.getCustomPalette(); return pallette.getColor( getColor() ); }
public HSSFColor getFontColor() { return workbook.getCustomPalette().getColor( getFontColorIndex() ); }
@Override public HSSFColor getBottomBorderColorColor() { return workbook.getCustomPalette().getColor( borderFormatting.getBottomBorderColor() ); }
@Override public HSSFColor getDiagonalBorderColorColor() { return workbook.getCustomPalette().getColor( borderFormatting.getDiagonalBorderColor() ); }
@Override public HSSFColor getRightBorderColorColor() { return workbook.getCustomPalette().getColor( borderFormatting.getRightBorderColor() ); }
public HSSFColor getFillBackgroundColorColor() { return workbook.getCustomPalette().getColor(getFillBackgroundColor()); }
public HSSFColor getFillForegroundColorColor() { return workbook.getCustomPalette().getColor(getFillForegroundColor()); }
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; }
private HSSFFont matchFont( Font matchFont ) { HSSFColor hssfColor = workbook.getCustomPalette() .findColor((byte)foreground.getRed(), (byte)foreground.getGreen(), (byte)foreground.getBlue()); if (hssfColor == null) hssfColor = workbook.getCustomPalette().findSimilarColor((byte)foreground.getRed(), (byte)foreground.getGreen(), (byte)foreground.getBlue()); boolean bold = (matchFont.getStyle() & Font.BOLD) != 0; boolean italic = (matchFont.getStyle() & Font.ITALIC) != 0; HSSFFont hssfFont = workbook.findFont(bold, hssfColor.getIndex(), (short)(matchFont.getSize() * 20), matchFont.getName(), italic, false, (short)0, (byte)0); if (hssfFont == null) { hssfFont = workbook.createFont(); hssfFont.setBold(bold); hssfFont.setColor(hssfColor.getIndex()); hssfFont.setFontHeight((short)(matchFont.getSize() * 20)); hssfFont.setFontName(matchFont.getName()); hssfFont.setItalic(italic); hssfFont.setStrikeout(false); hssfFont.setTypeOffset((short) 0); hssfFont.setUnderline((byte) 0); } return hssfFont; }
String cellFontColor = options.getCellFontColor(); if (cellFontColor != null) { HSSFPalette palette = ((HSSFWorkbook) wb).getCustomPalette(); Color color = Color.decode(cellFontColor); HSSFColor cellColor = palette.findSimilarColor(color.getRed(), color.getGreen(), color.getBlue());
HSSFPalette palette = ((HSSFWorkbook) wb).getCustomPalette(); Color color = null;
private HSSFColor buildHSSFColor(HSSFWorkbook wb,String colorStr){ String[] color=colorStr.split(","); HSSFPalette palette=wb.getCustomPalette(); byte r=BigInteger.valueOf(Integer.valueOf(color[0])).byteValue(); byte g=BigInteger.valueOf(Integer.valueOf(color[1])).byteValue(); byte b=BigInteger.valueOf(Integer.valueOf(color[2])).byteValue(); HSSFColor targetColor=palette.findColor(r,g,b); if(targetColor==null){ palette.setColorAtIndex(HSSFColorPredefined.LAVENDER.getIndex(), r, g,b); targetColor=palette.getColor(HSSFColorPredefined.LAVENDER.getIndex()); } return targetColor; }
HSSFPalette palette = wb.getCustomPalette();
public HSSFHtmlHelper(HSSFWorkbook wb) { this.wb = wb; // If there is no custom palette, then this creates a new one that is // a copy of the default colors = wb.getCustomPalette(); }
/** * get the color value for the font */ public HSSFColor getHSSFColor(HSSFWorkbook wb) { HSSFPalette pallette = wb.getCustomPalette(); return pallette.getColor( getColor() ); }
@Override public HSSFColor getLeftBorderColorColor() { return workbook.getCustomPalette().getColor( borderFormatting.getLeftBorderColor() ); }
@Override public HSSFColor getRightBorderColorColor() { return workbook.getCustomPalette().getColor( borderFormatting.getRightBorderColor() ); }