如何使用 REST API 在 Java 中将 PDF 转换为 Word 文档

使用 REST API 在 Java 中将 PDF 转换为 Word 文档

我们最近发布了一篇博客文章,概述了 PDF 到 C# .NET 中的 Word 以编程方式转换的过程。这篇博文将教我们如何使用 Java 库在线将 PDF 转换为 Word 而不会丢失格式。该库在您的 Java 应用程序中以编程方式快速将 PDF 文档转换为 Word 文档(.docx 或 .doc)。当您需要更改 PDF 文档的文本、使用不同的文本格式或使用户更容易访问文档时,此类转换非常有用。因此,在本文中,我们将演示如何使用 REST API 在 Java 中将 PDF 转换为 Word 文档。

本文将讨论并涵盖以下部分:

Java PDF 到 Word 文档转换 REST API – Java SDK 安装

为了将 PDF 文件转换为 Word DOCX,我将使用 GroupDocs.Conversion Cloud API 的 Java SDK。这个 PDF 到 Word 文档的免费 API 提供高效、快速和可靠的文件转换为 Java 应用程序,而无需安装任何外部软件。它还允许在不影响数据的情况下在所有流行的商业文档格式之间进行转换,例如 Excel、PDF、PowerPoint, HTML、电子邮件、Word、Photoshop、CorelDraw、AutoCAD、光栅图像文件格式等等。此外,它还支持显示整个文档或部分渲染以加快转换过程。我们的 Java API 与所有 Java 版本兼容,并支持所有能够运行 Java 运行时的流行操作系统(Windows、Linux、macOS)。

这个库的安装过程很简单。 下载 API 的 JAR 或简单地在基于 Maven 的 Java 应用程序中添加以下 pom.xml 配置以尝试下面提到的 Java 代码示例。

Maven 存储库:

<repository>
    <id>groupdocs-artifact-repository</id>
    <name>GroupDocs Artifact Repository</name>
    <url>https://repository.groupdocs.cloud/repo</url>
</repository>

Maven 依赖项:

<dependency>
    <groupId>com.groupdocs</groupId
    <artifactId>groupdocs-conversion-cloud</artifactId>
    <version>23.4</version>
    <scope>compile</scope>
</dependency>

在开始执行这些步骤和可用的代码片段之前,请从 仪表板 获取您的 客户端 ID 和客户端密码。获得 ID 和密码后,请将其添加到代码示例中,如下所述:

# 免费注册后,从 https://dashboard.groupdocs.cloud 获取您的 client_id 和 client_secret。

String ClientId = "xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";
String ClientSecret = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
String MyStorage = "test-internal-storage";
Configuration configuration = new Configuration(ClientId, ClientSecret);

使用 REST API 在 Java 中将 PDF 转换为可编辑的 Word

与 PDF 相比,Word 文档通常更易于使用和协作、更易于访问且更小。通过执行下面列出的快速操作,您可以将 PDF 转换并导入 Word 文档:

上传文件

首先,使用如下所示的代码片段将 PDF 文档上传到云存储:

package com.groupdocsdev.classes;

import com.groupdocs.cloud.conversion.api.*;
import com.groupdocs.cloud.conversion.model.*;
import com.groupdocs.cloud.conversion.model.requests.*;
import com.groupdocs.cloud.conversion.client.Configuration;
import com.groupdocs.cloud.conversion.client.ApiException;

import java.io.File;

// 使用 Java 上传文件到云存储
public class App {

	public static void main(String[] args) {
				
		// 创建转换 API 的实例					
		FileApi apiInstance = new FileApi(configuration);
		try {
			File fileStream = new File("H:\\groupdocs-cloud-data\\input-sample-file.pdf");
			UploadFileRequest request = new UploadFileRequest("java-testing\\input-sample-file.pdf", fileStream, MyStorage);
			FilesUploadResult response = apiInstance.uploadFile(request);
			System.out.println("Expected response type is FilesUploadResult: " + response.getUploaded().size());
		} catch (ApiException e) {
			System.err.println("Exception while calling FileApi:");
			e.printStackTrace();
		}
		
	}
}

因此,上传的 PDF 文件将在云端仪表板的 文件部分 中可用。

在 Java 中将 PDF 转换为 DOCX

本节介绍如何通过执行下列操作以编程方式将 PDF 转换为 Word 而不会丢失格式:

  • 首先,创建一个 ConvertApi 的实例
  • 接下来,创建 ConvertSettings 的对象
  • 现在,提供云存储名称
  • 设置输入PDF文件路径和输出文件格式为“docx”
  • 现在,设置输出 DOCX 文件路径
  • 接下来,使用 ConvertSettings 创建 ConvertDocumentRequest
  • 最后,用 ConvertDocumentRequest 调用 convert\document()

以下代码片段显示了如何使用 REST API 将 PDF 在线转换为 DOCX:

package com.groupdocsdev.classes;

import com.groupdocs.cloud.conversion.api.*;
import com.groupdocs.cloud.conversion.model.*;
import com.groupdocs.cloud.conversion.model.requests.*;
import com.groupdocs.cloud.conversion.client.Configuration;
import com.groupdocs.cloud.conversion.client.ApiException;
import java.util.List;

// 如何使用 REST API 在 Java 中将 PDF 转换为可编辑的 Word
public class App {

	public static void main(String[] args) {
		
		// 创建转换 API 的实例
		ConvertApi apiInstance = new ConvertApi(configuration);
					
		try {
			 
			// 准备转换设置
			ConvertSettings settings = new ConvertSettings();
			settings.setStorageName(MyStorage);
			settings.setFilePath("java-testing/input-sample-file.pdf");
			settings.setFormat("docx");
			
			settings.setOutputPath("java-testing/output-sample-file.docx");
		
			// 转换为指定格式
			List<StoredConvertedResult> response = apiInstance.convertDocument(new ConvertDocumentRequest(settings));
			System.out.println("Document converted successfully: " + response);
			
		} catch (ApiException e) {
			System.err.println("Exception while calling Java API: ");
			e.printStackTrace();
		}
	}
}

下载转换后的文件

上面的代码示例会将转换后的 PDF 文件保存到云端。您可以使用以下代码片段下载它:

package com.groupdocsdev.classes;

import com.groupdocs.cloud.conversion.api.*;
import com.groupdocs.cloud.conversion.model.requests.*;
import com.groupdocs.cloud.conversion.client.Configuration;
import com.groupdocs.cloud.conversion.client.ApiException;

import java.io.File;

// 使用 Java 从云存储下载文件
public class App {

	public static void main(String[] args) {
				
		// 创建转换 API 的实例					
		FileApi apiInstance = new FileApi(configuration);
		try {
			DownloadFileRequest request = new DownloadFileRequest("java-testing\\output-sample-file.docx", MyStorage, null);
			File response = apiInstance.downloadFile(request);
			System.err.println("Expected response type is File: " + response.length());
		} catch (ApiException e) {
			System.err.println("Exception while calling FileApi:");
			e.printStackTrace();
		}
		
	}
}

这就是 Java 中的 PDF 转换器库的工作原理。在下一节中,让我们使用 Java API 探索更高级的转换设置。

使用高级选项将 PDF 文件转换为可在 Java 中编辑的 Word

在本节中,您将按照以下说明学习如何以编程方式将 PDF 文件转换为 Word 文档:

  • 首先,创建一个 ConvertApi 类的实例
  • 其次,创建 ConvertSettings 类的实例
  • 第三,提供云存储名称
  • 然后,设置输入PDF文件路径和输出文件格式为“docx”
  • 现在,创建 DocxConvertOptions 的实例
  • 接下来,设置各种转换选项,如 setFromPage、setPagesCount、setZoom、setHeight、setDpi 等。
  • 现在,提供转换选项和输出字文件路径
  • 接下来,以 ConvertSettings 作为参数创建 ConvertDocumentRequest
  • 最后,使用带有 ConvertDocumentRequest 的 convert\document() 类调用转换

以下代码示例显示如何使用高级设置将 PDF 文档转换为 Word 文件:

package com.groupdocsdev.classes;

import com.groupdocs.cloud.conversion.api.*;
import com.groupdocs.cloud.conversion.model.*;
import com.groupdocs.cloud.conversion.model.requests.*;
import com.groupdocs.cloud.conversion.client.Configuration;
import com.groupdocs.cloud.conversion.client.ApiException;
import java.util.List;

// 使用高级选项将 PDF 文件转换为可在 Java 中编辑的 Word
public class App {

	public static void main(String[] args) {
		
		// 创建转换 API 的实例
		ConvertApi apiInstance = new ConvertApi(configuration);
					
		try {
			 
			// 准备转换设置
			ConvertSettings settings = new ConvertSettings();
			settings.setStorageName(MyStorage);
			settings.setFilePath("java-testing/input-sample-file.pdf");
			settings.setFormat("docx");
			
			DocxConvertOptions convertOptions = new DocxConvertOptions();
			convertOptions.setFromPage(1);
			convertOptions.setPagesCount(2);
			convertOptions.setZoom(100);
			convertOptions.setDpi(300.0);
			 
			settings.setConvertOptions(convertOptions);
			settings.setOutputPath("java-testing/output-sample-file.docx");
			
			// 转换为指定格式
			List<StoredConvertedResult> response = apiInstance.convertDocument(new ConvertDocumentRequest(settings));
			System.out.println("Document conveted successfully: " + response);
			
		} catch (ApiException e) {
			System.err.println("Exception while calling Java API: ");
			e.printStackTrace();
		}
	}
}

请按照前面提到的步骤上传和下载文件。

使用 Java 代码将 PDF 转换为 Word IOstream

本节演示如何按照以下步骤以编程方式将 PDF 转换为 Word 而不会丢失格式:

  • 首先,创建一个 ConvertApi 类的实例
  • 其次,创建 ConvertSettings 类的实例
  • 现在,提供云存储名称
  • 设置输入PDF文件路径和输出文件格式为“docx”
  • 现在,创建 DocxConvertOptions 的实例
  • 设置各种转换选项,如 setFromPage、setPagesCount、setZoom、setHeight、setDpi 等。
  • 提供转换选项和输出空路径
  • 接下来,使用 ConvertSettings 创建 ConvertDocumentRequest
  • 最后,使用 ConvertDocumentRequest 调用 convert\document()

以下代码片段显示了如何使用 REST API 将 PDF 在线转换为 DOCX:

package com.groupdocsdev.classes;

import com.groupdocs.cloud.conversion.api.*;
import com.groupdocs.cloud.conversion.model.*;
import com.groupdocs.cloud.conversion.model.requests.*;
import com.groupdocs.cloud.conversion.client.Configuration;
import com.groupdocs.cloud.conversion.client.ApiException;
import java.util.List;

// 如何使用 Java 代码将 PDF 转换为 Word IOstream
public class App {

	public static void main(String[] args) {
		
		// 创建转换 API 的实例
		ConvertApi apiInstance = new ConvertApi(configuration);
					
		try {
			 
			// 准备转换设置
			ConvertSettings settings = new ConvertSettings();
			settings.setStorageName(MyStorage);
			settings.setFilePath("java-testing/input-sample-file.pdf");
			settings.setFormat("docx");
			
			DocxConvertOptions convertOptions = new DocxConvertOptions();
			convertOptions.setFromPage(1);
			convertOptions.setPagesCount(2);
			convertOptions.setZoom(100);
			convertOptions.setDpi(300.0);

			settings.setConvertOptions(convertOptions);
			// 将 OutputPath 设置为空将输出为文件 IOStream
			settings.setOutputPath("");
		
			// 转换为指定格式
			List<StoredConvertedResult> response = apiInstance.convertDocument(new ConvertDocumentRequest(settings));
			System.out.println("Document converted successfully: " + response);
			
		} catch (ApiException e) {
			System.err.println("Exception while calling Java API: ");
			e.printStackTrace();
		}
	}
}

通过这种方式,我们的转换 API 使 PDF 到 Word 的转换变得相对容易和简单。

在线 PDF 到 Word 转换器免费

如何免费在线将 PDF 文件转换为 Word 文件?请尝试免费的在线 PDF 到 Word 转换器 从 PDF 在线创建 Word。它是使用上述 API 开发的,可以免费在线将 PDF 转换为 Word。

结论

我们到此结束本文,希望您已经了解到:

  • 如何以编程方式使用 Java 库将 PDF 文档转换为 Word 文件;
  • 如何使用 Java 中的一些高级选项将 PDF 文件转换为 DOCX;
  • 以编程方式将 PDF 文件上传到云端,然后从云端下载转换后的 Word 文件;
  • 使用 PDF 到 Word 转换器工具免费在线将 PDF 转换为 DOC;

此外,我们还提供了一个 API 参考 部分,让您可以直接通过浏览器可视化我们的 API 并与之通信。 Java SDK 的完整源代码可在 Github 上免费获得。请检查并访问 Java 此处的示例

此外,我们建议您参考我们的入门指南

最后,groupdocs.cloud 正在撰写有关使用 REST API 的各种文件转换解决方案的新博文。因此,请联系我们以获取定期更新。

问一个问题

如果您对 PDF to Word Converter API 有任何疑问,请随时通过论坛 与我们联系。

常见问题

如何在 Java 中将 PDF 转换为 Word?

请按照 此链接 学习有关如何快速轻松地将 PDF 文件更改为 Word DOC 的 Java 代码片段。

我们可以使用 REST API 在 Java 中将 PDF 转换为 Word 吗?

是的,您可以在 Java 中将 PDF 转换为 Word。首先,创建一个 ConvertApi 的实例,设置转换设置的值,并使用 ConvertDocumentRequest 调用 convertDocument 方法以将 PDF 转换为 Word 而不会丢失格式。

如何免费在线将 PDF 转换为 DOCX?

PDF 到 DOC 免费在线转换器 让您可以免费、快速、轻松地将 PDF 转换为 Word。 PDF 到 Word 的在线转换完成后,您可以立即下载转换后的 Word 文件。

如何在线将 PDF 转换为 DOCX?

  • 打开免费的在线 PDF 到 DOCX 转换器
  • 在文件放置区域内单击以上传 PDF 文件或拖放 PDF 文件。
  • 单击立即转换按钮,免费在线 PDF 到 Word 转换器将 PDF 文件免费在线转换为 Word。
  • 将 PDF 文件免费转换为 Word 后,生成的 PDF 文件的下载链接将立即可用。

如何将 PDF 安装到 Word Java 库?

下载并安装 Java 库,以编程方式在 Java 中从 PDF 文件处理、操作和创建 Word。

如何在 Windows 中将 PDF 转换为 Word?

请访问 此链接 下载适用于 Windows 的 PDF 到 DOCX 离线转换器。此 PDF 到 Word 转换器免费下载软件可用于将 PDF 快速导入 Windows 中的 Word 文件,只需单击一下。

也可以看看

请参阅以下文章以了解更多信息: