Word 转 PDF 多了一页空白页

您好,我当前使用的Aspose-word 版本是23.6,我用如下代码将Word转换成PDF时,转换后的PDF多了一页空白页,请问该如何解决这个问题?
代码如下:

            String sourcePath = "/Users/yassen/Desktop/test/test3.docx";
            LoadOptions opt = new LoadOptions();
            opt.getLanguagePreferences().setDefaultEditingLanguage(EditingLanguage.CHINESE_PRC);
            Document doc = new Document(sourcePath, opt);
            doc.save("/Users/yassen/Desktop/test/result3.pdf");

转换前的Word文档:
test3.docx (23.1 KB)

转换后的PDF文档:
result3.pdf (105.2 KB)

@songyassen 遗憾的是,这个问题没有简单的解决办法。感谢您报告此问题。 我们已经在我们的内部问题跟踪系统中打开了以下新工单,并将根据 免费支持政策 中提到的条款提供它们的修复:

Issue ID(s): WORDSNET-27306

如果您需要优先支持以及直接联系我们的付费支持管理团队,您可以获得 付费支持服务

您好请问下,这个版本中,在Word转PDF的时候,有没有什么方法可以把转成的PDF的页边距稍微调大一点,或者把PDF的内容压缩的紧凑一点,以此来达到不换页的目的呢,因为我在测试的过程中发现,如果把Word的内容删除掉一行,就不会出现换页了。

@songyassen 您可以使用以下代码:

Document doc = new Document("input.docx");

doc.getFirstSection().getBody().getLastParagraph().getParagraphFormat().setLineSpacing(1.0);

doc.save("output.pdf");

我也存在转换pdf时串行的问题,我在wps中定位到最后一行,然后设置该行的段前间距为0,达到了效果;请问如何获取word文档中每一页中的最后一行呢?

@craspose 为此,您可以使用 LayoutCollector

Document doc = new Document("input.docx");

LayoutCollector layoutCollector = new LayoutCollector(doc);
for (int pageIndex = 0; pageIndex < doc.getPageCount(); pageIndex++) {
    Paragraph lastParagraph = null;

    // 遍历文档中的所有段落。
    for (Paragraph paragraph : (Iterable<Paragraph>) doc.getChildNodes(NodeType.PARAGRAPH, true)) {
        // 检查段落是否在当前页上。
        if (layoutCollector.getStartPageIndex(paragraph) == pageIndex + 1) {
            lastParagraph = paragraph;
        }
    }

    // 打印本页最后一段。
    if (lastParagraph != null) {
        System.out.println("Last paragraph on page " + (pageIndex + 1) + ": " + lastParagraph.getText());
    }
}