在Excel表格中,设置单元格字体样式时,可以对单元格内的所有字符应用同一样式,即获取指定单元,应用样式即可;另外也可以对单元格内的不同字符内容应用不同字体样式,即获取单元格中的字符位置,应用样式;本文将通过Java代码示例介绍具体实现方法。
使用工具:Free Spire.XLS for Java (免费版)
注:可通过官网 下载 包,解压,并将lib文件夹中的Spire.Xls.jar文件导入Java程序;或通过maven仓库 导入 。导入效果如下:
Java 代码示例
import com.spire.xls.*; import java.awt.*; public class SetMultipleStylesInOneCell { public static void main(String[] args) { //加载Excel文档 Workbook wb = new Workbook(); wb.loadFromFile("test.xlsx"); //获取指定工作表 Worksheet sheet = wb.getWorksheets().get(0); //获取单元格C3,对单元格中所有字符应用样式 CellRange cell1 = sheet.getCellRange("C3"); cell1.getCellStyle().getFont().setFontName("行楷"); cell1.getCellStyle().getFont().setColor(new Color(0,128,0)); cell1.getCellStyle().getFont().setUnderline(FontUnderlineType.Double); cell1.getCellStyle().getFont().setSize(13); //获取单元格C5 CellRange cell2 = sheet.getCellRange("C5"); //创建字体样式font1和font2 ExcelFont font1 = wb.createFont(); font1.setColor(new Color(30,144,255)); font1.setFontName("黑体"); font1.setSize(14); font1.isItalic(true); ExcelFont font2 = wb.createFont(); font2.setColor(new Color(220,20,60)); font2.setFontName("楷体"); font2.setSize(17); font2.isBold(true); //调用方法设置字体样式到单元格中的指定字符 RichText richText = cell2.getRichText(); richText.setFont(0,7,font1); richText.setFont(9,17,font2); //保存文档 wb.saveToFile("Result.xlsx"); wb.dispose(); } }
字体样式应用结果:
(本文完)