I would like to capture the font of a cell field in excel in Java. I am using Apache POI. If possible, I would like to capture font-color, font-family, font-weight, font-size, etc.
How can I achieve this?
Edited based on comment
You can refer to XSSFCellStyle, from it you can get the XSSFFont. Using that you can get XSSFColor, getFontName() or getFamily() and getFontHeight() or getFontHeightInPoints().
Based on example cell that I've used:
XSSFCellStyle cs = cell.getCellStyle();
XSSFFont font = cs.getFont();
//Getting Font color
XSSFColor color = font.getXSSFColor();
System.out.println("Font color : " + color.getARGBHex());
//==> FF00B0F0
//Getting Font name
System.out.println("Font name : " + font.getFontName());
//==> Arial
//Getting Font family name
FontFamily family = FontFamily.valueOf(((XSSFFont) font).getFamily());
System.out.println("Font family : " + family);
//==> SWISS
//Getting Font family int
System.out.println("Font family in int : " + font.getFamily());
//==> 2
//Getting Font height
System.out.println("Font FontHeight : " + font.getFontHeight());
//==> 280
//Getting Font height in point
System.out.println("Font height in point : " + font.getFontHeightInPoints());
//==> 14
//Getting Font bold weight
System.out.println("Font BoldWeight : " + font.getBoldweight());
//==> 700
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With