3
触发场景描述 当存在如下动态header的时候,每一列的列宽默认取title cell的列宽,因为现在是按header的列宽设置data cell的列宽,合并了第一行的header导致后续列宽失效。我认为应该取没有进行过合并的head cell的列宽,而不是默认取一个head cell的列宽。
触发场景描述 当存在如下动态header的时候,每一列的列宽默认取title cell的列宽,因为现在是按header的列宽设置data cell的列宽,合并了第一行的header导致后续列宽失效。我认为应该取没有进行过合并的head cell的列宽,而不是默认取一个head cell的列宽。
请详细提供代码 你是怎么设置列宽的
@zhuangjiaju
EasyExcel.write(response.getOutputStream())
.head(bean.getHeader())
.sheet(bean.getName())
.registerWriteHandler(new LongestMatchColumnWidthStyleStrategy())
.doWrite(bean.getData());
我看现在的代码是拿第一行head 根据index缓存列宽,如果第一行head做过合并操作,那么缓存起来的列宽将是错误的。
这个想实现比较复杂 可以自己基于 LongestMatchColumnWidthStyleStrategy
实现