使用 REST API 在 C# .NET 中将 PDF 转换为 Word

使用 REST API 在 C# .NET 中将 PDF 转换为 Word

PDF(便携式文档格式)是在线保护和保护文档的最流行的文件格式之一。 Word (.doc, .docx) 是最常用的文字处理文档格式之一。它允许您使用文字处理应用程序快速轻松地创建、编辑、查看和共享您的文档。在各种情况下,您想将 PDF 文件转换为 Word 文件以编辑和更新文档。因此,在本文中,我将向您展示如何使用 REST API 在 C# .NET 中将 PDF 转换为 Word。

本文应涵盖以下主题:

文件和文档转换 API – .NET SDK 安装

为了将 PDF 转换为 Word Doc,我将使用 GroupDocs.Conversion Cloud API 的 .NET SDK。它是一个快速安全、功能丰富且可靠的文件格式转换平台。 C# .NET API 可以在 50 多种类型的文件之间来回转换,包括 PDF、HTML、CAD、光栅图像等所有格式。它还允许您将特定于格式的信息从广泛的受支持源文档格式列表中转换和提取为任何受支持的文档格式。此外,它还提供了一组灵活的设置来自定义转换过程。目前,它支持 Java、PHP、Ruby、Python、CSharp 和 Node.js SDK 作为其文档转换家族成员

您可以从 NuGet Package manager 下载并将其安装到您的 VS Code 项目中,或者在 Package 控制台中使用以下命令添加它:

dotnet add package GroupDocs.Conversion-Cloud --version 22.10.0

接下来,在开始执行步骤和可用代码片段之前,从 仪表板 获取客户端 ID 和客户端密码。在代码中添加您的客户端 ID 和客户端密码,如下所示:

//从 https://dashboard.groupdocs.cloud 获取 clientId 和 clientSecret(需要免费注册)。
string clientId = "xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";
string clientSecret = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
string myStorage = "test-internal-storage";

var configuration = new Configuration(clientId, clientSecret);
configuration.ApiBaseUrl = "https://api.groupdocs.cloud";

在 C# 中以编程方式将 PDF 转换为可编辑的 Word 文档

当您想要重复使用或编辑 PDF 的内容,或者当您想要更轻松地协作处理文档时,将 PDF 转换为 Word 文档会很有用。您可以按照以下简单步骤使用 REST API 在 CSharp 中将 PDF 转换为 Word 文件:

  • 上传PDF文档至云端
  • 转换 使用 REST API 将 PDF 文件转换为 Word DOCX
  • 下载转换后的文件

上传 PDF 文件

首先,使用以下任一方式将PDF文档上传至云端:

  • 使用仪表板
  • 使用 Upload File API 从浏览器上传源文件
  • 使用下面给出的代码示例以编程方式上传:
using System;
using GroupDocs.Conversion.Cloud.Sdk.Api;
using GroupDocs.Conversion.Cloud.Sdk.Client;
using GroupDocs.Conversion.Cloud.Sdk.Model.Requests;
using System.IO;

namespace GroupDocs.Conversion.CSharp
{
  // 上传示例文件
  class Upload_File
  {
    static void Main(string[] args)
    {
      try
      {
        // 初始化接口
        var fileApi = new FileApi(configuration);

        // 打开文件
        var fileStream = File.Open(@"H:\groupdocs-cloud-data\input-sample-file.pdf", FileMode.Open);

        // 创建文件上传请求
        var request = new UploadFileRequest("csharp-testing/input-sample-file.pdf", fileStream, myStorage);

        // 上传文件
        var response = fileApi.UploadFile(request);
        Console.WriteLine("PDF File Upload Process Completed: " + response.Uploaded.Count.ToString());
        fileStream.Close();
      }
      catch (Exception e)
      {
        Console.WriteLine("Exception when calling GroupDocs FileApi: " + e.Message);
      }
    }
  }
}

结果,PDF 文件将上传到云存储。

在线将 PDF 转换为 Word 文件

本节演示如何使用 REST API 在 C# 中以编程方式将 PDF 文件转换为 Word 文件。按照下面提到的步骤操作:

  • 首先,创建 ConvertApi 的实例
  • 其次,创建 ConvertSettings 的实例
  • 接下来,提供输入的 PDF 文件路径
  • 然后,将“docx”分配给格式
  • 创建 PdfLoadOptions 的实例
  • 提供输入文件密码
  • 现在,设置输出文件路径
  • 使用 ConvertSettings 创建 ConvertDocumentRequest
  • 最后,通过使用 ConvertDocumentRequest 调用 convertDocument() 方法进行转换

以下代码示例显示了如何使用 REST API 在 C# 中将 PDF 转换为 Word DOCX:

// 如何使用 C# REST API 将 PDF 转换为 Word 文件
using System;
using GroupDocs.Conversion.Cloud.Sdk.Api;
using GroupDocs.Conversion.Cloud.Sdk.Client;
using GroupDocs.Conversion.Cloud.Sdk.Model;
using GroupDocs.Conversion.Cloud.Sdk.Model.Requests;

namespace GroupDocs.Conversion.CSharp
{
	// 在 C# 中将 PDF 文件更改为 Word DOCX 
  class Convert_PDF_to_Word
  {
    static void Main(string[] args)
    {
      try
      {
      	// 创建必要的 API 实例
      	var apiInstance = new ConvertApi(configuration);
        // 准备转换设置
        var settings = new ConvertSettings
        {
          FilePath = "csharp-testing/input-sample-file.pdf",
          Format = "docx",
          LoadOptions = new PdfLoadOptions() { Password = "password" },
          OutputPath = "csharp-testing/output-sample-file.docx"
        };
        
        // 转换为指定格式
        var response = apiInstance.ConvertDocument(new ConvertDocumentRequest(settings));
        Console.WriteLine("Successfully converted PDF file to Word document in C#: " + response[0].Url);
      }
      catch (Exception e)
      {
        Console.WriteLine("Exception when calling GroupDocs ConvertApi: " + e.Message);
      }
    }
  }
}
如何在不丢失格式的情况下在线将pdf转word

将 PDF 转换为 Word DOCX

下载转换后的文件

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

// 如何在 C# 中下载转换后的 Word 文件
using System;
using GroupDocs.Conversion.Cloud.Sdk.Api;
using GroupDocs.Conversion.Cloud.Sdk.Client;
using GroupDocs.Conversion.Cloud.Sdk.Model.Requests;

namespace GroupDocs.Conversion.CSharp
{
  // 下载输出文件
  class Download_File
  {
    static void Main(string[] args)
    {
      try
      {
        // 初始化接口
        var fileApi = new FileApi(configuration);
        // 创建下载文件请求
        var downloadRequest = new DownloadFileRequest("csharp-testing/output-sample-file.docx", myStorage);
        // 下载文件
        Stream downloadResponse = fileApi.DownloadFile(downloadRequest);

        // 将文件保存在工作目录中
        using (var fileStream = System.IO.File.Create("H:\\groupdocs-cloud-data\\output-sample-file.docx"))
        {
          downloadResponse.Seek(0, SeekOrigin.Begin);
          downloadResponse.CopyTo(fileStream);
        }
      }
      catch (Exception e)
      {
        Console.WriteLine("Exception when calling GroupDocs FileApi: " + e.Message);
      }

    }
  }
}

使用高级选项在 C# 中将 PDF 转换为 Word DOCX

接下来,按照以下步骤使用其他设置将 PDF 文件转换为 Word 文档:

  • 首先,创建 ConvertApi 的实例
  • 其次,创建 ConvertSettings 的实例
  • 接下来,提供 PDF 文件路径作为输入
  • 然后,将“docx”分配给格式
  • 现在,创建 PdfLoadOptions 的实例
  • 为输入文件提供密码
  • 创建 DocxConvertOptions 的实例
  • 可选择设置各种转换参数,如密码、缩放、Dpi、宽度、高度等。
  • 提供输出文件路径
  • 使用 ConvertSettings 创建 ConvertDocumentRequest
  • 最后,通过使用 ConvertDocumentRequest 调用 convertDocument() 方法进行转换

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

// 如何使用高级选项将 PDF 转换为 Word
using System;
using GroupDocs.Conversion.Cloud.Sdk.Api;
using GroupDocs.Conversion.Cloud.Sdk.Client;
using GroupDocs.Conversion.Cloud.Sdk.Model;
using GroupDocs.Conversion.Cloud.Sdk.Model.Requests;

namespace GroupDocs.Conversion.CSharp
{
  // 使用高级选项将 PDF 转换为 Word DOCX
  class Convert_PDF_to_Word_Advanced_Options
  {
    static void Main(string[] args)
    {

      try
      {
      	// 创建必要的 API 实例
      	var apiInstance = new ConvertApi(configuration);
        // 准备转换设置
        var settings = new ConvertSettings
        {
          FilePath = "csharp-testing/input-sample-file.pdf",
          Format = "docx",
          LoadOptions = new PdfLoadOptions { Password = "password" },

          ConvertOptions = new DocxConvertOptions() { Password = "password", Zoom = 100, Dpi = 300, Width = 100, Height = 100 },
          OutputPath = "csharp-testing/output-sample-file.docx"
        };
        
        // 转换为指定格式
        var response = apiInstance.ConvertDocument(new ConvertDocumentRequest(settings));
        Console.WriteLine("Successfully converted PDF file to Word file format: " + response[0].Url);
      }
      catch (Exception e)
      {
        Console.WriteLine("Exception when calling GroupDocs ConvertApi: " + e.Message);
      }

    }
  }
}

如何在 C# 中将页面范围从 PDF 转换为 DOCX 文件

本节介绍如何将选定范围的页面从 PDF 文件转换为 Word。因此,您必须提供一系列页面,如下面的代码片段所示。按照以下给出的步骤,以编程方式将一系列页面从 PDF 文件转换为 Word 文档:

  • 创建 ConvertApi 的实例
  • 接下来,创建 ConvertSettings 的实例
  • 提供 PDF 文件路径作为输入
  • 现在,将“docx”分配给格式
  • 创建 PdfLoadOptions 的实例
  • 为输入文件提供密码
  • 创建 DocxConvertOptions 的实例
  • 现在,使用文档密码设置页面范围参数 FromPage 和 PagesCount。
  • 接下来,提供输出文件路径
  • 使用 ConvertSettings 创建 ConvertDocumentRequest
  • 最后,通过使用 ConvertDocumentRequest 调用 convertDocument() 方法进行转换

以下代码示例显示了如何使用 C# 中的 REST API 将一系列页面从 PDF 转换为 Word DOCX:

// 如何在 CSharp 中将页面范围从 PDF 转换为 Word DOC
using System;
using System.Collections.Generic;
using GroupDocs.Conversion.Cloud.Sdk.Api;
using GroupDocs.Conversion.Cloud.Sdk.Client;
using GroupDocs.Conversion.Cloud.Sdk.Model;
using GroupDocs.Conversion.Cloud.Sdk.Model.Requests;

namespace GroupDocs.Conversion.CSharp
{
  // 在 CSharp 中将选定页面从 PDF 转换为 Word
  class Convert_Range_of_Pages_from_PDF_to_Word
  {
    static void Main(string[] args)
    {
      try
      {
      	// 创建必要的 API 实例
      	var apiInstance = new ConvertApi(configuration);
        // 准备转换设置
        var settings = new ConvertSettings
        {
          FilePath = "csharp-testing/input-sample-file.pdf",
          Format = "docx",
          LoadOptions = new PdfLoadOptions { Password = "password" },
          ConvertOptions = new DocxConvertOptions
			    {
            FromPage = 1,
            PagesCount = 2,
            Password = "password"
			    },
          OutputPath = "csharp-testing/output-sample-file.docx"
        };
        
        // 转换为指定格式
        var response = apiInstance.ConvertDocument(new ConvertDocumentRequest(settings));
        Console.WriteLine("Successfully converted Selected Pages from PDF to Word file in CSharp: " + response[0].Url);
      }
      catch (Exception e)
      {
        Console.WriteLine("Exception when calling GroupDocs ConvertApi: " + e.Message);
      }

    }
  }
}

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

如何在 C# 中将 PDF 的特定页面转换为 Word 文档

在本节中,您可以按照以下步骤以编程方式将 PDF 文件的特定页面转换为 Word 格式:

  • 创建 ConvertApi 的实例
  • 创建 ConvertSettings 的实例
  • 提供 PDF 文件路径作为输入
  • 现在,将“docx”分配给格式
  • 创建 PdfLoadOptions 的实例
  • 为输入文件提供密码
  • 创建 DocxConvertOptions 的实例
  • 现在,使用文档密码设置页面集合数组。
  • 提供输出文件路径
  • 使用 ConvertSettings 创建 ConvertDocumentRequest
  • 最后,通过使用 ConvertDocumentRequest 调用 convertDocument() 方法进行转换

以下代码示例显示了如何在 C# 中使用 REST API 将 PDF 文件的特定页面转换为 Word 文档:

// 如何在 CSharp 中将特定页面从 PDF 文件转换为 Word 文档
using System;
using System.Collections.Generic;
using GroupDocs.Conversion.Cloud.Sdk.Api;
using GroupDocs.Conversion.Cloud.Sdk.Client;
using GroupDocs.Conversion.Cloud.Sdk.Model;
using GroupDocs.Conversion.Cloud.Sdk.Model.Requests;

namespace GroupDocs.Conversion.CSharp
{
  // 使用 CSharp 将 PDF 的特定页面转换为 Word
  class Convert_Specific_Pages_of_PDF_to_Word
  {
    static void Main(string[] args)
    {
      try
      {
      	// 创建必要的 API 实例
      	var apiInstance = new ConvertApi(configuration);
        // 准备转换设置
        var settings = new ConvertSettings
        {
          FilePath = "csharp-testing/input-sample-file.pdf",
          Format = "docx",
          LoadOptions = new PdfLoadOptions { Password = "password" },
          ConvertOptions = new PdfConvertOptions
			    {  
            Password = "password",
			      Pages = new List<int?> {1, 2} // Page numbers starts from 1
			    },
          OutputPath = "csharp-testing/output-sample-file.docx"
        };
        
        // 转换为指定格式
        var response = apiInstance.ConvertDocument(new ConvertDocumentRequest(settings));
        Console.WriteLine("Successfully converted specific pages of PDF file to Word file format: " + response[0].Url);
      }
      catch (Exception e)
      {
        Console.WriteLine("Exception when calling GroupDocs ConvertApi: " + e.Message);
      }

    }
  }
}

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

在线 PDF 到 Word 转换器免费

如何在线将 PDF 转换为 Word?请尝试以下免费在线 PDF 到 Word 转换器,无需更改格式,它是使用上述 API 开发的。

加起来

在本文中,您已了解:

  • 如何使用 REST API 在 C# 中将 PDF 转换为 Word 文档;
  • 使用 REST API 将所选页面从 PDF 文件转换为 C# 中的 Word DOC;
  • 在 C# 中以编程方式将 PDF 的特定页面转换为 DOCX 格式;
  • 以编程方式上传 PDF 文件并从云端下载转换后的 Word 文件;

此外,我们建议您参考我们的入门指南。我们还提供了一个 API 参考 部分,让您可以直接通过浏览器可视化我们的 API 并与之交互。

最后,groupdocs.cloud 正在撰写有关多种文件格式之间的在线文件转换器的新博客文章。因此,请保持联系以获取定期更新。

问一个问题

有关 PDF 到 Word 转换的任何查询/讨论,请随时访问我们的论坛

常见问题

如何以编程方式将 PDF 转换为 Word DOC?

请点击 此链接 了解如何将 PDF 文件快速转换为 Word 文档的 C# 代码片段。

如何安装 PDF 到 Word 转换器 API?

安装免费下载 C# 库,以编程方式下载、处理 PDF 并将其转换为 Word DOCX 格式。

我可以免费将 PDF 转换为 Word 吗?

是的,您可以免费使用在线 PDF 到 Word 可编辑转换器 将 PDF 转换为 DOC。

什么是最好的 PDF 到 DOCX 转换器?

PDF 到文档在线转换器 是最好的免费 PDF 到 DOCX 在线转换器。

也可以看看

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