/poi-tl-ext

Extensions for poi-tl

Primary LanguageJavaApache License 2.0Apache-2.0

poi-tl-ext

GitHub JDK

Maven

poi 4.x poi-tl 1.11 以前的版本

<dependency>
    <groupId>io.github.draco1023</groupId>
    <artifactId>poi-tl-ext</artifactId>
    <version>0.4.2</version>
</dependency>

poi 5.x poi-tl 1.11.0+

<dependency>
    <groupId>io.github.draco1023</groupId>
    <artifactId>poi-tl-ext</artifactId>
    <version>0.4.2-poi5</version>
</dependency>

扩展功能

poi-tl 的基础上扩展了如下功能:

  • 支持渲染HTML字符串,插件HtmlRenderPolicy的使用方法如下(也可参考文档

    HtmlRenderPolicy htmlRenderPolicy = new HtmlRenderPolicy();
    Configure configure = Configure.builder()
            .bind("key", htmlRenderPolicy)
            .build();
    Map<String, Object> data = new HashMap<>();
    data.put("key", "<p>Hello <b>world</b>!</p>");
    XWPFTemplate.compile("input.docx", configure).render(data).writeToFile("output.docx");

    HtmlRenderPolicy可以通过HtmlRenderConfig进行如下设置:

    • globalFont 全局默认字体(用于归一化处理,而不是用于样式兜底)
    • globalFontSize 全局默认字号(用于归一化处理,而不是用于样式兜底)
    • showDefaultTableBorderInTableCell 是否显示嵌套表格的边框(poi生成嵌套表格时默认不显示边框,见#12)
    • numberingIndent 多级列表项缩进长度,默认值360
    • numberingSpacing 列表编号与内容之间的间隔类型,STLevelSuffix.NOTHING/STLevelSuffix.SPACE/STLevelSuffix.TAB

    目前实现了富文本编辑器可实现的大部分效果,后续继续改进...

  • 支持渲染MathML字符串,插件类为MathMLRenderPolicy

  • 支持渲染LaTeX字符串,插件类为LaTeXRenderPolicy