在excel中,可通过设置自适应行高或列宽自动排版,是一种比较常用的快速调整表格整体布局的方法。设置自适应时,可考虑2种情况:
1.固定数据,设置行高、列宽自适应数据(常见的设置自适应方法)
2.固定列宽,缩小数据字体大小适应列宽
本文将通过java程序来介绍具体的自适应设置方法。
工具:Free Spire.XLS for Java (免费版)
注:可通过官网下载包,并解压将lib文件夹下的jar文件导入java程序;或者通过maven仓库下载并导入。
参考如下导入效果:
Java 代码示例
1. 固定数据,设置行高、列宽自适应数据
(此自适应方法可对指定单元格数据或者整个工作表来设置)
import com.spire.xls.*;
public class AutoFit {
public static void main(String[] args) {
//创建一个Workbook类的对象,并加载测试文档
Workbook wb = new Workbook();
wb.loadFromFile("sample.xlsx");
//获取工作表
Worksheet sheet = wb.getWorksheets().get(0);
//设置行高、列宽为自适应(应用于指定数据范围)
sheet.getAllocatedRange().get("A1:E14").autoFitRows();
sheet.getAllocatedRange().get("A1:E14").autoFitColumns();
/*//设置行高、列宽为自适应(应用于整个工作表)
sheet.getAllocatedRange().autoFitRows();
sheet.getAllocatedRange().autoFitColumns();*/
//保存文档
wb.saveToFile("result.xlsx", FileFormat.Version2010);
wb.dispose();
}
}
自适应设置效果:
2. 缩小数据字体大小适应列宽
import com.spire.xls.*;
public class ShrinkToFit {
public static void main(String[] args) {
Workbook wb = new Workbook();
wb.loadFromFile("test.xlsx");
//获取第一张工作表
Worksheet sheet = wb.getWorksheets().get(0);
//指定需要自动缩小字体的单元格范围
CellRange cell = (CellRange) sheet.get("A1");
//设置ShrinkToFit为true,缩小数据以适应单元格
cell.getStyle().setShrinkToFit(true);
//保存文档
wb.saveToFile("ShrinkTextToFitCell.xlsx", ExcelVersion.Version2013);
wb.dispose();
}
}
文本缩小效果:
(本文完)