所以我想使用Java和sbraconnier的派生式JODConverter将.docx文件转换为.pdf文件,因为其他所有库均未按预期工作。
到目前为止,即使JODConverter只转换原始15页文档中的一页,我仍然得到最好的结果。这是我的源代码:
private void writePdf() {
try {
OfficeManager officeManager = LocalOfficeManager.builder()
.install()
.officeHome("C:\\Program Files\\LibreOffice")
.portNumbers(2372)
.build();
File inputFile = new File("src\\main\\resources\\document.docx");
File outputFile = new File("src\\main\\resources\\document.pdf");
try {
officeManager.start();
JodConverter
.convert(inputFile)
.to(outputFile)
.execute();
}
finally {
OfficeUtils.stopQuietly(officeManager);
}
}
catch (Exception e) {
logger.error("Something went wrong.", e);
}
}
没有错误,除了只有一页以外,其他所有内容看起来都很好:c预先感谢您的帮助!
编辑:事实证明,问题出在生成的文档中,该文档用于转换为PDF。由于我有一个重复的页面,该页面填充有在前模板和后模板之间添加的不同信息,因此将其合并到单个docx文件中,然后将其转换,问题就出在多次添加单个重复页面上。我会尝试自己看看。