欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

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

程序员文章站 2022-03-28 23:27:47
...
在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();
    }
}

 

 (本文完)