NPOI Word 换行

NPOI 版本2.6.0

需求描述:多行文本换行问题,如下图模板,其中$质量标准$,会被多行文本替换,不管是用\r\n、AddCarriageReturn、AddBreak()等各种方法,要么不好使;要么word转pdf文件后,pdf换行好用,但是word不是换行;
开发就要做到表里如一,word与pdf一致,翻看官方示例后,尝试了示例中的各种换行方式,最后发现了AddBreak(BreakClear.ALL)可以实现表里如一,也可以尝试下AddBreak(BreakType.TEXTWRAPPING)。

补充:如果当前行的文字太少,注意这个AddBreak(BreakClear.ALL)有时候会出现一行文字平铺一行的情况,改用AddBreak(BreakType.TEXTWRAPPING)即可。

核心代码

string[] strs1 = { "aa", "bb", "cc" };
//para为XWPFParagraph
if (strs.Length > 1)
{
    para.ReplaceText("$质量标准$", strs[0]);
    for (int i = 1; i < strs.Length; i++)
    {
        para.Runs[0].AddBreak(BreakClear.ALL);
        para.Runs[0].AppendText(strs[i]);
    }
}
else
{
    para.ReplaceText("$质量标准$", string1);
}

最终效果

 

posted @   0Behavior  阅读(733)  评论(1编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
点击右上角即可分享
微信分享提示