IRONSOFTWAREHOME
IRONPDFの使用

How to Convert PDF to TIFF in VB.NET

Curtis Chau
Curtis Chau
Updated: 2026年4月23日

現代のウェブアプリケーションは静的なドキュメント作成以上のものを要求します。 個別の請求書の生成、データを元にしたPDFレポートの作成、カスタマイズされたフォームフィールドの作成といった場合には、開発者は実行時にPDFドキュメントを生成するための頑丈なツールを必要としています。IronPDFはそのための強力なソリューションとして登場し、動的なPDF生成を可能にするC#および.NETフレームワーク環境へのシームレスな統合のために、Chromeベースの強力なレンダリングを提供します。

C#でPDFを動的に生成する方法: 図 1 - クロスプラットフォーム

What is Dynamic PDF Generation in C#?

C#での動的PDF生成は、データベース、API、またはユーザー入力など複数のデータソースからの可変データを使用して、実行時にPDFドキュメントを生成します。 静的なPDFファイルとは異なり、実行時の生成は個別に対応したコンテンツ、条件付きのセクション、データに基づくレイアウトを可能にします; これらは、請求書、PDFレポート、証明書、および条件の変化に適応するフォームにとって不可欠です。 このプログラム的にPDFを作成するアプローチは、現代の.NET Frameworkおよび.NET Coreアプリケーションにとって重要になっています。

C#でPDFを動的に生成する方法: 図 2 - クロスプラットフォーム

IronPDFを始めよう

Visual Studioのパッケージマネージャコンソールを通じてIronPDF NuGetパッケージをインストールすることで始めてください:

PM > Install-Package IronPdf

C#でPDFを動的に生成する方法: 図 3 - インストール

または、NuGetパッケージマネージャインターフェースを使用してダウンロードしてインストールします。 ChromePdfRendererを初期化して、ピクセルパーフェクトのPDF生成を行います:

using IronPdf;
// Create Chrome renderer instance
var renderer = new ChromePdfRenderer();
// Configure rendering options for PDF format
renderer.RenderingOptions.MarginTop = 50;
renderer.RenderingOptions.MarginBottom = 50;
renderer.RenderingOptions.PrintHtmlBackgrounds = true;

ChromePdfRendererクラスは実行時にPDFを生成する基盤を提供します。余白の設定によりヘッダーとフッターのスペースを確保し、PrintHtmlBackgroundsがデザイン要素を保持します。 この設定はHTMLコンテンツに基づいたPDFドキュメントを正確に作成するのに役立ちます。 PDFドキュメントをカスタマイズするためのレンダリングオプションについてさらに学びましょう。

テンプレートを使用してPDFドキュメントを動的に作成する方法

動的なデータ挿入のためのプレースホルダーを含む再利用可能なHTMLテンプレートを作成します:

// Define HTML string template with placeholders
string invoiceTemplate = @"
<html>
<body>
    <h1>Invoice #[[INVOICE_NUMBER]]</h1>
    <p>Date: [[DATE]]</p>
    <p>Customer: [[CUSTOMER_NAME]]</p>
    <table>
        <tr><th>Item</th><th>Price</th></tr>
        [[ITEMS]]
    </table>
    <p><strong>Total: $[[TOTAL]]</strong></p>
</body>
</html>";
// Replace placeholders with dynamic data
var invoiceData = new {
    InvoiceNumber = "INV-2025-001",
    Date = DateTime.Now.ToString("yyyy-MM-dd"),
    CustomerName = "John Doe",
    Total = 1250.00m
};
string finalHtml = invoiceTemplate
    .Replace("[[INVOICE_NUMBER]]", invoiceData.InvoiceNumber)
    .Replace("[[DATE]]", invoiceData.Date)
    .Replace("[[CUSTOMER_NAME]]", invoiceData.CustomerName)
    .Replace("[[TOTAL]]", invoiceData.Total.ToString());
// Generate PDF from populated HTML content
var pdf = renderer.RenderHtmlAsPdf(finalHtml);
pdf.SaveAs("invoice.pdf");

このテンプレートアプローチはプレゼンテーションとデータを分離し、デザイナーが複雑なレイアウトを修正しつつ、開発者はデータ統合に集中できるようにします。 ReplaceメソッドはテンプレートIDプレースホルダーを実行時の値で置換し、個別のPDFドキュメントを作成します。 繰り返しセクションを含むHTMLコンテンツを変換するためには、PDF変換前にループを使用してHTMLを動的に構築します。 HTMLを使用したPDF作成の例を探索して、高度なテンプレート作成を学びましょう。

出力

C#でPDFを動的に生成する方法: 図 4 - PDF出力

非同期処理を伴う高度なデータバインド

非同期メソッドであなたのPDF生成をスケールアップし、大量処理を行います:

// Async batch generation for multiple PDF documents
public async Task GenerateMonthlyReportsAsync(List<Customer> customers)
{
    var renderer = new ChromePdfRenderer();
    var tasks = new List<Task>();
    foreach (var customer in customers)
    {
        tasks.Add(Task.Run(async () =>
        {
            // Create HTML content with dynamic data
            string html = $@"
                <h2>Monthly Report - {customer.Name}</h2>
                <p>Account Balance: ${customer.Balance:F2}</p>
                <p>Transactions: {customer.TransactionCount}</p>
                <div style='page-break-after: always;'></div>";
            // Convert HTML to PDF format
            var document = await renderer.RenderHtmlAsPdfAsync(html);
            await document.SaveAs($"reports/{customer.Id}_report.pdf");
        }));
    }
    await Task.WhenAll(tasks);
}

非同期パターンにより、バッチでPDFドキュメントを生成する際のスループットを大幅に向上させる並行PDF生成が可能になります。 Task.WhenAllはすべてのPDFファイルが完了するまでの進行を確実にします。 上記のコードは各顧客のレポートが新しいページから始まるようにCSSのページ区切りプロパティを使用しています。 企業用ウェブアプリケーション向けに非同期PDF生成のドキュメントを確認してください。

インタラクティブなPDFフォームを動的に作成する

HTMLフォームを含むウェブページをプログラム的に記入可能なPDFに変換します:

// Enable form fields creation in rendering options
renderer.RenderingOptions.CreatePdfFormsFromHtml = true;
// Define HTML string with form elements
string formHtml = @"
<form>
    <h2>Customer Survey</h2>
    <label>Name: 
    <label>Email: 
    <label>Satisfaction:
        <select name='satisfaction'>
            <option>Excellent</option>
            <option>Good</option>
            <option>Fair</option>
        </select>
    </label><br>
    <label>Comments: <textarea name='comments'></textarea></label>
</form>";
// Create a PDF with interactive form fields
var pdfDocument = renderer.RenderHtmlAsPdf(formHtml);
pdfDocument.SaveAs("survey_form.pdf");

CreatePdfFormsFromHtmlを設定することで、HTMLフォーム要素をインタラクティブなPDFフォームフィールドに変換します。 ユーザーはこれらのPDFドキュメントを電子的に記入、保存、送信できます。 この機能は紙のフォームを排除しつつ、慣れ親しんだHTMLの開発パターンを維持してワークフローを効率化します。 PDFDocumentオブジェクトはプログラム的にフォームフィールドを操作するためのアクセスを提供します。 高度な実装のためのPDFフォーム操作について、デジタル署名を含めて学びましょう。

出力

C#でPDFを動的に生成する方法: 図 5 - インタラクティブPDFフォーム出力

他の方法よりIronPDFを選ぶ理由

IronPDFのChromeレンダリングエンジンはピクセルパーフェクトの正確さを確保し、古いWebKitレンダリングエンジンソリューションの妥協を排除します。 外部実行可能ファイルやヘッドレスブラウザセットアップを必要とするオープンソースライブラリアルタナティブとは異なり、IronPDFはゼロ依存でシームレスに統合します。 流暢なAPIと高レベルのAPI設計により、組み込みクラスや複雑なクリスタルレポートの実装よりも優れています。

C#でPDFを動的に生成する方法: 図 6 - 機能

Key advantages for dynamic PDF generation in C#

  • 他の方法と異なり、完全なJavaScriptの実行が可能
  • ウェブアプリケーションでのスレッドセーフな操作
  • 以下の例パターンを使った包括的な非同期サポート
  • 単純なAPIエンドポイントの構成でページ番号やフォントサイズの制御
  • HTMLからPDFへの変換がChromeと完全に一致

C#でPDFを動的に生成する方法: 図 7 - 動的PDF生成 - IronPDF

ライセンスは$999から始まります。単一開発者ライセンス、チーム、およびエンタープライズオプションがあります。 各パッケージには自身の利点があり、開発時間の節約で投資が元を取れます。 購入後直ちにAPIキーにアクセスできます。 最適なNuGetパッケージを見つけるためのライセンスオプションを見る

結論

C#での動的PDF生成は、アプリケーションが実行時に個別のドキュメントを提供する方法を革新します。IronPDFはHTMLコンテンツ、ウェブページ、データソースからPDFファイルを生成するための不可欠なツールを提供します。 そのChromeベースのレンダリングにより、C#のPDFがデザイン仕様に正確に一致し、非同期サポートにより企業規模の処理が可能になります。

次のコマンドで旅が始まります: Install-Package IronPdf。 IronPDFを使用することで、HTML文字列を変換し、画像やテーブルを含む複雑なPDFを作成し、ページ番号を追加し、フォントサイズを制御し、任意のデータソースからPDFレポートを生成できます。 各新しいドキュメントはピクセルパーフェクトのレンダリングの恩恵を受け、単純なvarページの作成でも、複数のvarドキュメントインスタンスを持つ複雑なレイアウトでもそうです。

IronPDFの無料30日間トライアルバンドルを開始します。

Curtis Chau
テクニカルライター

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。

...
詳しく読む

関連する記事

Key in blue circle

無料の30日間トライアルキーをすぐに入手してください。

Your trial license will be sent to your email address

制限なし。100% ロック解除済み。クレジットカード不要。

bullet_checkedクレジットカードやアカウントの作成は不要です。制限なし。100% ロック解除済み。クレジットカード不要。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
無料のライブデモを予約する
Booking Badge

世界中の数百万人のエンジニアから信頼されています。

ライセンスはより安く
義務のない相談を受ける
下記のフォームを記入するか、sales@ironsoftware.comにメールしてください。
あなたの詳細は常に守秘されます。
世界中の数百万人のエンジニアから信頼されています。
ライセンスはより安く
あなたの無料30日間の試用キーをすぐに入手。
クレジットカードやアカウントの作成は不要です。