如何使用 Java 将 PDF 转换为 Word - 免费 PDF 转换器 API

在本文中,您将学习如何使用 ComPDFKit 的 PDF 转Word API在 Java 应用程序中将 PDF 转换为 Word 。使用我们的 API,您每月最多可以免费转换1000 个 PDF 文件。您需要做的就是创建一个免费帐户来访问您的 API 密钥。      

 

ComPDFKit API

文档转换只是我们 30 多种PDF API 工具之一 。您可以将我们的转换工具与其他工具结合使用,以创建复杂的文档处理工作流程。您将能够 将各种文件格式转换 为 PDF,以及:

 

         - 合并、拆分、插入、提取和删除特定的 PDF 页面

         - OCR、水印或压缩 PDF

         - 比较文档(包括内容比较和叠加比较)

 

 

请求工作流程

ComPDFKit API 的处理流程非常简单,由四个基本请求指令组成:创建任务、上传文件、执行任务、下载结果文件。通过这四个请求,您可以选择相应的 PDF 工具来处理您的文件,并获取结果文件的下载链接。

 

ComPDFKit API 请求工作流程

 

 

如何将 PDF 转换为 Word 

ComPDFKit 支持通过简单的 API 请求将 PDF 准确地转换为 Word,保留文本、页面布局、列、格式、图形等。它还支持识别和提取 PDF 文件中的突出显示、下划线、波浪线和删除线,并在将其转换为 Word 后保留这些注释功能。此外,即使您的 PDF 包含超链接,它也能够在转换后保持链接正常工作。

 

访问 PDF 到 Word API 工具并处理 PDF 转换的步骤如下: 

 

步骤 1 — 在 ComPDFKit 上创建免费帐户

访问我们的 网站,您将看到下面的页面,提示您创建免费帐户。

 

注册 ComPDFKit API

 

创建帐户后,您将看到以下页面,其中显示了您的计划详细信息概述。

 

ComPDFKit API 的仪表板

 

正如您在仪表板上看到的,您每月可以处理 1000 份文档,并且您将能够访问我们所有的 PDF API 工具。

 

第 2 步 - 获取用于身份验证的 API 密钥

验证电子邮件后,您可以从仪表板获取 API 密钥。在左侧菜单中,单击 API 密钥。您将看到以下页面,这是密钥的概述:

 

替代文本:获取用于身份验证的 API 密钥

 

现在您需要  将从控制台获取的publicKey 和 secretKey认证返回值 中的 public_key 和 secret_key替换 为 accessToken 。

 

import java.io.*;
import okhttp3.*;
public class main {
  public static void main(String []args) throws IOException{
    OkHttpClient client = new OkHttpClient().newBuilder()
      .build();
    MediaType mediaType = MediaType.parse("text/plain");
    RequestBody body = RequestBody.create(mediaType, "{\n    \"publicKey\": \"{{public_key}}\",\n    \"secretKey\": \"{{secret_key}}\"\n}");
    Request request = new Request.Builder()
      .url("https://api-server.compdf.com/server/v1/oauth/token")
      .method("POST", body)
      .build();
    Response response = client.newCall(request).execute();
  }
}

  

 

第 3 步 - 创建任务

 

需要替换  上一步获取到的 accessToken ,以及 需要显示错误信息的 语言类型,替换完成后会 在响应数据中获取到taskId 。

 

import java.io.*;
import okhttp3.*;
public class main {
  public static void main(String []args) throws IOException{
    OkHttpClient client = new OkHttpClient().newBuilder()
      .build();
    MediaType mediaType = MediaType.parse("text/plain");
    RequestBody body = RequestBody.create(mediaType, "");
    Request request = new Request.Builder()
      .url("https://api-server.compdf.com/server/v1/task/pdf/docx?language={{language}}")
      .method("GET", body)
      .addHeader("Authorization", "Bearer {{accessToken}}")
      .build();
    Response response = client.newCall(request).execute();
  }
}

  

第 4 步 - 上传文件

替换成你需要转换的文件,  上一步获取到的taskId , 你想要显示错误信息的  语言类型,以及 第一步获取到的accessToken 。

 

import java.io.*;
import okhttp3.*;
public class main {
  public static void main(String []args) throws IOException{
    OkHttpClient client = new OkHttpClient().newBuilder()
      .build();
    MediaType mediaType = MediaType.parse("text/plain");
    RequestBody body = new MultipartBody.Builder().setType(MultipartBody.FORM)
      .addFormDataPart("file","{{file}}",
 RequestBody.create(MediaType.parse("application/octet-stream"),
                                          new File("")))
      .addFormDataPart("taskId","{{taskId}}")
      .addFormDataPart("language","{{language}}")
      .addFormDataPart("password","")
      .addFormDataPart("parameter","{  \"isFlowLayout\": \"1\",  \"isContainImg\": \"1\"}")
      .build();
    Request request = new Request.Builder()
      .url("https://api-server.compdf.com/server/v1/file/upload")
      .method("POST", body)
      .addHeader("Authorization", "Bearer {{accessToken}}")
      .build();
    Response response = client.newCall(request).execute();
  }
}

  

 

第 5 步 - 处理文件

替换掉  你从Create任务中获取到的 taskId ,以及 第一步获取到的 accessToken ,替换掉 你想要显示错误信息的语言类型。

 

import java.io.*;
import okhttp3.*;
public class main {
 public static void main(String []args) throws IOException{
   OkHttpClient client = new OkHttpClient().newBuilder()
     .build();
   MediaType mediaType = MediaType.parse("text/plain");
   RequestBody body = RequestBody.create(mediaType, "");
   Request request = new Request.Builder()
     .url("https://api-server.compdf.com/server/v1/execute/start?taskId={{taskId}}&language={{language}}")
     .method("GET", body)
     .addHeader("Authorization", "Bearer {{accessToken}}")
     .build();
   Response response = client.newCall(request).execute();
 }
}

  

 

第 6 步 - 获取任务信息

将 taskId替换 为您从“创建任务”步骤中获得的 taskId, 将access_token 替换为  您在第一步中获得的access_token 。

import java.io.*;
import okhttp3.*;
public class main {
  public static void main(String []args) throws IOException{
    OkHttpClient client = new OkHttpClient().newBuilder()
      .build();
    MediaType mediaType = MediaType.parse("text/plain");
    RequestBody body = RequestBody.create(mediaType, "");
    Request request = new Request.Builder()
      .url("https://api-server.compdf.com/server/v1/task/taskInfo?taskId={{taskId}}")
      .method("GET", body)
      .addHeader("Authorization", "Bearer {{accessToken}}")
      .build();
    Response response = client.newCall(request).execute();
  }
}

  

结论

在本文中,您学习了如何使用我们的 Java PDF 转 Word API 轻松无缝地将 PDF 文件转换为适用于您的应用程序的 Word 文件。


您可以将所有这些 PDF 功能集成到您的应用程序或系统中。使用相同的 API 令牌,您还可以执行其他操作,例如拆分或合并 PDF、添加水印、使用 OCR 和 AI 表格识别等。要开始免费试用,请 在此处注册 。

posted @ 2024-08-13 15:08  ComPDFKit  阅读(152)  评论(0编辑  收藏  举报