poi4版本处理word里表格中的文字换行问题和设置字体样式


    开发中遇到生成word文档的需求,其中里面存在表格,发现表格中一旦存在换行生成的模板就出现各种问题,反正就是出不来想要的结果。网上找了一些方法基本都不好用,最后找到一个靠谱点的方法

XWPFParagraph pIO =cell.addParagraph();
XWPFRun rIO = pIO.createRun();
rIO.addBreak();//增加一个换行。

 这个addBreak()增加换行也不能直接完美解决换行的问题,还需要进一步变通一下。将需要换行的地方搞一个\n,让后split("\\\\n"),遇到\n就替换成addBreak();这样就实现了表格中的换行符。 注:\n只是一个特殊标识符可以用任何字符替代。

XWPFParagraph pIO =cell.addParagraph();
XWPFRun rIO = pIO.createRun();
rIO.setFontFamily("楷体");
rIO.setFontSize(9);
rIO.setText(tempText.trim());
if (tempText.contains("\\n")) {
   String[] lines = tempText.split("\\\\n");
   rIO.setText(lines[0], 0);
   for(int m=1;m<lines.length;m++){
        // add break and insert new text
        rIO.addBreak();
        rIO.setText(lines[m]);
    }
} else {
   rIO.setText(tempText, 0);
}

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM