我创建了非常简单的测试,其中包含2列的表。一列包含没有空格的长行和第二列小行。在doc中,我看到第一行中的那行被包装
我使用
将此文档转换为PDF结果是相同的 - 第一列的行被写入第二列
答案 0 :(得分:1)
不是解决方案,但由于这是一个XSL FO / FOP问题,为了深入了解该问题,请参阅:
XSL-FO: Force Wrap on Table Entries
XSL-FO fop. Long text flows into adjacent cells/block, obscuring stuff there
答案 1 :(得分:0)
以下内容并不漂亮,但它通过在每个字符后插入零宽度空格来实现包装。如果您愿意,可以在每个x
个字符处插入它们,或者使用其他一些启发式方法来选择更好的休息位置。
String zeroWidthSpace = Character.toString((char) 8203);
textToInsert = textToInsert(("(.)"), "$1" + zeroWidthSpace);
td.getContent().add(mdp.createParagraphOfText(textToInsert));