Як об’єднати декілька файлів PDF в один у C# .Net

Як об’єднати PDF-файли в C# за допомогою REST API.

PDF(Portable Document Format) широко використовується для обміну документами зі збереженням їх форматування та компонування. У певних ситуаціях вам може знадобитися об’єднати кілька PDF-файлів в один документ, щоб оптимізувати інформацію або покращити доступність. GroupDocs.Merger Cloud SDK для .Net забезпечує потужний та інтуїтивно зрозумілий спосіб програмного об’єднання файлів PDF, заощаджуючи ваш час і зусилля. У цій статті ми розглянемо, як об’єднати та об’єднати PDF-файли в C# за допомогою REST API.

У цій статті будуть розглянуті такі теми:

C# REST API для об’єднання PDF-файлів і встановлення C# SDK

GroupDocs.Merger Cloud SDK для .NET — це потужне та надійне рішення, яке дозволяє розробникам інтегрувати можливості об’єднання PDF-файлів у свої програми C#. Він пропонує повний набір можливостей і функцій для легкого об’єднання та поєднання PDF-файлів. Використовуючи SDK, ви можете об’єднати кілька підтримуваних форматів документів в один документ, зберігаючи їх оригінальне форматування, макет і вміст. SDK можна інтегрувати в програму на основі C#, щоб спростити процес розробки.

Ви можете інсталювати GroupDocs.Merger Cloud SDK для .NET у свій проект із NuGet Package manager або за допомогою такої команди в .NET CLI:

dotnet add package GroupDocs.Merger-Cloud --version 23.4.0

Потім зберіть ідентифікатор клієнта та секрет клієнта з інформаційної панелі, перш ніж почати виконувати кроки та доступні приклади коду. Додайте ідентифікатор клієнта та секрет клієнта в код, як показано нижче:

//Отримайте clientId і clientSecret на https://dashboard.groupdocs.cloud (потрібна безкоштовна реєстрація).
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";

Об’єднання кількох PDF-файлів в один у C# за допомогою REST API

Тепер, коли наше середовище розробки налаштовано та SDK встановлено, приступимо до об’єднання PDF-файлів. Виконайте такі дії:

Завантажте файли

По-перше, завантажте PDF-документ у хмарне сховище будь-яким із наведених нижче способів:

  • Використання інформаційної панелі
  • Завантажуйте всі файли один за одним за допомогою Upload File API із браузера
  • Завантажте програмним способом, використовуючи наведений нижче приклад коду:
// Завантажуйте файли за допомогою C#
using System;
using System.IO;
using GroupDocs.Merger.Cloud.Sdk.Api;
using GroupDocs.Merger.Cloud.Sdk.Client;
using GroupDocs.Merger.Cloud.Sdk.Model;
using GroupDocs.Merger.Cloud.Sdk.Model.Requests;

namespace GroupDocs.Merger.CSharp
{
  class Upload_PDF_Files

  {
    static void Main(string[] args)
    {
      
      try
      {
        // Створіть необхідні екземпляри API
        var storageApi = new StorageApi(configuration);
        var fileApi = new FileApi(configuration);

        var path = @"H:\groupdocs-cloud-data";

        var files = Directory.GetFiles(path, "*.pdf", SearchOption.AllDirectories);
        foreach (var file in files)
        {
          var relativeFilePath = file.Replace(path, string.Empty).Trim(Path.DirectorySeparatorChar);

          var response = storageApi.ObjectExists(new ObjectExistsRequest(relativeFilePath, myStorage));
          if (response.Exists != null && !response.Exists.Value)
          {
            var fileStream = File.Open(file, FileMode.Open);

            fileApi.UploadFile(new UploadFileRequest(relativeFilePath, fileStream, myStorage));
            fileStream.Close();
          }
        }

        Console.WriteLine("File Uploaded to Cloud Storage.");
      }
      catch (Exception e)
      {
        Console.WriteLine("Exception when calling GroupDocs API: " + e.Message);
      }

    }
  }
}

У результаті завантажений PDF-файл буде доступний у розділі файлів вашої інформаційної панелі в хмарі.

Об’єднання PDF-документів у C#

Ось кроки та приклад фрагмента коду, який демонструє, як об’єднати кілька PDF-документів в один файл програмним шляхом у C#.

  • По-перше, створіть екземпляр класу DocumentApi.
  • По-друге, створіть екземпляр класу JoinItem.
  • По-третє, встановіть шлях до вхідного файлу для першого JoinItem у FileInfo.
  • Потім створіть новий екземпляр JoinItem для другого вхідного файлу.
  • Тепер укажіть шлях до вхідного файлу для другого JoinItem у FileInfo.
  • Ви можете додати більше JoinItems, щоб об’єднати більше файлів PDF.
  • Далі створіть екземпляр класу JoinOptions.
  • Додайте розділений комами список створених об’єднаних елементів.
  • Крім того, установіть вихідний шлях до файлу в хмарі.
  • Тепер створіть екземпляр JoinRequest і передайте параметр JoinOptions.
  • Нарешті, отримуйте результати, викликаючи метод join() DocumentApi і передаючи параметр JoinRequest.

У наведеному нижче фрагменті коду показано, як об’єднати кілька файлів PDF в один на C# за допомогою REST API:

// Як об’єднати кілька PDF-файлів в один на C# за допомогою REST API
using System;
using GroupDocs.Merger.Cloud.Sdk.Api;
using GroupDocs.Merger.Cloud.Sdk.Client;
using GroupDocs.Merger.Cloud.Sdk.Model;
using GroupDocs.Merger.Cloud.Sdk.Model.Requests;

namespace GroupDocs.Merger.CSharp
{
  // Як об’єднати PDF-файли в один за допомогою C#
  class Merge_PDF_Files

  {
    static void Main(string[] args)
    {

      try
      {
        // Створіть необхідні екземпляри API
        var documentApi = new DocumentApi(configuration);
        var item1 = new JoinItem
        {
          FileInfo = new GroupDocs.Merger.Cloud.Sdk.Model.FileInfo
          {
            FilePath = "csharp-testing/sample-file-one.pdf"
          }
        };

        var item2 = new JoinItem
        {
          FileInfo = new GroupDocs.Merger.Cloud.Sdk.Model.FileInfo
          {
            FilePath = "csharp-testing/sample-file-two.pdf"
          }
        };

        var options = new JoinOptions
        {
          JoinItems = new List<JoinItem> { item1, item2 },
          OutputPath = "csharp-testing/merged-file.pdf"
        };

        var request = new JoinRequest(options);
        var response = documentApi.Join(request);
        Console.WriteLine("Successfully merged PDF files in C#: " + response.Path);
      }
      catch (Exception e)
      {
        Console.WriteLine("Exception when calling GroupDocs Api: " + e.Message);
      }

    }
  }
}

За допомогою лише кількох рядків коду тепер ви можете легко об’єднати PDF-файли за допомогою GroupDocs.Merger Cloud SDK для .Net.

Завантажте файл

Наведений вище приклад коду збереже об’єднаний PDF-файл у хмарі. Ви можете завантажити його за допомогою такого фрагмента коду:

// Завантажте отриманий файл із хмари
using System;
using GroupDocs.Conversion.Cloud.Sdk.Api;
using GroupDocs.Conversion.Cloud.Sdk.Client;
using GroupDocs.Conversion.Cloud.Sdk.Model.Requests;

namespace GroupDocs.Merger.CSharp
{
  // Завантажити вихідний файл
  class Download_File
  {
    static void Main(string[] args)
    {
      try
      {
        // ініціалізувати api
        var fileApi = new FileApi(configuration);
        // створити запит на завантаження файлу
        var downloadRequest = new DownloadFileRequest("csharp-testing/merged-file.pdf", myStorage);
        // завантажити файл
        Stream downloadResponse = fileApi.DownloadFile(downloadRequest);

        // зберегти файл у робочому каталозі
        using (var fileStream = System.IO.File.Create("H:\\groupdocs-cloud-data\\merged-file.pdf"))
        {
          downloadResponse.Seek(0, SeekOrigin.Begin);
          downloadResponse.CopyTo(fileStream);
        }
        Console.WriteLine("File downloaded successfully.");
      }
      catch (Exception e)
      {
        Console.WriteLine("Exception when calling GroupDocs FileApi: " + e.Message);
      }

    }
  }
}

Об’єднайте певні сторінки PDF-файлів у C# за допомогою REST API

GroupDocs.Merger Cloud SDK пропонує різні розширені параметри для налаштування процесу об’єднання PDF-файлів відповідно до ваших вимог. Ви можете легко поєднати певні сторінки з кількох PDF-файлів в один програмним шляхом, виконавши наведені нижче дії.

  • По-перше, створіть екземпляр класу DocumentApi.
  • По-друге, створіть екземпляр класу JoinItem.
  • По-третє, встановіть шлях до вхідного файлу для першого JoinItem у FileInfo.
  • Далі надайте список сторінок, розділених комами, для приєднання.
  • Потім створіть новий екземпляр JoinItem для другого вхідного файлу.
  • Тепер укажіть шлях до вхідного файлу для другого JoinItem у FileInfo.
  • Установіть значення StartPageNumber, EndPageNumber і RangeMode.
  • Ви можете додати більше JoinItems, щоб об’єднати більше файлів PDF.
  • Далі створіть екземпляр класу JoinOptions.
  • Додайте розділений комами список створених об’єднаних елементів.
  • Крім того, установіть вихідний шлях до файлу в хмарі.
  • Тепер створіть екземпляр JoinRequest і передайте параметр JoinOptions.
  • Нарешті, отримуйте результати, викликавши метод join() DocumentApi і передавши параметр JoinRequest.

У наведеному нижче фрагменті коду показано, як об’єднати певні сторінки з двох PDF-файлів у C# .NET за допомогою REST API:

// Як об’єднати певні сторінки кількох PDF-файлів у C#
using System;
using GroupDocs.Merger.Cloud.Sdk.Api;
using GroupDocs.Merger.Cloud.Sdk.Client;
using GroupDocs.Merger.Cloud.Sdk.Model;
using GroupDocs.Merger.Cloud.Sdk.Model.Requests;

namespace GroupDocs.Merger.CSharp
{
  // Об’єднайте PDF-файли в один у C#
  class Merge_PDF_Files
  {
    static void Main(string[] args)
    { 

      try
      {
        
        // Створіть необхідні екземпляри API
        var documentApi = new DocumentApi(configuration);
        var item1 = new JoinItem
        {
          FileInfo = new GroupDocs.Merger.Cloud.Sdk.Model.FileInfo
          {
            FilePath = "csharp-testing/sample-file-one.pdf"
          },
          Pages = new List<int?> { 1, 4, 7 }
        };

        var item2 = new JoinItem
        {
          FileInfo = new GroupDocs.Merger.Cloud.Sdk.Model.FileInfo
          {
            FilePath = "csharp-testing/sample-file-two.pdf"
          },
          StartPageNumber = 1,
          EndPageNumber = 5,
          RangeMode = JoinItem.RangeModeEnum.OddPages
        };

        var options = new JoinOptions
        {
          JoinItems = new List<JoinItem> { item1, item2 },
          OutputPath = "csharp-testing/merged-file.pdf"
        };

        var request = new JoinRequest(options);
        var response = documentApi.Join(request);
        Console.WriteLine("Successfully combined two PDF files into one in CSharp: " + response.Path);
      }
      catch (Exception e)
      {
        Console.WriteLine("Exception when calling GroupDocs Api: " + e.Message);
      }

    }
  }
}

Безкоштовне онлайнове злиття PDF-файлів

Як безкоштовно об’єднати PDF-файли в один онлайн? Спробуйте наведену нижче програму online PDF Merger, щоб об’єднати кілька файлів PDF в один файл із будь-якого пристрою.

Підводячи підсумки

На завершення GroupDocs.Merger Cloud SDK для .Net забезпечує надійне та ефективне рішення для об’єднання PDF-файлів у програмах C#. Ця публікація в блозі навчила нас:

  • як об’єднати декілька файлів PDF в один у C# .NET у хмарі;
  • програмно завантажувати та завантажувати PDF-файл із хмари;
  • як об’єднати конкретні сторінки кількох файлів PDF в один файл на C#;
  • і безкоштовний онлайн-інструмент для об’єднання PDF-файлів.

Крім того, ви можете дізнатися більше про GroupDocs.Merge Cloud API за допомогою документації. Ми також надаємо розділ API Reference, який дозволяє візуалізувати наші API та взаємодіяти з ними безпосередньо через браузер. Повний вихідний код GroupDocs.Merger Cloud SDK для .Net є у вільному доступі на GitHub.

Нарешті, ми продовжуємо писати нові статті в блозі про різні формати файлів і аналізувати їх за допомогою REST API. Тому зв’яжіться з нами, щоб отримати останні оновлення.

Задайте питання

Якщо у вас виникнуть запитання щодо PDF Merger API, будь ласка, зв’яжіться з нами через наш форум.

поширені запитання

Чи можна об’єднати певні сторінки з різних файлів PDF за допомогою C#?

Так, використовуючи GroupDocs.Merger Cloud SDK для .NET, ви можете вказати діапазони сторінок для об’єднання окремих сторінок із різних файлів PDF. Це дає вам можливість витягувати та об’єднувати відповідну інформацію за потреби.

Як я можу встановити онлайн-бібліотеку злиття PDF?

Ви можете отримати GroupDocs.Merger Cloud SDK для .Net на офіційному веб-сайті GroupDocs. Дотримуйтеся наданих інструкцій із встановлення SDK у програмі C#.

Як безкоштовно об’єднати кілька PDF-файлів онлайн?

Відвідайте онлайн-інструмент PDF Merger, щоб безкоштовно за лічені секунди об’єднати два або більше PDF-файлів.

Дивись також

Якщо ви хочете дізнатися більше про пов’язані теми, радимо прочитати наведені нижче статті.