通过Java代码生成Excel文件,使用autoFitRows命令自适应行高,文件模板的单元格自动换行 生成的文件内容行高不足,差一点
单元格内容没有换行符,内容自动换行
请问各位,怎么让单元格显示所有内容
无法上传图片,文字描述如下:
JAVA代码的自适应行高方法为:
Worksheet st = (Workbook)newwb.getWorksheets().get(0);
st.getAllocatedRange().autoFit.Rows();
excel文件通过wps表格打开
单元格内容自动换行,单元格内容只有3行时可全部显示,单元格行高自适应;
单元格内容显示12行时,最后一行只显示一半,不能全部显示
怀疑:
自适应行高的对文字的大小判断有误,比单元格的文字高度小,当文字的行数过多时,单元格计算的行高不足以显示全部内容
因文字大小是业务要求,不能修改,如果是自适应计算中的文字高度问题,请问怎么修改自适应功能的文字高度参数
你是用什么工具操作excel?
在设置自适应行高后,有没有保存为.et或者.ett格式的(也就是WPS表格)的文件,然后打开?我测了用了worksheet.getAllocatedRange().autoFitRows();方法设置自适应,然后保存为.et格式的工作簿,打开后显示的单元格自适应效果是对的呢。
测试代码:
import com.spire.xls.*;
public class AutoFit {
public static void main(String[] args) {
//创建Workbook对象
Workbook workbook = new Workbook();
workbook.loadFromFile("test.xlsx");
//获取第一个工作表
Worksheet worksheet = workbook.getWorksheets().get(0);
//worksheet.getAllocatedRange().get("C4").autoFitRows();
worksheet.getAllocatedRange().autoFitRows();
workbook.saveToFile("autoFitRow.et",FileFormat.ET);
workbook.dispose();
}
}
测试文档及效果图:
将autFitRows方法换成sheet.getAllocatedRange().autoFitRows();