フッターコンテンツにスキップ
IRONPDFの使用

IronPDF .NET Core PDFジェネレータの作成

信頼できる.NET CoreのPDFジェネレータを作るには?

NET CoreアプリケーションでPDFドキュメントを作成するには、HTMLコンテンツを扱い、フォーマットを維持し、クロスプラットフォーム展開をサポートするPDFライブラリが必要です。 正直なところ、ASP.NET CoreのWeb APIやコンソールアプリケーションを作成する場合、堅牢な.NET Core PDFジェネレータは、さまざまなソースからのドキュメント作成プロセスを効率化します。 それは非常に時間を節約します。

無料トライアルを開始し、生産環境での重要なPDF生成のために人々がIronPDFを選ぶ理由を発見してください。

IronPDFは包括的な.NET Core PDFライブラリとして際立っています。 それはChromeレンダリングエンジンを使用して、ピクセルパーフェクトの正確さでPDFドキュメントを作成します。 このアプローチにより、複雑なPDF APIを学ぶ必要がなく、レイアウトの問題に悩むこともありません。 既存のHTMLとCSSのスキルを活用するだけで、PDFファイルを生成できます。 ライブラリーの広範なドキュメンテーションコード例により、実装が簡単です。

IronPDFは.NET CoreでのPDFドキュメントの生成をどのように簡素化しますか?

IronPDFは、伝統的に複雑だったPDF生成のタスクを、.NET開発者なら誰でも実装できる簡潔なコードに変換します。 このライブラリは、ChromePdfRendererクラスを使用して、HTML文字列、ファイル、またはURLを直接PDF形式に変換します。 この流暢なAPIアプローチは、パフォーマンスを維持しながら、さまざまなプラットフォームにおいて広範なカスタマイズオプションを提供します。

本当の力は、IronPDFがHTMLコンテンツをプロフェッショナルなPDFファイルに変換する方法にあります。 手動で要素を配置したり描画する必要はなく、開発者は標準のHTMLとCSSスタイリングを書くだけで、ライブラリが変換をシームレスに処理します。 生成されたPDFファイルはテキストの単なる画像ではありません。 それらは全文検索可能なドキュメントであり、ユーザーがテキストを選択および検索できます。

基本的なPDF生成を超えて、IronPDFの高度な編集ツールを使用してPDFドキュメントを編集できます。 これにより、ドキュメントのマージ、透かしや注釈の追加などが可能になります。 関連するチュートリアルをチェックして、これらのツールのさらなるコード例を確認してください。

NuGetパッケージマネージャーを使ったIronPDFのインストール

Visual StudioでIronPDFを始めるには、NuGetパッケージのインストールだけで済みます。 NuGetパッケージマネージャーコンソールを開き、'Default project'ドロップダウンでプロジェクト名が選択されていることを確認し、次のコマンドを実行します。

Install-Package IronPdf
Install-Package IronPdf
SHELL

この単一のNuGetパッケージは、.NET CoreアプリケーションでPDFファイルを作成、編集、生成するために必要なすべての機能を提供します。 インストールは、自動的にWindows、Linux、Docker環境でのPDF生成にプロジェクトを設定します。 また、.NET Framework 4.6.2+、.NET Core 3.1+、および.NET Standard 2.0+など、さまざまな.NETバージョンをサポートします。

最初のPDFドキュメントをHTMLから作成する

実用的な請求書ドキュメントの例を使用してPDFドキュメントを作成しましょう。 これにより、HTMLコンテンツから適切なフォーマットとデータバインディングでPDFファイルを生成する方法を示します。

using IronPdf;
using System.IO;
using System.Text;
// Initialize the Chrome renderer
var renderer = new ChromePdfRenderer();
// Configure rendering options
renderer.RenderingOptions.MarginTop = 25;
renderer.RenderingOptions.MarginBottom = 25;
renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A4;
// Create HTML content for invoice
var htmlBuilder = new StringBuilder();
htmlBuilder.Append(@"
    <html>
    <head>
        <style>
            body { font-family: Arial, sans-serif; font-size: 14px; }
            .invoice-header { background: #f0f0f0; padding: 20px; }
            table { width: 100%; border-collapse: collapse; }
            th, td { padding: 10px; text-align: left; border-bottom: 1px solid #ddd; }
        </style>
    </head>
    <body>
        <div class='invoice-header'>
            <h1>Invoice #INV-2024-001</h1>
            <p>Date: " + DateTime.Now.ToString("MM/dd/yyyy") + @"</p>
        </div>
        <table>
            <tr><th>Item</th><th>Quantity</th><th>Price</th></tr>");
// Example of dynamically adding table rows with a for loop
for (int i = 0; i < 3; i++)
{
    htmlBuilder.Append($"<tr><td>Product #{i + 1}</td><td>{i + 1}</td><td>$25.00</td></tr>");
}
htmlBuilder.Append(@"
        </table>
        <p><strong>This is a new paragraph with a summary.</strong></p>
    </body>
    </html>");
// Generate PDF from HTML string
PdfDocument pdfObject = renderer.RenderHtmlAsPdf(htmlBuilder.ToString());
// Save the PDF file
pdfObject.SaveAs("invoice.pdf");
using IronPdf;
using System.IO;
using System.Text;
// Initialize the Chrome renderer
var renderer = new ChromePdfRenderer();
// Configure rendering options
renderer.RenderingOptions.MarginTop = 25;
renderer.RenderingOptions.MarginBottom = 25;
renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A4;
// Create HTML content for invoice
var htmlBuilder = new StringBuilder();
htmlBuilder.Append(@"
    <html>
    <head>
        <style>
            body { font-family: Arial, sans-serif; font-size: 14px; }
            .invoice-header { background: #f0f0f0; padding: 20px; }
            table { width: 100%; border-collapse: collapse; }
            th, td { padding: 10px; text-align: left; border-bottom: 1px solid #ddd; }
        </style>
    </head>
    <body>
        <div class='invoice-header'>
            <h1>Invoice #INV-2024-001</h1>
            <p>Date: " + DateTime.Now.ToString("MM/dd/yyyy") + @"</p>
        </div>
        <table>
            <tr><th>Item</th><th>Quantity</th><th>Price</th></tr>");
// Example of dynamically adding table rows with a for loop
for (int i = 0; i < 3; i++)
{
    htmlBuilder.Append($"<tr><td>Product #{i + 1}</td><td>{i + 1}</td><td>$25.00</td></tr>");
}
htmlBuilder.Append(@"
        </table>
        <p><strong>This is a new paragraph with a summary.</strong></p>
    </body>
    </html>");
// Generate PDF from HTML string
PdfDocument pdfObject = renderer.RenderHtmlAsPdf(htmlBuilder.ToString());
// Save the PDF file
pdfObject.SaveAs("invoice.pdf");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

このコードは、HTMLマークアップを動的データと結合してプロフェッショナルな請求書ドキュメントを作成します。 CSSにカスタムフォントサイズを追加し、forループを使ってテーブル行を動的に生成したことに注目してください。また、新しい段落要素(<p>)も追加しました。 RenderHtmlAsPdfメソッドはPdfDocumentオブジェクトを返すので、生成されたファイルを完全に制御することができます。より高度なHTMLからPDFへのシナリオについては、HTMLからPDFへのチュートリアルをご覧ください。

出力

以下のスクリーンショットは、我々の例の請求書が完璧にPDFドキュメント形式にレンダリングされたことを示しています。

IronPDFで.NET Core PDFジェネレーターを作成する:画像1 - HTMLからPDFへの出力例

URLやWebページからのPDFファイルの生成

IronPDFは既存のWebページをPDFファイルに変換するのに優れています。 この機能は、レポートダッシュボードやWebベースのフォームからPDFドキュメントを生成する際に非常に貴重です。

// Create a new ChromePdfRenderer instance
var renderer = new ChromePdfRenderer();
// Set custom page size and margins
renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A4;
renderer.RenderingOptions.PrintHtmlBackgrounds = true;
renderer.RenderingOptions.EnableJavaScript = true;
renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print;
renderer.RenderingOptions.WaitFor.RenderDelay(1000);
// Convert a URL to PDF
PdfDocument pdfDocument = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");
// Save to file path
string filePath = Path.Combine(Directory.GetCurrentDirectory(), "webpage.pdf");
pdfDocument.SaveAs(filePath);
// Create a new ChromePdfRenderer instance
var renderer = new ChromePdfRenderer();
// Set custom page size and margins
renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A4;
renderer.RenderingOptions.PrintHtmlBackgrounds = true;
renderer.RenderingOptions.EnableJavaScript = true;
renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print;
renderer.RenderingOptions.WaitFor.RenderDelay(1000);
// Convert a URL to PDF
PdfDocument pdfDocument = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");
// Save to file path
string filePath = Path.Combine(Directory.GetCurrentDirectory(), "webpage.pdf");
pdfDocument.SaveAs(filePath);
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

ライブラリはJavaScriptの実行を処理し、画像やスタイルシートなどの外部リソースを読み込み、変換中のレスポンシブレイアウトを維持します。 これにより、既存のWebアプリケーションからのレポート作成に最適です。 URLをPDFに変換する詳細ガイドで詳しく知ることができます。

IronPDFで.NET Core PDFジェネレーターを作成する:画像2 - URLからPDFへの出力例

複雑なレポートのための高度なPDF機能

プロフェッショナルなPDFドキュメントは、基本的なコンテンツ以外の追加要素を必要とすることがよくあります。 IronPDFは、ヘッダー、フッター、透かしを使用してPDFドキュメントを強化するためのメソッドを提供します。 ヘッダーとフッターAPIは、ドキュメントのプレゼンテーションを完全に制御します。

// Create renderer with advanced options
var renderer = new ChromePdfRenderer();
// Add headers and footers
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter
{
    MaxHeight = 25,
    HtmlFragment = "<div style='text-align:center'>Company Report</div>"
};
renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter
{
    MaxHeight = 25,
    HtmlFragment = "<div>Page {page} of {total-pages}</div>"
};
// Generate PDF with form fields
renderer.RenderingOptions.CreatePdfFormsFromHtml = true;
string formHtml = @"
    <form>
        <label>Name:</label>
        <input type='text' name='name'/>
        <label>Email:</label>
        <input type='email' name='email'/>
        <button type='submit'>Submit</button>
    </form>";
PdfDocument formDocument = renderer.RenderHtmlAsPdf(formHtml);
// Create renderer with advanced options
var renderer = new ChromePdfRenderer();
// Add headers and footers
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter
{
    MaxHeight = 25,
    HtmlFragment = "<div style='text-align:center'>Company Report</div>"
};
renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter
{
    MaxHeight = 25,
    HtmlFragment = "<div>Page {page} of {total-pages}</div>"
};
// Generate PDF with form fields
renderer.RenderingOptions.CreatePdfFormsFromHtml = true;
string formHtml = @"
    <form>
        <label>Name:</label>
        <input type='text' name='name'/>
        <label>Email:</label>
        <input type='email' name='email'/>
        <button type='submit'>Submit</button>
    </form>";
PdfDocument formDocument = renderer.RenderHtmlAsPdf(formHtml);
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

この例は、すべてのページにわたって一貫したヘッダーを追加し、PDFドキュメント内にインタラクティブなフォームフィールドを作成する方法を示しています。 システムは、自動的にページ番号とフォームフィールドレンダリングを処理します。

Creating a .NET Core PDF Generator with IronPDF:画像3 - フォームPDFの出力例

ASP.NET Coreにおける非同期操作でのパフォーマンスの最適化

複数のPDF生成要求を処理するWebアプリケーションの場合、非同期操作により応答性が向上します。

public async Task<byte[]> GeneratePdfAsync(string htmlContent)
{
    var renderer = new ChromePdfRenderer();
    // Configure for optimal performance
    renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print;
    // Generate PDF asynchronously
    PdfDocument PDF = await renderer.RenderHtmlAsPdfAsync(htmlContent);
    // Return as byte array for API responses
    return PDF.BinaryData;
}
// Usage in ASP.NET Core controller
[HttpPost]
public async Task<IActionResult> CreateInvoice([FromBody] InvoiceData data)
{
    string HTML = BuildInvoiceHtml(data);
    byte[] pdfBytes = await GeneratePdfAsync(HTML);
    return File(pdfBytes, "application/pdf", "invoice.pdf");
}
public async Task<byte[]> GeneratePdfAsync(string htmlContent)
{
    var renderer = new ChromePdfRenderer();
    // Configure for optimal performance
    renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print;
    // Generate PDF asynchronously
    PdfDocument PDF = await renderer.RenderHtmlAsPdfAsync(htmlContent);
    // Return as byte array for API responses
    return PDF.BinaryData;
}
// Usage in ASP.NET Core controller
[HttpPost]
public async Task<IActionResult> CreateInvoice([FromBody] InvoiceData data)
{
    string HTML = BuildInvoiceHtml(data);
    byte[] pdfBytes = await GeneratePdfAsync(HTML);
    return File(pdfBytes, "application/pdf", "invoice.pdf");
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

このパターンにより、ASP.NET Coreアプリケーションはスレッドをブロックすることなく効率的にPDFファイルを生成できるようになり、ファイル生成がしばしば面倒なプロセスであった古典的なASPのような古いWeb技術よりも大幅に改善されました。 バイト配列の出力は、クライアントにファイルを直接返す必要があるAPIエンドポイントに対して完全に機能します。

File()メソッドが正しいapplication/pdfコンテントタイプでPDFを返し、ブラウザがレスポンスを正しく処理するようにしていることに注目してください。 大規模なPDFドキュメントや多くの同時要求を処理する場合、この非同期アプローチにより、最適なシステムパフォーマンスが維持されます。 非同期パターンに関するさらなる洞察については、公式ASP.NET Coreドキュメントを参照してください。

展開の考慮事項

IronPDFは多様な環境における展開をサポートします。 Dockerコンテナの場合、必要な依存関係をDocker展開ガイドに記載されているようにDockerfileに含めることを確認してください。 ライブラリは、Windows Server、Linuxディストリビューション、およびAzureやAWSのようなクラウドプラットフォームでシームレスに機能します。 各環境はフォントやレンダリングのための特定の設定を必要とすることがありますが、基本的なAPIは一貫しています。 .NET Core展開に関するMicrosoftドキュメントは、プロダクション環境向けの追加のベストプラクティスを提供します。

今日からPDFジェネレータの構築を始めましょう

IronPDFは、.NET CoreでのPDF生成を複雑な課題から簡単な実装に変えます。 HTMLコンテンツのサポート、豊富な機能セット、および一貫したクロスプラットフォームの動作により、信頼性の高いPDFドキュメントを生成する必要がある開発者にとって理想的な選択肢です。

自分のPDFドキュメントジェネレータを実装する準備はできましたか? 無料トライアルで制限なしで全ての機能を探求してください。 ドキュメンテーションには、プロフェッショナルなPDFファイルを作成するための豊富な例とガイドがあります。 請求システムの構築、複雑なレポートの生成、または既存のWebコンテンツの変換に関係なく、IronPDFはピクセルパーフェクトな結果を提供するためのツールを提供します。

プロダクション展開に備えて、ライセンスオプションの探求を行い、プロジェクトの規模に合ったものを見つけてください。 質の高いPDFライブラリへの投資は、開発時間の削減と全ての.NETアプリケーションでの一貫したプロフェッショナルな出力において配当をもたらします。

よくある質問

.NET CoreにおけるIronPDFの主な機能は何ですか?

IronPDFは主に.NET CoreアプリケーションでHTMLをPDFに変換するために使用され、開発者はピクセルパーフェクトなレンダリングで請求書、レポート、その他のドキュメントを作成することができます。

IronPdfはどのようにしてピクセルパーフェクトなレンダリングを実現しているのですか?

IronPdfはHTML、CSS、JavaScriptを高品質なPDFドキュメントに正確に変換する高度なレンダリング技術により、ピクセルパーフェクトなレンダリングを保証します。

.NET CoreでIronPDFを使ってレポートを作成できますか?

はい、IronPDFは.NET CoreでHTMLベースのレポートテンプレートをプロ仕様のPDFドキュメントに変換し、詳細なレポートを作成することができます。

IronPDFを使ってウェブページをPDFに変換できますか?

もちろん、IronPdfは元のHTMLやCSSで指定されたレイアウトやスタイルを保持したまま、ウェブページ全体をPDFに変換することができます。

IronPDF の一般的な使用例は何ですか?

IronPdfの一般的な使用例としては、請求書の作成、ビジネスレポートの作成、HTMLフォームのPDFへの変換、ウェブコンテンツのアーカイブなどがあります。

IronPDFは.NET Coreアプリケーションをサポートしていますか?

IronPDFは.NET Coreアプリケーションを完全にサポートしており、異なる.NETプラットフォームで働く開発者にとって多用途な選択肢となります。

IronPDFはHTMLからPDFへの変換でCSSとJavaScriptをどのように扱うのですか?

IronPdfは変換の過程でCSSとJavaScriptを処理し、HTMLのビジュアルレイアウトとダイナミックコンテンツがPDFで正確に表現されるようにします。

IronPdfはHTML文字列からPDFを生成できますか?

はい、IronPDFはHTML文字列からPDFを生成することができ、開発者はアプリケーション内で生成されたHTMLコンテンツから動的にPDFドキュメントを作成することができます。

IronPDFでPDFの外観をカスタマイズすることは可能ですか?

IronPDFは広範なカスタマイズオプションを提供し、開発者はHTMLとCSSを使ってカスタムヘッダー、カスタムフッター、カスタムスタイルを指定することでPDFの外観をコントロールすることができます。

IronPDFは他の.NET PDFライブラリと比較してどのような利点がありますか?

IronPDFは.NET Coreとの統合のしやすさ、高品質なレンダリング、複雑なドキュメントレイアウトのサポート、HTML、CSS、JavaScriptの堅牢な処理など、いくつかの利点を提供します。

カーティス・チャウ
テクニカルライター

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

開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。