C# .Net で複数の PDF ファイルを 1 つにマージする方法

REST API を使用して C# で PDF ファイルを結合する方法。

PDF(Portable Document Format) は、書式とレイアウトを維持しながらドキュメントを共有するために広く使用されています。特定のシナリオでは、情報を合理化したりアクセシビリティを向上させるために、複数の PDF ファイルを 1 つのドキュメントに結合する必要がある場合があります。 GroupDocs.Merger Cloud SDK for .Net は、PDF ファイルをプログラムで結合するための強力かつ直感的な方法を提供し、時間と労力を節約します。この記事では、REST API を使用して C# で PDF ファイルをマージおよび結合する方法を説明します。

この記事では次のトピックについて説明します。

PDF ファイルと C# SDK インストールを結合するための C# REST API

GroupDocs.Merger Cloud SDK for .NET は、開発者が PDF 結合機能を C# アプリケーションに組み込むことを可能にする強力で信頼性の高いソリューションです。 PDF ファイルをシームレスに結合および結合するための包括的な一連の機能を提供します。 SDK を使用すると、元の書式設定、レイアウト、コンテンツを維持したまま、複数の サポートされているドキュメント形式 を 1 つのドキュメントに結合できます。 SDK を C# ベースのアプリケーションに統合して、開発プロセスを簡素化できます。

GroupDocs.Merger Cloud SDK for .NET は、NuGet パッケージ マネージャー からプロジェクトにインストールするか、.NET CLI で次のコマンドを使用してインストールできます。

dotnet add package GroupDocs.Merger-Cloud --version 23.4.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";

REST API を使用して C# で複数の PDF ファイルを 1 つに結合する

開発環境がセットアップされ、SDK がインストールされたので、PDF ファイルの結合に進みましょう。次の手順を実行します:

ファイルをアップロードする

まず、次のいずれかの方法を使用して、PDF ドキュメントをクラウド ストレージにアップロードします。

// 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 ファイルは、クラウド上のダッシュボードの ファイル セクション で利用できるようになります。

C# で PDF ドキュメントを結合する

ここでは、C# でプログラム的に複数の PDF ドキュメントを 1 つのファイルに結合する方法を示す手順とコード スニペットの例を示します。

  • まず、DocumentApi クラスのインスタンスを作成します。
  • 次に、JoinItem クラスのインスタンスを作成します。
  • 3 番目に、FileInfo の最初の JoinItem の入力ファイル パスを設定します。
  • 次に、2 番目の入力ファイルの JoinItem の新しいインスタンスを作成します。
  • ここで、FileInfo の 2 番目の JoinItem の入力ファイル パスを指定します。
  • さらに JoinItem を追加して、さらに PDF ファイルを結合できます。
  • 次に、JoinOptions クラスのインスタンスを作成します。
  • 作成された結合項目のカンマ区切りリストを追加します。
  • また、クラウド上の出力ファイルのパスを設定します。
  • 次に、JoinRequest のインスタンスを作成し、JoinOptions パラメーターを渡します。
  • 最後に、DocumentApi の join() メソッドを呼び出し、JoinRequest パラメーターを渡して結果を取得します。

次のコード スニペットは、REST API を使用して C# で複数の PDF ファイルを 1 つにマージする方法を示しています。

// REST APIを使用してC#で複数のPDFファイルを1つに結合する方法
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
{
  // C# を使用して PDF ファイルを 1 つに結合する方法
  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);
      }

    }
  }
}

わずか数行のコードで、GroupDocs.Merger Cloud SDK for .Net を使用して PDF ファイルを簡単に結合できるようになりました。

ファイルをダウンロード

上記のコード例では、結合された 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);
      }

    }
  }
}

REST API を使用して C# で PDF ファイルの特定のページを結合する

GroupDocs.Merger Cloud SDK は、要件に応じて PDF 結合プロセスをカスタマイズするためのさまざまな高度なオプションを提供します。以下の手順に従って、複数の PDF ファイルの特定のページをプログラムで簡単に 1 つのファイルに結合できます。

  • まず、DocumentApi クラスのインスタンスを作成します。
  • 次に、JoinItem クラスのインスタンスを作成します。
  • 3 番目に、FileInfo の最初の JoinItem の入力ファイル パスを設定します。
  • 次に、参加するページのカンマ区切りリストを指定します。
  • 次に、2 番目の入力ファイルの JoinItem の新しいインスタンスを作成します。
  • ここで、FileInfo の 2 番目の JoinItem の入力ファイル パスを指定します。
  • StartPageNumber、EndPageNumber、および RangeMode の値を設定します。
  • さらに JoinItem を追加して、さらに PDF ファイルを結合できます。
  • 次に、JoinOptions クラスのインスタンスを作成します。
  • 作成された結合項目のカンマ区切りリストを追加します。
  • また、クラウド上の出力ファイルのパスを設定します。
  • 次に、JoinRequest のインスタンスを作成し、JoinOptions パラメーターを渡します。
  • 最後に、DocumentApi の join() メソッドを呼び出し、JoinRequest パラメータを渡して結果を取得します。

次のコード スニペットは、REST API を使用して C# .NET の 2 つの PDF ファイルから特定のページを結合する方法を示しています。

// C# で複数の PDF ファイルの特定のページを結合する方法
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
{
  // C# で PDF ファイルを 1 つに結合する
  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 ファイルをオンラインで無料で 1 つに結合するにはどうすればよいですか?任意のデバイスから複数の PDF ファイルを 1 つのファイルに結合するには、次の online PDF Merger アプリケーションをお試しください。

まとめ

結論として、GroupDocs.Merger Cloud SDK for .Net は、C# アプリケーションで PDF ファイルをマージするための信頼性の高い効率的なソリューションを提供します。このブログ投稿は私たちに次のことを教えてくれました。

  • クラウド上の C# .NET で複数の PDF ファイルを 1 つに結合する方法。
  • プログラムによってクラウドから PDF ファイルをアップロードおよびダウンロードします。
  • C# で複数の PDF ファイルの特定のページを 1 つのファイルに結合する方法。
  • 無料のオンライン PDF ファイル結合ツール。

さらに、ドキュメント を使用して、GroupDocs.Merge Cloud API の詳細を学ぶことができます。また、ブラウザーを通じて API を直接視覚化して操作できる API リファレンス セクションも提供しています。 GroupDocs.Merger Cloud SDK for .Net の完全なソース コードは、GitHub で無料で入手できます。

最後に、私たちはさまざまなファイル形式で新しいブログ記事を書き続け、REST API を使用してそれらを解析します。最新の更新情報については、お問い合わせください。

質問する

PDF Merger API についてご質問がある場合は、フォーラム 経由でお気軽にお問い合わせください。

よくある質問

C# を使用して、異なる PDF ファイルの特定のページを結合することはできますか?

はい、GroupDocs.Merger Cloud SDK for .NET を使用すると、ページ範囲を指定して、異なる PDF ファイルの特定のページを結合できます。これにより、必要に応じて関連情報を柔軟に抽出して組み合わせることができます。

オンライン PDF マージ ライブラリをインストールするにはどうすればよいですか?

GroupDocs.Merger Cloud SDK for .Net は、公式 GroupDocs Web サイト から入手できます。提供されるインストール手順に従って、C# アプリケーションに SDK をセットアップします。

複数の PDF ファイルをオンラインで無料で結合するにはどうすればよいですか?

オンライン PDF 結合ツール にアクセスして、2 つ以上の PDF ファイルを数秒で無料で結合して結合してください。

関連項目

関連トピックについてさらに詳しく知りたい場合は、以下の記事を読むことをお勧めします。