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

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

在上一篇博文中,我们描述了如何以编程方式将 PDF 转换为 Word.这篇博文将向我们展示如何使用 Java 库将 Word 文档转换为 PDF 而不会丢失格式。该库可以在您的 Java 应用程序中以编程方式轻松地将 Word 文档转换为 PDF 文件。当您想要共享文档、保护数据或确保 PDF 查看器在任何拥有它的平台上可用时,这种转换非常有用。与 Word 文档相比,PDF 更易于打印、更便携、更安全并且更适合长期存档。因此,在本文中,我们将演示如何使用 REST API 在 Java 中将 Word 文档转换为 PDF。

本文涵盖以下主题:

Java Convert Word to PDF - DOCX to PDF Java库安装

为了将 Word DOC 转换为 PDF,我将使用 GroupDocs.Conversion Cloud API 的 Java SDK。 Word 到 PDF 转换器 API 支持使用 Java 进行快速、可靠的文件转换,而无需安装任何第三方软件。它还支持在所有流行的商业文档格式之间进行转换,例如 Excel、PDF、PowerPoint, HTML、电子邮件、Word、Photoshop、CorelDraw、AutoCAD、光栅图像文件格式等等。此外,它呈现整个文档,或部分呈现以加快文件转换过程。我们的 Java API 与所有 Java 版本兼容,并支持所有能够运行 Java 运行时的流行操作系统(Windows、Linux、macOS)。

这个java库的安装方法很简单。下载 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 中将 Word 文件转换为 PDF

下面列出的简单步骤可用于将 Word 文件转换为 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.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.docx");
			UploadFileRequest request = new UploadFileRequest("java-testing\\input-sample-file.docx", 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();
		}
		
	}
}

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

在 Java 中将 DOCX 转换为 PDF

本节介绍如何使用下面列出的步骤以编程方式将 Word 文档转换为 PDF 文件:

  • 首先,创建 ConvertApi 的实例
  • 接下来,创建 ConvertSettings 的实例
  • 然后,输入您的存储名称。
  • 现在,将输入的Word文件路径和输出文件格式设置为“pdf”
  • 接下来,创建 DocxLoadOptions 的实例
  • 现在,设置密码、加载选项和输出 PDF 文件路径
  • 接下来,使用 ConvertSettings 创建 ConvertDocumentRequest
  • 最后,用 ConvertDocumentRequest 调用 convert\document() 方法

以下示例代码片段显示了如何使用 REST API 将 DOCX 在线转换为 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.util.List;

// 如何使用 REST API 在 Java 中将 Word 文件转换为 PDF
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.docx");
			settings.setFormat("pdf");

			DocxLoadOptions loadOptions = new DocxLoadOptions();
			loadOptions.setPassword("password");
			settings.setLoadOptions(loadOptions);
			
			settings.setOutputPath("java-testing/output-sample-file.pdf");
		
			// 转换为指定格式
			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.pdf", 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 探索更高级的转换设置。

使用高级选项在 Java 中在线将 Word 转换为 PDF

在本节中,您还可以按照以下步骤使用一些高级选项以编程方式将 Word 文档转换为 PDF 文件:

  • 首先,创建一个 ConvertApi 的实例
  • 其次,创建 ConvertSettings 的实例
  • 第三,提供云存储名称
  • 设置输入Word文件路径和输出文件格式为“pdf”
  • 创建 DocxLoadOptions 的实例
  • 现在,设置密码并加载选项值
  • 现在,创建 PdfConvertOptions 的实例
  • 设置各种转换选项,如 setCenterWindow、setFromPage、setPagesCount、setImageQuality、setPassword、setDpi 等。
  • 提供转换选项并设置输出文件路径
  • 接下来,以 ConvertSettings 作为参数创建 ConvertDocumentRequest
  • 最后,使用带有 ConvertDocumentRequest 的 convertdocument() 类调用转换

以下代码示例显示了如何使用高级设置将 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.util.List;

// 使用高级选项在 Java 中在线将 Word 转换为 PDF
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.docx");
			settings.setFormat("pdf");

			DocxLoadOptions loadOptions = new DocxLoadOptions();
			loadOptions.setPassword("password");
			settings.setLoadOptions(loadOptions);
			
			PdfConvertOptions convertOptions = new PdfConvertOptions();
			convertOptions.setCenterWindow(true);
			convertOptions.setCompressImages(false);
			convertOptions.setDisplayDocTitle(true);
			convertOptions.setDpi(1024.0);
			convertOptions.setFitWindow(false);
			convertOptions.setFromPage(1);
			convertOptions.setGrayscale(false);
			convertOptions.setImageQuality(100);
			convertOptions.setLinearize(false);
			convertOptions.setMarginTop(5);
			convertOptions.setMarginLeft(5);
			convertOptions.setPassword("password");
			convertOptions.setUnembedFonts(true);
			convertOptions.setRemoveUnusedStreams(true);
			convertOptions.setRemoveUnusedObjects(true);
			convertOptions.setRemovePdfaCompliance(false);
			 
			settings.setConvertOptions(convertOptions);
			settings.setOutputPath("java-testing/output-sample-file.pdf");
			
			// 转换为指定格式
			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 中将 Word 文档保存为 PDF

在本节中,您还可以按照以下步骤使用一些高级设置以编程方式将 Word 文档转换为 PDF 文件:

  • 首先,创建一个 ConvertApi 类的实例
  • 其次,创建 ConvertSettings 的实例
  • 接下来,提供云存储名称
  • 设置输入Word文件路径和输出文件格式为“pdf”
  • 创建 DocxLoadOptions 的实例
  • 现在,设置密码并加载选项值
  • 现在,创建 PdfConvertOptions 的实例
  • 设置各种 convertOptions,如 setFromPage、setPagesCount 等。
  • 提供转换选项和输出文件路径
  • 接下来,以 ConvertSettings 作为参数创建 ConvertDocumentRequest
  • 最后,使用 ConvertDocumentRequest 的 convertdocument() 方法调用转换

以下代码示例显示了如何在 Java 中将页面范围从 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.util.List;

// 使用高级选项在 Java 中在线将 Word 转换为 PDF
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.docx");
			settings.setFormat("pdf");

			DocxLoadOptions loadOptions = new DocxLoadOptions();
			loadOptions.setPassword("password");
			settings.setLoadOptions(loadOptions);
			
			PdfConvertOptions convertOptions = new PdfConvertOptions();
			convertOptions.setFromPage(2);
			convertOptions.setPagesCount(2);
			 
			settings.setConvertOptions(convertOptions);
			settings.setOutputPath("java-testing/output-sample-file.pdf");
			
			// 转换为指定格式
			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 中将 MS Word 的特定页面在线转换为 PDF

本节介绍如何使用下面列出的步骤以编程方式将 Word DOC 文件转换为 PDF 文件:

  • 首先,创建 ConvertApi 的实例
  • 其次,创建 ConvertSettings 的实例
  • 接下来,提供云存储名称
  • 设置输入Word文件路径和输出文件格式为“pdf”
  • 接下来,创建 DocxLoadOptions 的实例
  • 提供密码和加载选项值
  • 接下来,创建 PdfConvertOptions 的实例
  • 现在,使用逗号分隔值设置页面集合数组列表
  • 提供转换选项和输出文件路径
  • 接下来,以 ConvertSettings 作为参数创建 ConvertDocumentRequest
  • 最后,通过调用 convertdocument() 转换特定页面

以下代码示例显示了如何将 Word DOCX 的特定页面转换为 Java 中的 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.util.List;

// 使用高级选项在 Java 中在线将 Word 转换为 PDF
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.docx");
			settings.setFormat("pdf");

			DocxLoadOptions loadOptions = new DocxLoadOptions();
			loadOptions.setPassword("password");
			settings.setLoadOptions(loadOptions);
			
			PdfConvertOptions convertOptions = new PdfConvertOptions();
			convertOptions.setPages(Arrays.asList(new Integer[]{1, 3}));

			settings.setConvertOptions(convertOptions);
			settings.setOutputPath("java-testing/output-sample-file.pdf");
			
			// 转换为指定格式
			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();
		}
	}
}

在线 Word 到 PDF 转换器免费

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

结论

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

  • 如何以编程方式使用 Java 库将 Word DOC 转换为 PDF 格式;
  • 如何使用 Java 中的一些高级选项将 DOCX 转换为 PDF 文件;
  • 以编程方式将 Word 文件上传到云端,然后从云端下载转换后的 PDF 文件;
  • 如何使用页面范围过滤器在 Java 中将 Word 文档另存为 PDF;
  • 在 Java 中在线将 MS Word 的特定页面转换为 PDF;
  • 在线 DOCX 到 PDF 转换器工具;

此外,使用 文档 访问 GroupDocs.Conversion 文件转换 API。我们还有一个 API 参考 部分,可让您直接通过浏览器可视化我们的 API 并与之通信。 Github 上免费提供在线 Java SDK 源代码。请检查并访问 Java 此处的示例

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

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

问一个问题

有关 Word to PDF Converter Java API 的任何疑问/讨论,请随时通过论坛 与我们联系。

常见问题

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

请按照 此链接 学习 Java 代码片段,了解如何快速轻松地将 Word 文件更改为 PDF 格式。

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

创建 ConvertApi 的实例,设置转换设置的值,并使用 ConvertDocumentRequest 调用 convertDocument 方法以在 Java 中将 Word 转换为 PDF。

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

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

如何在线将 Word DOCX 转换为 PDF?

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

如何安装 Word to PDF Java 库?

下载并安装 Java 库,以编程方式在 Java 中处理、操作 Word 并将其转换为 PDF 文件。

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

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

也可以看看

我们建议您访问以下文章以了解: