转载

Java 在Excel单元格中应用一种/多种字体样式

在Excel表格中,设置单元格字体样式时,可以对单元格内的所有字符应用同一样式,即获取指定单元,应用样式即可;另外也可以对单元格内的不同字符内容应用不同字体样式,即获取单元格中的字符位置,应用样式;本文将通过Java代码示例介绍具体实现方法。

使用工具:Free Spire.XLS for Java (免费版)

注:可通过官网 下载 包,解压,并将lib文件夹中的Spire.Xls.jar文件导入Java程序;或通过maven仓库 导入 。导入效果如下:

Java 在Excel单元格中应用一种/多种字体样式

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();  
 }  
}

字体样式应用结果:

Java 在Excel单元格中应用一种/多种字体样式

(本文完)

原文  https://segmentfault.com/a/1190000021387420
正文到此结束
Loading...