如何在 C# 中以編程方式將 Word 轉換為 PDF

如何在 C# 中以編程方式將 Word 轉換為 PDF

[Word][1] 是最流行的文字處理文檔格式,由 Microsoft 開發。它允許您使用 Word 應用程序快速輕鬆地創建、編輯、查看和共享文檔。 [PDF][2] 是由 Adobe 開發的便攜式文檔格式。它是當今保護和保護文檔最常用的文件類型之一。 Word 文檔重新格式化文檔並且不為共享歷史數據提供很好的安全性。雖然 PDF 保留格式,但它支持出色的文件管理和安全性,可以使用密碼或加密證書保護您的敏感信息。在這種情況下,我們可能需要將 Word 文件轉換為 PDF 格式。因此,在本文中,我將演示如何使用 REST API 在 C# 中以編程方式將 Word 轉換為 PDF。

本文應涵蓋以下主題:

  • [文檔和文件轉換 API - .NET 文件格式庫][3]
  • [使用 REST API 在 C# 中以編程方式將 Word 轉換為 PDF][4]
  • [使用高級選項在 C# 中將 DOCX 文件轉換為 PDF][5]
  • [如何在 C# 中將頁面範圍從 Word 轉換為 PDF][6]
  • [如何在C#中將Word的特定頁面轉換為PDF][7]

文檔和文件轉換 API - .NET 文件格式庫

我將使用 GroupDocs.Conversion Cloud API 的 [.NET SDK][8] 將 Word 文檔轉換為 PDF。它是一個功能豐富的高性能雲 SDK,可在 50 多種類型的文檔和圖像之間來迴轉換,包括 PDF、HTML、CAD、光柵圖像等。 GroupDocs.Conversion Cloud API 允許您將特定於格式的信息從廣泛的[支持的源文檔格式][9] 列表中轉換和提取為任何支持的目標格式。它提供了一組靈活的設置來自定義轉換過程。目前,它還為 Cloud API 提供 C#、Java、PHP、Ruby、Python 和 Node.js SDK 作為其[文檔轉換家族成員][10]。

您可以從 [NuGet 包管理器][11] 或在包管理器控制台中使用以下命令將 GroupDocs.Conversion Cloud 安裝到您的 Visual Studio Code 項目:

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

在開始執行這些步驟和可用的代碼示例之前,您需要從 [儀表板][12] 獲取您的客戶端 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";

使用 REST API 在 C# 中以編程方式將 Word 轉換為 PDF

將 Word 文檔轉換為 PDF 是保持文檔外觀和安全性並使其更易於與他人共享的有用方法。在 CSharp 中,您可以按照以下步驟使用 REST API 將 Word Doc 轉換為 PDF 文件。

  • [上傳][13]Word文檔至雲端
  • [轉換][14] 使用 REST API 將 Word 文件轉換為 PDF
  • [下載][15]轉換後的文件

上傳Word文檔

首先,使用以下任意一種方式將Word文檔上傳至雲端:

  • 使用儀表板
  • 使用 [Upload File API][16] 從瀏覽器上傳源文件
  • 使用下面給出的代碼示例以編程方式上傳:
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.docx", FileMode.Open);

        // 創建文件上傳請求
        var request = new UploadFileRequest("csharp-testing/input-sample-file.docx", fileStream, myStorage);

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

結果,Word文件將上傳到雲存儲

在線將 Word 文件轉換為 PDF

這個簡單的代碼示例演示瞭如何使用 REST API 在 C# 文件中以編程方式將 Word 轉換為 PDF。按照下面提到的步驟操作:

  • 首先,創建 [ConvertApi][17] 的實例
  • 其次,創建 ConvertSettings 的實例
  • 第三,提供輸入DOCX文件路徑
  • 現在,將“pdf”分配給格式
  • 接下來,提供輸出文件路徑
  • 然後,使用 ConvertSettings 創建 ConvertDocumentRequest
  • 最後,通過使用 ConvertDocumentRequest 調用 [convertDocument()][18] 方法進行轉換

以下代碼示例顯示瞭如何使用 REST API 在 C# 中將 DOCX 轉換為 PDF:

// 如何使用 C# REST API 將 Word 文件轉換為 PDF
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
{
	// 將 Word DOCX 轉換為 PDF 文件
  class Convert_Word_To_PDF
  {
    static void Main(string[] args)
    {
      try
      {
      	// 創建必要的 API 實例
      	var apiInstance = new ConvertApi(configuration);
        // 準備轉換設置
        var settings = new ConvertSettings
        {
          FilePath = "csharp-testing/input-sample-file.docx",
          Format = "pdf",
          OutputPath = "csharp-testing/output-sample-file.pdf"
        };
        
        // 轉換為指定格式
        var response = apiInstance.ConvertDocument(new ConvertDocumentRequest(settings));
        Console.WriteLine("Successfully converted Word document to PDF file format: " + response[0].Url);
      }
      catch (Exception e)
      {
        Console.WriteLine("Exception when calling GroupDocs ConvertApi: " + e.Message);
      }
    }
  }
}
如何在線將Word文件轉換為PDF

在線將 Word 文件轉換為 PDF

下載轉換後的文件

上面的代碼示例會將上傳的 PDF 文件保存在雲端。您可以使用以下代碼示例下載它:

// 如何在 C# 中下載轉換後的 PDF 文件
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.pdf", myStorage);
        // 下載文件
        Stream downloadResponse = fileApi.DownloadFile(downloadRequest);

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

    }
  }
}

使用高級選項在 C# 中將 DOCX 文件轉換為 PDF

在本節中,您可以按照以下步驟使用一些高級設置將 Word 文檔轉換為 PDF 文件:

  • 首先,創建 [ConvertApi][19] 的實例
  • 其次,創建 ConvertSettings 的實例
  • 接下來,提供 DOCX 文件路徑
  • 接下來,將“pdf”分配給格式
  • 現在,創建 DocxLoadOptions 的實例
  • 接下來,將密碼設置為加載選項
  • 創建 PdfConvertOptions 的實例
  • 可選擇設置各種轉換選項,例如 CenterWindow、FromPage、邊距(頂部、左側、右側、底部)等。
  • 然後,提供輸出文件路徑
  • 接下來,使用 ConvertSettings 創建 ConvertDocumentRequest
  • 最後,通過使用 ConvertDocumentRequest 調用 [convertDocument()][20] 方法進行轉換

以下代碼示例顯示瞭如何使用高級轉換選項將 Word 文檔轉換為 PDF 文檔:

// 如何使用高級選項將 Word 轉換為 PDF
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
{
  // 使用高級選項將 Word DOCX 轉換為 PDF
  class Convert_Word_To_PDF_Advanced_Options
  {
    static void Main(string[] args)
    {

      try
      {
      	// 創建必要的 API 實例
      	var apiInstance = new ConvertApi(configuration);
        // 準備轉換設置
        var settings = new ConvertSettings
        {
          FilePath = "csharp-testing/input-sample-file.docx",
          Format = "pdf",
          LoadOptions = new DocxLoadOptions { Password = "password" },
          ConvertOptions = new PdfConvertOptions
          {
            CenterWindow = true,
            CompressImages = false,
            DisplayDocTitle = true,
            Dpi = 1024,
            FitWindow = false,
            FromPage = 1,
            Grayscale = false,
            ImageQuality = 100,
            Linearize = false,
            MarginTop = 5,
            MarginLeft = 5,
            Password = "password",
            UnembedFonts = true,
            RemoveUnusedStreams = true,
            RemoveUnusedObjects = true,
            RemovePdfaCompliance = false
          },
          OutputPath = "csharp-testing/output-sample-file.pdf"
        };
        
        // 轉換為指定格式
        var response = apiInstance.ConvertDocument(new ConvertDocumentRequest(settings));
        Console.WriteLine("Successfully converted Word to PDF format: " + response[0].Url);
      }
      catch (Exception e)
      {
        Console.WriteLine("Exception when calling GroupDocs ConvertApi: " + e.Message);
      }

    }
  }
}

如何在 C# 中將頁面範圍從 Word 轉換為 PDF

您可以將選定的 Word 頁面轉換為 PDF 文件。為此,您需要提供一系列頁面,如以下代碼示例所示。按照下面提到的步驟,以編程方式將一系列頁面從 Word 文檔轉換為 PDF 文件:

  • 首先,創建 [ConvertApi][21] 的實例
  • 其次,創建 ConvertSettings 的實例
  • 第三,提供輸入DOCX文件路徑
  • 現在,將“pdf”分配給格式
  • 接下來,創建 PdfConvertOptions 的實例
  • 提供要從起始頁碼和要轉換的總頁數轉換的頁碼範圍
  • 同時提供輸出文件路徑
  • 使用 ConvertSettings 創建 ConvertDocumentRequest
  • 最後,通過使用 ConvertDocumentRequest 調用 [convertDocument()][22] 方法進行轉換

以下代碼示例顯示瞭如何在 C# 中使用 REST API 將一系列頁面從 DOCX 轉換為 PDF:

// 如何在 CSharp 中將頁面範圍從 Word 轉換為 PDF
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 中將選定頁面從 Word 轉換為 PDF
  class Convert_Range_of_Pages_from_Word_To_PDF
  {
    static void Main(string[] args)
    {
      try
      {
      	// 創建必要的 API 實例
      	var apiInstance = new ConvertApi(configuration);
        // 準備轉換設置
        var settings = new ConvertSettings
        {
          FilePath = "csharp-testing/input-sample-file.docx",
          Format = "pdf",
          LoadOptions = new DocxLoadOptions { Password = "password" },
          ConvertOptions = new PdfConvertOptions
			    {
            FromPage = 2,
            PagesCount = 2
			    },
          OutputPath = "csharp-testing/output-sample-file.pdf"
        };
        
        // 轉換為指定格式
        var response = apiInstance.ConvertDocument(new ConvertDocumentRequest(settings));
        Console.WriteLine("Successfully converted Selected Pages to PDF file in CSharp: " + response[0].Url);
      }
      catch (Exception e)
      {
        Console.WriteLine("Exception when calling GroupDocs ConvertApi: " + e.Message);
      }

    }
  }
}
如何在 C# 中將頁面範圍從 Word 轉換為 PDF

如何在 C# 中將頁面範圍從 Word 轉換為 PDF

請按照前面提到的步驟上傳和下載文件。

如何在 C# 中將 Word 的特定頁面轉換為 PDF

您可以按照以下步驟以編程方式將 Word 文檔的特定頁面轉換為 PDF 文件:

  • 首先,創建 [ConvertApi][23] 的實例
  • 其次,創建 ConvertSettings 的實例
  • 接下來,提供輸入 DOCX 文件路徑
  • 現在,將“pdf”分配給格式
  • 創建 PdfConvertOptions 的實例
  • 提供要轉換的特定頁碼
  • 接下來,提供輸出文件路徑
  • 然後,使用 ConvertSettings 創建 ConvertDocumentRequest
  • 最後,通過使用 ConvertDocumentRequest 調用 [convertDocument()][24] 方法進行轉換

以下代碼示例顯示瞭如何在 C# 中使用 REST API 將 Word 文檔的特定頁面轉換為 PDF:

// 如何使用 CSharp 將 Word 的特定頁面轉換為 PDF
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 將 Word 的特定頁面轉換為 PDF
  class Convert_Specific_Pages_of_Word_To_PDF
  {
    static void Main(string[] args)
    {
      try
      {
      	// 創建必要的 API 實例
      	var apiInstance = new ConvertApi(configuration);
        // 準備轉換設置
        var settings = new ConvertSettings
        {
          FilePath = "csharp-testing/input-sample-file.docx",
          Format = "pdf",
          LoadOptions = new DocxLoadOptions { Password = "password" },
          ConvertOptions = new PdfConvertOptions
			    {
			        Pages = new List<int?> {1, 2} // Page numbers starts from 1
			    },
          OutputPath = "csharp-testing/output-sample-file.pdf"
        };
        
        // 轉換為指定格式
        var response = apiInstance.ConvertDocument(new ConvertDocumentRequest(settings));
        Console.WriteLine("Successfully converted specific pages of Word file to PDF file format: " + response[0].Url);
      }
      catch (Exception e)
      {
        Console.WriteLine("Exception when calling GroupDocs ConvertApi: " + e.Message);
      }

    }
  }
}
``` 請按照前面提到的步驟上傳和下載文件。


如何在 C# 中將 Word 的特定頁面轉換為 PDF

如何在 C# 中將 Word 的特定頁面轉換為 PDF

## Word 到 PDF 轉換器在線免費 如何在線免費將 Word 轉換為 PDF?請嘗試以下免費在線 Word 轉 PDF [轉換器][25],無需更改格式即可免費在線將 DOCX 轉換為 PDF,它是使用上述 API 開發的。 ## 結論 我們到這裡結束這篇文章。在這篇博文中,我們了解到: * 如何在雲端將Word文檔轉換為PDF文件; * 在 C# 中以編程方式將選定頁面從 DOCX 轉換為 PDF; * 如何使用 C# 將 Word 文檔的特定頁面轉換為 PDF; * 以編程方式將 DOCX 文件上傳到雲端,然後從雲端下載轉換後的 PDF 文件; 此外,您可以使用 [文檔][26] 了解有關 GroupDocs.Conversion Cloud API 的更多信息。我們還提供了一個 [API 參考][27] 部分,讓您可以直接通過瀏覽器可視化我們的 API 並與之交互。 最後,[groupdocs.com][28] 正在撰寫有關多種文件格式之間的在線文件轉換器的新博客文章。因此,請保持聯繫以獲取定期更新。 ## 問一個問題 有關 Word DOCX 到 PDF 轉換器的查詢/討論,請隨時訪問我們的[免費支持論壇][29]。 ## 常見問題 {#faqs} 如何在不更改字體的情況下將 DOCX 文件轉換為 PDF? 請按照 [此鏈接][30] 學習有關如何從 Word 快速創建 PDF 的 C# 代碼片段。 如何將 Word 文檔下載為 PDF? 安裝 word 到 PDF 轉換器軟件 [免費下載 C# 庫][31],以編程方式創建、下載和處理 Word DOCX 到 PDF 的轉換。 如何在 Windows 中將 Word 文檔離線轉換為 PDF? 請訪問[此鏈接](https://releases.groupdocs.app/total/windows/) 免費下載適用於 windows 的 Word 到 PDF 轉換器軟件。這款 Word 到 PDF 轉換器軟件只需單擊一下即可快速執行轉換。 如何免費在線將DOC 文件轉換為PDF? [免費的在線 DOC 到 PDF 轉換器](https://products.groupdocs.app/conversion/docx-to-pdf) 讓您可以快速輕鬆地將 Word 文檔轉換為 PDF 格式。轉換完成後,您可以下載 PDF 文件。 ## 也可以看看 * [如何在 Python 中將 EXCEL 轉換為 JSON 以及將 JSON 轉換為 EXCEL](https://blog.groupdocs.cloud/zh-hant/conversion/convert-excel-to-json-and-json-to-excel-in-python/) * [如何使用 Node.js 將 PDF 轉換為可編輯的 Word 文檔](https://blog.groupdocs.cloud/zh-hant/conversion/convert-pdf-to-editable-word-document-using-node-js/) * [在 Python 中使用 REST API 將 Word 文檔轉換為 PDF](https://blog.groupdocs.cloud/zh-hant/conversion/convert-word-documents-to-pdf-using-rest-api-in-python/) * [如何使用 REST API 在 Python 中將 PDF 轉換為 Excel](https://blog.groupdocs.cloud/zh-hant/conversion/convert-pdf-to-excel-in-python-using-rest-api/) * [在 Python 中將 CSV 轉換為 JSON 並將 JSON 轉換為 CSV](https://blog.groupdocs.cloud/zh-hant/conversion/convert-csv-to-json-and-json-to-csv-in-python/) * [在 Python 中將 PowerPoint PPT/PPTX 轉換為 JPG/JPEG 圖像](https://blog.groupdocs.cloud/zh-hant/conversion/convert-powerpoint-pptpptx-to-jpgjpeg-images-in-python/) * [在 Python 中使用 REST API 以編程方式將 HTML 轉換為 PDF](https://blog.groupdocs.cloud/zh-hant/conversion/convert-html-to-pdf-using-rest-api-in-python/) * [在 Python 中使用 REST API 以編程方式將 Excel 轉換為 CSV](https://blog.groupdocs.cloud/zh-hant/conversion/convert-excel-to-csv-using-rest-api-in-python/) * [使用 REST API 查找和替換文檔中的水印](https://blog.groupdocs.cloud/zh-hant/watermark/find-and-replace-watermark-using-rest-api/) * [在 Python 中將 XML 轉換為 CSV,將 CSV 轉換為 XML](https://blog.groupdocs.cloud/zh-hant/conversion/convert-xml-to-csv-and-csv-to-xml-in-python/) [1]: https://docs.fileformat.com/word-processing/docx/ [2]: https://docs.fileformat.com/pdf/ [3]: #CSharp-Document-and-File-Conversion-API-and-dotNET-SDK [4]: #Convert-Word-to-PDF-Programmatically-in-CSharp-using-REST-API [5]: #Convert-DOCX-File-to-PDF-in-CSharp-using-Advanced-Options [6]: #How-to-Convert-Range-of-Pages-from-Word-to-PDF-in-CSharp [7]: #How-to-Convert-Specific-Pages-of-Word-to-PDF-in-CSharp [8]: https://products.groupdocs.cloud/conversion/net/ [9]: https://docs.groupdocs.cloud/conversion/supported-document-formats/ [10]: https://products.groupdocs.cloud/conversion/family/ [11]: https://www.nuget.org/packages/GroupDocs.Conversion-Cloud/ [12]: https://dashboard.groupdocs.cloud/ [13]: #Upload-the-Word-Document [14]: #Convert-Word-File-to-PDF-Online [15]: #Download-the-Converted-File [16]: https://apireference.groupdocs.cloud/merger/#/File/UploadFile [17]: https://apireference.groupdocs.cloud/conversion/#/Convert [18]: https://apireference.groupdocs.cloud/conversion/#/Convert/ConvertDocument [19]: https://apireference.groupdocs.cloud/conversion/#/Convert [20]: https://apireference.groupdocs.cloud/conversion/#/Convert/ConvertDocument [21]: https://apireference.groupdocs.cloud/conversion/#/Convert [22]: https://apireference.groupdocs.cloud/conversion/#/Convert/ConvertDocument [23]: https://apireference.groupdocs.cloud/conversion/#/Convert [24]: https://apireference.groupdocs.cloud/conversion/#/Convert/ConvertDocument [25]: https://products.groupdocs.app/conversion/docx-to-pdf [26]: https://docs.groupdocs.cloud/conversion/ [27]: https://apireference.groupdocs.cloud/conversion/ [28]: https://blog.groupdocs.cloud/zh-hant/category/conversion/ [29]: https://forum.groupdocs.cloud/c/conversion/11 [30]: https://blog.groupdocs.cloud/zh-hant/conversion/convert-word-to-pdf-programmatically-in-csharp/#Convert-Word-to-PDF-Programmatically-in-CSharp-using-REST-API [31]: https://github.com/groupdocs-conversion-cloud/groupdocs-conversion-cloud-dotnet