问题描述
我尝试使用DocumentBuilder和insertHtml用aspose单词java(v.20.6)填充文档。 但是,当我插入空的段落时,它们在单词中将被忽略。 不能用insertHtml插入空的段落吗?
示例:
Document doc = new Document("tmp.docx");
DocumentBuilder builder = new DocumentBuilder(doc);
builder.moveToBookmark("Text",false,false);
builder.insertHtml("<p>Before empty paragraph</p><p></p><p>After empty paragraph</p>",true);
doc.save("C:/TMP/doc.docx");
解决方法
Aspose.Words忽略HTML中的空段落以模仿MS Word和浏览器的行为。如果您在任何浏览器中打开以下HTML,则不会看到空白的段落。
<html>
<body>
<p>Before empty paragraph</p><p></p><p>After empty paragraph</p>
</body>
</html>
此外,如果您在MS Word中打开它,您也会注意到也没有空的段落。
因此,有两个选项可以保留一个空的段落,或者将不间断的空格放入HTML字符串的空段落中
builder.insertHtml("<p>Before empty paragraph</p><p> </p><p>After empty paragraph</p>",true);
或使用DocumentBuilder.writeln方法
builder.insertHtml("<p>Before empty paragraph</p>",true);
builder.writeln();
builder.insertHtml("<p>After empty paragraph</p>",true);