guanquan.wang

Results 227 comments of guanquan.wang

感谢反馈,着急修复线上问题可以使用以下两种方式 方式1,拉取master并修改XMLDrawings第258行代码`new Dimension(ft[0][2] + 1, (short) (ft[0][0] + 1), ft[1][2] > 0 ? ft[1][2] + 1 : 0, (short) (ft[1][0] > 0 ? ft[1][0] + 1 : 0))`,推到私仓使用 方式2,自写义XMLDrawings并重写parseDrawings,从源码复制所有代码并修复Dimension,修改方式和上面一样,使用以下方式使用自定义XMLDrawings ```...

通过new Column("编码", "code").setWidth(20.0D).setWrapText(true).setFont(new Font("宋体",10)) 设置的样式均为body样式,目前只能通过setHeaderStyle设置表头样式 ``` Workbook workbook = new Workbook(); Styles styles = workbook.getStyles(); int headerStyle = styles.addFont(new Font("宋体",10)); // 折行 headerStyle = styles.modifyWrapText(headerStyle, true); // 水平居中 headerStyle =...

目前是这样的,你可以使用自定义注解来实现,EEC具有很高的自由度,自定义注解可以参考wiki[高级特性](https://github.com/wangguanquan/eec/wiki/%E9%AB%98%E7%BA%A7%E7%89%B9%E6%80%A7)

你可以先尝试做一下,直接复制高级特性里的代码然后将上面的代码添加到Column即可,自定义注解可以更通用 如果只是需要添加样式则可以简单实现大体如下 样式注解可以放在createColumn方法中,表头样式注解一般可以放在对象上不需要每个字段都添加 ``` // 添加body样式 @Override protected ListSheet.EntryColumn createColumn(AccessibleObject ao) { ListSheet.EntryColumn column = super.createColumn(ao); // 解析自定义Body样式注解 ExcelStyle bodyStyle = ao.getAnnotation(ExcelStyle.class); if (bodyStyle != null) { Font font =...

EEC默认表头行高20.5与Body相区隔这里没有考虑到wrapText后续改进。Sheet有一个方法setHeaderRowHeight可以用于设置高度,正数为实际行高,负数表示不设置自动计算`new ListSheet().setHeaderRowHeight(-1)`

优秀,这样写已经可以满足你现在的需求,不过可以更进一步通用化,可以包含所有Style样式不限制字体,折行和颜色两种样式。 还可以将行高放在buildHeaderStyle方法,wrapText=true时默认将HeaderRowHeight设为-1,这样在外部就不需要再次设置了

> > 优秀,这样写已经可以满足你现在的需求,不过可以更进一步通用化,可以包含所有Style样式不限制字体,折行和颜色两种样式。 还可以将行高放在buildHeaderStyle方法,wrapText=true时默认将HeaderRowHeight设为-1,这样在外部就不需要再次设置了 > > 谢谢大佬,行高设置我修改后生效了 > > ``` > if(headerStyle.wrapText()){ > headerRowHeight = -1; > } > ``` > > 不过没太懂 可以包含所有Style样式不限制字体,折行和颜色两种样式 这个是什么意思? 我看BodyExcelStyle只定义了字体,折行和颜色,所以建议写个更通用的,比如加上背景,边框,格式化,垂直对齐,水平对齐这几个样式,当然这个并不是必须的,根据业务需求来适配即可。