テキストとグラフィックの両方を使用したPDFヘッダーのカスタマイズは、クラウドベースのレポーティングソリューションで一般的な要件です。Aspose.PDF Cloud SDK for .NET を使用すると、C# でシンプルな API 呼び出しにより、PDF ヘッダーにテキストと画像をプログラムで追加できます。このチュートリアルでは、完全なコード例、cURL の代替手段、ステップバイステップの解説をご覧いただけます。最後まで読むと、クラウド環境で PDF のすべてのページにブランド化されたヘッダーを埋め込むことができるようになります。

C#でPDFヘッダーにテキストと画像を追加する - 完全なコード例

次の例は、Aspose.PDF Cloud SDK for .NET を使用して C# で PDF ヘッダーにテキストと画像を追加する方法を示しています。

using System;
using System.Collections.Generic;
using System.IO;
using Aspose.Pdf.Cloud.Sdk.Api;
using Aspose.Pdf.Cloud.Sdk.Client;
using Aspose.Pdf.Cloud.Sdk.Model;

class Program
{
    static void Main()
    {
        // -------------------------------------------------
        // Configuration – replace with your actual App SID and API Key
        // -------------------------------------------------
        var config = new Configuration
        {
            ApiKey = new Dictionary<string, string> { { "api_key", "YOUR_API_KEY" } },
            Host = "https://api.aspose.cloud"
        };
        var pdfApi = new PdfApi(config);

// -------------------------------------------------
        // File names (local)
        // -------------------------------------------------
        string localPdfPath = "input.pdf";
        string localImagePath = "headerImage.png";
        string outputPdfPath = "output.pdf";

// -------------------------------------------------
        // Upload PDF to Aspose Cloud storage
        // -------------------------------------------------
        using (var pdfStream = File.OpenRead(localPdfPath))
        {
            pdfApi.UploadFile(Path.GetFileName(localPdfPath), pdfStream);
        }

// -------------------------------------------------
        // Upload image to Aspose Cloud storage
        // -------------------------------------------------
        using (var imgStream = File.OpenRead(localImagePath))
        {
            pdfApi.UploadFile(Path.GetFileName(localImagePath), imgStream);
        }

// -------------------------------------------------
        // Build HeaderFooter object with text and image
        // -------------------------------------------------
        var headerFooter = new HeaderFooter
        {
            // Text part
            TextState = new TextState
            {
                Value = "Confidential Document",
                FontSize = 14,
                Font = "Helvetica",
                FontStyle = FontStyles.Bold,
                ForegroundColor = new Color { A = 255, R = 255, G = 0, B = 0 } // Red color
            },
            // Image part
            Image = new Image
            {
                File = Path.GetFileName(localImagePath), // reference uploaded image
                Width = 100,
                Height = 30,
                HorizontalAlignment = HorizontalAlignment.Center,
                Margin = new MarginInfo { Top = 5, Bottom = 5, Left = 5, Right = 5 }
            },
            // Header margin (optional)
            Margin = new MarginInfo { Top = 10, Bottom = 0, Left = 0, Right = 0 }
        };

// -------------------------------------------------
        // Apply header to all pages of the PDF
        // -------------------------------------------------
        pdfApi.PutHeaderFooter(Path.GetFileName(localPdfPath), headerFooter);

// -------------------------------------------------
        // Download the updated PDF
        // -------------------------------------------------
        using (var resultStream = pdfApi.GetDocument(Path.GetFileName(localPdfPath)))
        using (var fileStream = File.Create(outputPdfPath))
        {
            resultStream.CopyTo(fileStream);
        }

// -------------------------------------------------
        // Optional: clean up uploaded files from cloud storage
        // -------------------------------------------------
        pdfApi.DeleteFile(Path.GetFileName(localPdfPath));
        pdfApi.DeleteFile(Path.GetFileName(localImagePath));
    }
}

注: このコード例はコア機能を示しています。プロジェクトで使用する前に、ファイルパスや設定値を実際の環境に合わせて更新し、すべての必須依存関係が正しくインストールされていることを確認し、開発環境で徹底的にテストしてください。問題が発生した場合は、公式ドキュメントをご参照いただくか、サポートチームにお問い合わせください。

cURL を使用した PDF ヘッダー (Cloud) へのテキストと画像の挿入

REST API を使用して同じ操作を実行できます。以下は必須の cURL コマンドです。

# 1. Obtain an access token (replace YOUR_CLIENT_ID and YOUR_CLIENT_SECRET)
curl -X POST "https://api.aspose.cloud/connect/token" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "grant_type=client_credentials&client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET"
# 2. Upload the source PDF
curl -X PUT "https://api.aspose.cloud/v3.0/pdf/storage/file/input.pdf" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/pdf" \
  --data-binary "@input.pdf"
# 3. Upload the header image (PNG)
curl -X PUT "https://api.aspose.cloud/v3.0/pdf/storage/file/headerImage.png" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: image/png" \
  --data-binary "@headerImage.png"
# 4. Apply header with text and image
curl -X PUT "https://api.aspose.cloud/v3.0/pdf/input.pdf/headerfooter" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
        "TextState": {
            "Value": "Confidential Document",
            "FontSize": 14,
            "Font": "Helvetica",
            "FontStyle": "Bold",
            "ForegroundColor": { "A":255,"R":255,"G":0,"B":0 }
        },
        "Image": {
            "File": "headerImage.png",
            "Width": 100,
            "Height": 30,
            "HorizontalAlignment": "Center",
            "Margin": { "Top":5,"Bottom":5,"Left":5,"Right":5 }
        },
        "Margin": { "Top":10,"Bottom":0,"Left":0,"Right":0 }
      }'
# 5. Download the updated PDF
curl -X GET "https://api.aspose.cloud/v3.0/pdf/input.pdf" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -o output.pdf
<!--CODE_SNIPPET_END]-->

各エンドポイントの詳細については、[公式 API ドキュメント](https://reference.aspose.cloud/pdf/)をご覧ください。

## C# で PDF ヘッダーにテキストと画像を追加する手順

C# でコードが PDF ヘッダーにテキストと画像を追加する仕組みを理解すれば、他のシナリオにも応用しやすくなります。以下に簡潔な手順を示します。

1. **Configuration の設定** – `Configuration` オブジェクトは API キーとホスト URL を保持します。  
   <!--CODE_SNIPPET_START-->
   ```csharp
   var [config](https://docs.fileformat.com/programming/config/) = new Configuration
   {
       ApiKey = new Dictionary<string, string> { { "api_key", "YOUR_API_KEY" } },
       Host = "https://api.aspose.cloud"
   };
  1. ファイルのアップロードUploadFile はローカルの PDF と画像を Aspose Cloud ストレージに送信します。

    pdfApi.UploadFile(Path.GetFileName(localPdfPath), pdfStream);
    pdfApi.UploadFile(Path.GetFileName(localImagePath), imgStream);
    
  2. HeaderFooter の作成HeaderFooter モデルはテキスト用の TextState と画像用の Image オブジェクトを組み合わせます。

    var headerFooter = new HeaderFooter
    {
        TextState = new TextState { Value = "Confidential Document", FontSize = 14, Font = "Helvetica", FontStyle = FontStyles.Bold, ForegroundColor = new Color { A = 255, R = 255, G = 0, B = 0 } },
        Image = new Image { File = Path.GetFileName(localImagePath), Width = 100, Height = 30, HorizontalAlignment = HorizontalAlignment.Center }
    };
    
  3. ヘッダーの適用PutHeaderFooter は指定した PDF のすべてのページにヘッダーを付加します。

    pdfApi.PutHeaderFooter(Path.GetFileName(localPdfPath), headerFooter);
    
  4. ダウンロードとクリーンアップGetDocument で変更後の PDF を取得し、DeleteFile でクラウドストレージの一時ファイルを削除します。

    var resultStream = pdfApi.GetDocument(Path.GetFileName(localPdfPath));
    pdfApi.DeleteFile(Path.GetFileName(localPdfPath));
    pdfApi.DeleteFile(Path.GetFileName(localImagePath));
    

HeaderFooter クラスの詳細については、API リファレンスをご参照ください。

Aspose.PDF Cloud SDK for .NET のインストールと設定

  1. NuGet パッケージを追加
   dotnet add package Aspose.PDF-Cloud
  1. SDK バイナリのダウンロード – 公式ダウンロードページから最新リリースを取得できます: Aspose.PDF Cloud SDK for .NET ダウンロード.

  2. 前提条件 – .NET 6.0 以降、Aspose Cloud アカウント、そして有効なクライアント認証情報(App SID と API キー)が必要です。

  3. クライアントの初期化 – 完全なサンプルに示した設定コードと同様に使用して、クラウドサービスに接続します。

SDK をインストールし認証情報が準備できたら、すぐに C# で PDF ヘッダーにテキストと画像を追加できます。

結論

C# で PDF ヘッダーにテキストと画像を追加する作業は、Aspose.PDF Cloud SDK for .NET の力を活用すれば簡単になります。このライブラリはファイルのアップロード、ヘッダーの構築、ドキュメントの取得を数回の API 呼び出しで処理でき、クラウドベースの PDF 処理パイプラインに最適です。API キーを安全に管理し、使用制限を守り、ページサイズが異なる場合でもヘッダーがはみ出さないようレイアウトをテストしてください。本番環境での利用には商用ライセンスが必要です。価格情報は製品ページで確認でき、一時ライセンスページ から評価用の一時ライセンスを取得できます。ぜひブランド化されたヘッダーを統合し、PDF にプロフェッショナルな外観を付与しましょう。

FAQ

  • C# のクラウドライブラリで PDF ヘッダーにテキストと画像を追加する方法は?
    HeaderFooter モデルで TextStateImage を定義し、PutHeaderFooter を呼び出します。この記事の完全なコード例に手順が示されています。

  • C# コードを書かずにクラウドで PDF ヘッダーにテキストと画像を挿入できますか?
    はい、同じ操作は REST 呼び出しで実行できます。cURL セクションにファイルをアップロードしヘッダーを適用するスクリプトが用意されています。

  • ヘッダーでサポートされている画像形式は何ですか?
    API は PNG や JPEG などの一般的な形式を受け付けます。画像サイズはヘッダー余白に収まるよう、例えば 100 × 30 など適切に設定してください。

  • 本番環境で実行するにはライセンスが必要ですか?
    本番利用には商用ライセンスが必要です。価格は製品ページで確認し、購入前に 一時ライセンスページ で SDK を評価できます。

さらに読む