Java使用Openoffice将word、ppt转换为PDF

项目中要实现WORD的文件预览功能,我们可以通过将WORD转换成PDF或者HTML,然后通过浏览器预览。

OpenOffice

OpenOffice.org 是一套跨平台的办公室软件套件,能在 Windows、Linux、MacOS X (X11)、和 Solaris 等操作系统上执行。它与各个主要的办公室软件套件兼容。OpenOffice.org 是自由软件,任何人都可以免费下载、使用、及推广它。

下载地址

http://www.openoffice.org/

JodConverter

jodconverter-2.2.2.zip 下载地址:

http://sourceforge.net/projects/jodconverter/files/JODConverter/

Word转换

启动OpenOffice的服务

进入openoffice安装目录,通过cmd启动一个soffice服务,启动的命令是soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;"

如果觉得后台运行OpenOffice服务比较麻烦,可以通过运行代码

public class PDFDemo {
   

    public static boolean officeToPDF(String sourceFile, String destFile) {
   
        try {
   

            File inputFile = new File(sourceFile);
            if (!inputFile.exists()) {
   
                // 找不到源文件, 则返回false
                return false;
            }//需要获取资料的朋友请加Q君样:290194256*
            // 如果目标路径不存在, 则新建该路径
            File outputFile = new File(destFile);
            if (!outputFile.getParentFile().exists()) {
   
                outputFile.getParentFile().mkdirs();
            }
            //如果目标文件存在,则删除
            if (outputFile.exists()) {
   
                outputFile.delete();
            }
            DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm");
            OpenOfficeConnection connection = new SocketOpenOfficeConnection("127.0.0.1", 8100);
            connection.connect();
            //用于测试openOffice连接时间
            System.out.println("连接时间:" + df.format(new Date()));
            DocumentConverter converter = new StreamOpenOfficeDocumentConverter(
                    connection)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
在Spring Boot中使用OpenOfficeWord转换PDF可以通过以下步骤实现: 1. 首先,确保已经安装了OpenOffice软件,并且OpenOffice服务已经启动。 2. 在Spring Boot项目的pom.xml文件中添加对OpenOffice JODConverter的依赖: ```xml <dependency> <groupId>org.jodconverter</groupId> <artifactId>jodconverter-spring-boot-starter</artifactId> <version>4.2.2</version> </dependency> ``` 3. 创建一个Controller类,用于接收Word文件并将其转换PDF。可以使用`JodConverter`类来实现转换功能。以下是一个简单的示例: ```java import org.jodconverter.DocumentConverter; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.multipart.MultipartFile; @RestController public class ConvertController { @Autowired private DocumentConverter documentConverter; @PostMapping("/convert") public String convertToPdf(@RequestParam("file") MultipartFile file) { try { // 将上传的Word文件转换PDF File inputFile = File.createTempFile("input", ".docx"); file.transferTo(inputFile); File outputFile = File.createTempFile("output", ".pdf"); documentConverter.convert(inputFile).to(outputFile).execute(); // 返回转换后的PDF文件路径 return outputFile.getAbsolutePath(); } catch (Exception e) { e.printStackTrace(); return "转换失败"; } } } ``` 4. 运行Spring Boot应用程序,并使用POST请求将Word文件上传到`/convert`接口。接口将返回转换后的PDF文件路径。 这样,你就可以使用Spring Boot和OpenOfficeWord文件转换PDF了。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值