C#を使用してPDFにヘッダーとフッターを追加する

ドキュメントのヘッダーセクションとフッターセクションには、ドキュメントのタイトル、ロゴ、章の見出し、ページ番号などのドキュメント情報が表示されます。プログラムでPDFドキュメントのヘッダー/フッターにテキストや画像を追加できます。この記事では、C#を使用してPDFドキュメントにヘッダーとフッターを追加する方法を学習します。

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

PDFドキュメントにヘッダーとフッターを追加するC#API

PDFファイルにヘッダーとフッターを追加するには、Aspose.PDF for .NETAPIを使用します。これにより、Adobe Acrobatを使用せずに、サポートされているドキュメントを生成、変更、変換、レンダリング、保護、および印刷することができます。 APIのDLLをダウンロードするか、NuGetを使用してインストールしてください。

Install-Package Aspose.PDF

C#を使用してPDFのヘッダーにテキストを追加する

以下の手順に従って、既存のPDFドキュメントのヘッダーにテキストを追加できます。

  1. まず、入力ファイルのパスを引数としてDocumentクラスを使用してPDFドキュメントをロードします。これは、PDFドキュメントを表し、さまざまな機能を実行できるようにするメインクラスです。
  2. 次に、ドキュメントのヘッダーに表示するテキストを使用して、TextStampクラスのインスタンスを作成します。
  3. 次に、TopMargin、HorizontalAlignment、VerticalAlignmentなどのさまざまなプロパティをTopとして設定します。
  4. オプションで、テキストのForegroundColor、Font、FontStyle、FontSize、BackgroundColor、RotateAngle、Zoomレベルを設定します。
  5. その後、すべてのページをループし、TextStampオブジェクトでPage.AddStamp()メソッドを使用してヘッダーを追加します。
  6. 最後に、出力ファイルのパスを引数としてDocument.Save()メソッドを呼び出し、出力ファイルを保存します。

次のコードサンプルは、C#を使用してPDFドキュメントのヘッダーにテキストを追加する方法を示しています。

// このコード例は、既存のPDFドキュメントのヘッダーにテキストを追加する方法を示しています。
// PDFドキュメントをロードする
Document pdfDocument = new Document(@"C:\Files\sample.pdf");

// ヘッダーを作成する
TextStamp textStamp = new TextStamp("Header Text");

// スタンプのプロパティを設定する
textStamp.TopMargin = 10;
textStamp.HorizontalAlignment = HorizontalAlignment.Center;
textStamp.VerticalAlignment = VerticalAlignment.Top;

// フォントスタイルを指定します
textStamp.TextState.FontStyle = FontStyles.Bold;
textStamp.TextState.ForegroundColor = Color.Red;
textStamp.TextState.FontSize = 14;
textStamp.TextState.BackgroundColor = Color.Pink;
textStamp.TextState.Font = FontRepository.FindFont("Verdana");

// すべてのページにヘッダーを追加
foreach (Page page in pdfDocument.Pages)
{
    page.AddStamp(textStamp);
}

// 更新したドキュメントを保存する
pdfDocument.Save(@"C:\Files\output.pdf");
C#を使用してPDFのヘッダーにテキストを追加します。

C#を使用してPDFのヘッダーにテキストを追加します。

前述の手順に従って、プログラムでPDFドキュメントのフッターにテキストを追加できます。ただし、フッターにテキストを表示するには、BottomMarginとVerticalAlignmentをBottomとして設定する必要があります。

次のコードサンプルは、C#を使用してPDFドキュメントのフッターにテキストを追加する方法を示しています。

// このコード例は、既存のPDFドキュメントのフッターにテキストを追加する方法を示しています。
// PDFドキュメントをロードする
Document pdfDocument = new Document(@"C:\Files\sample.pdf");

// フッターを作成する
TextStamp textStamp = new TextStamp("Footer Text");

// スタンプのプロパティを設定する
textStamp.BottomMargin = 10;
textStamp.HorizontalAlignment = HorizontalAlignment.Center;
textStamp.VerticalAlignment = VerticalAlignment.Bottom;

// すべてのページにフッターを追加
foreach (Page page in pdfDocument.Pages)
{
    page.AddStamp(textStamp);
}

// 更新したドキュメントを保存する
pdfDocument.Save(@"C:\Files\output.pdf");
C#を使用してPDFのフッターにテキストを追加します。

C#を使用してPDFのフッターにテキストを追加します。

C#を使用してPDFのヘッダーに画像を挿入する

以下の手順に従って、既存のPDFドキュメントのヘッダーに画像を追加することもできます。

  1. まず、入力ファイルのパスを引数としてDocumentクラスを使用してPDFドキュメントをロードします。
  2. 次に、引数として画像ファイルのパスを使用して、ImageStampクラスのインスタンスを作成します。
  3. 次に、TopMargin、HorizontalAlignment、VerticalAlignmentなどのさまざまなプロパティをTopとして設定します。
  4. その後、すべてのページをループし、ImageStampオブジェクトでPage.AddStamp()メソッドを使用してヘッダーを追加します。
  5. 最後に、出力ファイルのパスを引数としてDocument.Save()メソッドを呼び出し、出力ファイルを保存します。

次のコードサンプルは、C#を使用してPDFドキュメントのヘッダーに画像を追加する方法を示しています。

// このコード例は、既存のPDFドキュメントのヘッダーに画像を追加する方法を示しています。
// PDFドキュメントをロードする
Document pdfDocument = new Document(@"C:\Files\sample.pdf");

// ヘッダーを作成する
ImageStamp imageStamp = new ImageStamp(@"C:\Files\conholdate-logo.jpg");

// スタンプのプロパティを設定する
imageStamp.TopMargin = 10;
imageStamp.HorizontalAlignment = HorizontalAlignment.Center;
imageStamp.VerticalAlignment = VerticalAlignment.Top;

// すべてのページにヘッダーを追加
foreach (Page page in pdfDocument.Pages)
{
    page.AddStamp(imageStamp);
}

// 更新したドキュメントを保存する
pdfDocument.Save(@"C:\Files\output.pdf");
C#を使用してPDFのヘッダーに画像を挿入します。

C#を使用してPDFのヘッダーに画像を挿入します。

前述の手順に従って、プログラムでPDFドキュメントのフッターに画像を追加できます。ただし、フッターに画像を表示するには、BottomMarginとVerticalAlignmentをBottomとして設定する必要があります。

次のコードサンプルは、C#を使用してPDFドキュメントのフッターに画像を追加する方法を示しています。

// このコード例は、既存のPDFドキュメントのフッターに画像を追加する方法を示しています。
// PDFドキュメントをロードする
Document pdfDocument = new Document(@"C:\Files\sample.pdf");

// フッターを作成する
ImageStamp imageStamp = new ImageStamp(@"C:\Files\conholdate-logo.jpg");

// スタンプのプロパティを設定する
imageStamp.BottomMargin = 10;
imageStamp.HorizontalAlignment = HorizontalAlignment.Center;
imageStamp.VerticalAlignment = VerticalAlignment.Bottom;

// すべてのページにフッターを追加
foreach (Page page in pdfDocument.Pages)
{
    page.AddStamp(imageStamp);
}

// 更新したドキュメントを保存する
pdfDocument.Save(@"C:\Files\output.pdf");
C#を使用してPDFのフッターに画像を挿入します。

C#を使用してPDFのフッターに画像を挿入します。

異なるページに異なるヘッダーとフッターを追加する

以下の手順に従って、1つのPDFドキュメントのページごとに異なるヘッダー/フッターを追加できます。

  1. まず、入力ファイルのパスを引数としてDocumentクラスを使用してPDFドキュメントをロードします。
  2. 次に、画像ファイルのパスを使用してImageStampクラスの複数のインスタンスを作成するか、表示するテキストを使用してTextStampクラスを作成します。
  3. 次に、TopMargin、HorizontalAlignment、VerticalAlignmentなどのさまざまなプロパティをヘッダーのTopとして設定し、BottomMarginとVerticalAlignmentをフッターのBottomとして設定します。
  4. その後、ページのImageStampまたはTextStampオブジェクトでPage.AddStamp()メソッドを使用して、ヘッダーまたはフッターを追加します。
  5. 最後に、出力ファイルのパスを引数としてDocument.Save()メソッドを呼び出し、出力ファイルを保存します。

次のコードサンプルは、C#を使用して単一のPDFドキュメントに複数のヘッダーとフッターを追加する方法を示しています。

// このコード例は、単一のPDFドキュメントのさまざまなページにさまざまなヘッダーを追加する方法を示しています。
// PDFドキュメントをロードする
Document pdfDocument = new Document(@"C:\Files\sample.pdf");

// 3つのスタンプを作成します
ImageStamp stamp1 = new ImageStamp(@"C:\Files\PDF\conholdate-logo.jpg");
TextStamp stamp2 = new TextStamp("Header Stamp 2");
TextStamp stamp3 = new TextStamp("Header Stamp 3");

// スタンプ1のスタンプの配置を設定する
stamp1.VerticalAlignment = VerticalAlignment.Top;
stamp1.HorizontalAlignment = HorizontalAlignment.Center;

// スタンプ2のスタンプ配置を設定します
stamp2.VerticalAlignment = VerticalAlignment.Top;
// スタンプの水平方向の配置情報を中央揃えに設定します
stamp2.HorizontalAlignment = HorizontalAlignment.Center;
// スタンプオブジェクトのズーム率を設定します
stamp2.Zoom = 10;

// スタンプ3のスタンプ配置を設定します
stamp3.VerticalAlignment = VerticalAlignment.Top;
// スタンプオブジェクトの水平方向の配置情報を中央揃えに設定します
stamp3.HorizontalAlignment = HorizontalAlignment.Center;
// スタンプオブジェクトの回転角度を設定します
stamp3.RotateAngle = 35;


// 最初のページに最初のスタンプを追加します。
pdfDocument.Pages[1].AddStamp(stamp1);

// 2ページ目に2番目のスタンプを追加します。
pdfDocument.Pages[2].AddStamp(stamp2);

// 3ページ目に3番目のスタンプを追加します。
pdfDocument.Pages[3].AddStamp(stamp3);

// 更新したドキュメントを保存する
pdfDocument.Save(@"C:\Files\output.pdf");

以下の手順に従って、PDFドキュメントのフッターセクションにページ番号を追加できます。

  1. まず、入力ファイルのパスを引数としてDocumentクラスを使用してPDFドキュメントをロードします。
  2. 次に、Document.Pagesコレクションの各ページに対して次の手順を実行します。
    • 現在のページ番号と連結されたテキストを使用して、TextStampクラスのインスタンスを作成します。
    • 次に、BottomMargin、HorizontalAlignment、VerticalAlignmentなどのさまざまなプロパティをBottomとして設定します。
    • その後、TextStampオブジェクトを指定してPage.AddStamp()メソッドを呼び出し、フッターにページ番号を追加します。
  3. 最後に、出力ファイルのパスを引数としてDocument.Save()メソッドを呼び出し、出力ファイルを保存します。

次のコードサンプルは、C#を使用してPDFドキュメントのフッターに各ページのページ番号を追加する方法を示しています。

// このコード例は、PDFドキュメントの各ページのフッターにページ番号を追加する方法を示しています。 
// PDFドキュメントをロードする
Document pdfDocument = new Document(@"C:\Files\sample.pdf");

// すべてのページにフッターを追加
foreach (Page page in pdfDocument.Pages)
{
    // フッターを作成する
    TextStamp textStamp = new TextStamp("Page " + page.Number + " of " + pdfDocument.Pages.Count + " pages.");
    
    // スタンプのプロパティを設定する
    textStamp.BottomMargin = 10;
    textStamp.HorizontalAlignment = HorizontalAlignment.Center;
    textStamp.VerticalAlignment = VerticalAlignment.Bottom;

    // スタンプを追加
    page.AddStamp(textStamp);
}

// 更新したドキュメントを保存する
pdfDocument.Save(@"C:\Files\PDF\output.pdf");
フッターにページ番号を追加します。

C#を使用してPDFのフッターにページ番号を追加します。

無料のAPIライセンスを取得する

無料の一時ライセンスをリクエストすることで、評価の制限なしにAPIを試すことができます。

結論

この記事では、C#を使用して既存のPDFファイルのヘッダー/フッターにテキストまたは画像を追加する方法を学習しました。また、PDFドキュメントのさまざまなページにさまざまなヘッダーを追加する方法や、ドキュメントのフッターにページ番号を追加する方法についても説明しました。さらに、ドキュメントを使用して、Aspose.PDF for.NETAPIの詳細を学ぶことができます。ご不明な点がございましたら、フォーラムまでお気軽にお問い合わせください。

関連項目