【问题标题】:Remove blank page in docx4j删除 docx4j 中的空白页
【发布时间】: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

标签: java docx4j


【解决方案1】:

我遇到了同样的问题,并且能够通过使用分节符而不是分页符来避免空白页

单击下面的选项以查看所有分页符/分节符

用分节符替换出现空白页的分页符

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-04-10
    • 1970-01-01
    • 2022-10-31
    • 2017-12-27
    • 2019-10-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多