我正在研究一种能够自动将Word文档转换为pdf的软件。是否有任何支持Java的库可以实现这一点?它可以是免费的也可以是商业的,无所谓。
由于
答案 0 :(得分:0)
我没有使用它,但你可以试试JODConverter
答案 1 :(得分:0)
StackOverflow上的大多数人都推荐Apache POI,它可以将大多数Microsoft Office格式转换为PDF,反之亦然。它是开源的。
答案 2 :(得分:0)
@BoffinbraiN,POI对帮助您将Office文档转换为PDF没有太大作用。
可以使用Apache FOP执行此操作,但是如果要使用FOP,首先需要将Office文档转换为XSL-FO。
在这里,docx4j可以帮助生成XSL-FO,并使用FOP 1.0来创建PDF。
假设OutputStream os和一个加载的WordprocessingMLPackage wordMLPackage:
PdfConversion c = new org.docx4j.convert.out.pdf.viaXSLFO.Conversion(wordMLPackage);
c.output(os);
进一步查看docx4j示例CreatePdf.java。
答案 3 :(得分:0)
有几种可用的开源解决方案,但没有一种完全保留源文档的格式。
让Muhimbi PDF Converter Services看一看。它作为可扩展且强大的Windows服务安装在您的环境中,专门设计用于基于服务器的应用程序,如Java和ASP.NET。
它附带一个friendly web services based interface,允许它从大多数现代环境(如Java和.NET)中使用。它支持所有常见文件格式以及一些不常见的文件格式。 Watermarking和PDF安全性也包括在内。
免责声明,我已经使用过该产品,因此通常的免责声明适用。话虽如此,但效果很好。
答案 4 :(得分:0)
docx2pdf
是可以在macOS和Windows上实现此功能的命令行工具和python库。从Java,您应该能够使用命令行来调用该工具。在内部,此python库从命令行调用AppleScript,以使其在macOS上运行。
https://github.com/AlJohri/docx2pdf/
这种方法的好处是它使用Word自己的API来创建像素完美转换。
免责声明:我写了这个工具。