【发布时间】:2015-06-29 14:49:03
【问题描述】:
我需要使用 docx4j 有条件地在我生成的文档中删除/添加分页符。如果页面内容适合整个页面,那么我添加的分页符会创建一个空白页面。我正在使用以下代码来删除分页符:
List<Object> paragraphs = getAllElementFromObject(template.getMainDocumentPart(),P.class);
for(Object objP:paragraphs) {
P para = (P) objP;
/***/
List<Object> texts = getAllElementFromObject(para,Text.class);
List<Object> brs = getAllElementFromObject(para,Br.class);
if(brs.size()==1 && checkPageBreak((Br)brs.get(0)) && texts.size()== 0)
remove(template.getMainDocumentPart().getContent(), para);
}
但这也消除了有用的分页符。那么有什么方法可以动态检查页面内容高度吗?还是其他解决方案?
【问题讨论】:
-
好问题:所有这一切的诀窍是拥有一个“页面布局模型”,即构成内容页面的概念,以便您知道应该删除哪些分页符。这个答案可能有助于:stackoverflow.com/a/18476213/125750