需求是导出Excel时,实现对单元格内内容实现多种字体样式。参考poi官方文档后使用了富文本编辑器对象来实现。
// HSSF实现
HSSFFont font1 = wb.createFont();
font1.setBold(true);
HSSFFont font2 = wb.createFont();
font2.setBold(false);
HSSFCell hssfCell = row.createCell(idx);
// 创建富文本对象并根据下标指定不同的字体格式
HSSFRichTextString richString = new HSSFRichTextString( "Hello, World!" );
richString.applyFont( 0, 6, font1 );
richString.applyFont( 6, 13, font2 );
hssfCell.setCellValue( richString );
//-----------------------------------分割线-----------------------------------------
// XSSF实现
XSSFFont font1 = wb.createFont();
font1.setBold(true);
font1.setColor(new XSSFColor(new java.awt.Color(255, 0, 0)));
XSSFFont font2 = wb.createFont();
font2.setItalic(true);
font2.setUnderline(XSSFFont.U_DOUBLE);
font2.setColor(new XSSFColor(new java.awt.Color(0, 255, 0)));
XSSFFont font3 = wb.createFont();
font3.setColor(new XSSFColor(new java.awt.Color(0, 0, 255)));
XSSFRichTextString