Java 设置Excel自适应行高、列宽

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

文本缩小效果:

 

(本文完)

发布了236 篇原创文章 · 获赞 92 · 访问量 51万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章