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

.NET Core IronPDFでPDFファイルを作成する

PDF ドキュメントをプログラムで作成することは、一般的なアプローチであり、現代の Web アプリケーションで頻繁に求められる要件です。 請求書、レポート、またはドキュメントベースのシステムを構築する場合にも、ASP アプリケーションや .NET Core で効果的に PDF ファイルを作成する方法を知ることが不可欠です。 このチュートリアルでは、IronPDF を使用して .NET Core で PDF ファイルを作成するタスクを処理するための最良の方法を探ります。 これは PDF 生成機能を簡素化する強力な .NET Core ライブラリです。 包括的な技術詳細については、公式ドキュメントを参照してください。

IronPDFを始めよう

IronPDF は、複雑な PDF 作成をシンプルな操作に変換する包括的な .NET Core PDF ライブラリです。 要素を手動で描画する従来のアプローチとは異なり、IronPDF は HTML マークアップと CSS を活用して、デザイン要件を正確に満たす PDF ファイルを生成します。

.NET Core ライブラリ プロジェクトで PDF を作成し始めるには、Visual Studio のパッケージ マネージャー コンソールを使用して次のコマンドを実行し、IronPDF NuGet パッケージをインストールします。

Install-Package IronPDF
Install-Package IronPDF
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'Install-Package IronPDF
$vbLabelText   $csharpLabel

このシンプルなインストールにより、Web アプリケーションに対して強力な PDF 生成機能が即座に利用可能になります。

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

基本を理解するために、簡単な PDF ドキュメントを作成しましょう。 次の例では、フォーマットされたコンテンツを使用して PDF を生成する方法を示しています。

using IronPdf;
// Create a new ChromePdfRenderer object
var renderer = new ChromePdfRenderer();
// Define HTML content with styling
var HTML = @"
    <html>
        <body style='font-family: Arial; margin: 40px;'>
            <h1>Hello World PDF Document</h1>
            <p>This is your first PDF file created with IronPDF!</p>
        </body>
    </html>";
// Generate PDF from HTML
var PDF = renderer.RenderHtmlAsPdf(html);
// Save the PDF document
pdf.SaveAs("output.pdf");
using IronPdf;
// Create a new ChromePdfRenderer object
var renderer = new ChromePdfRenderer();
// Define HTML content with styling
var HTML = @"
    <html>
        <body style='font-family: Arial; margin: 40px;'>
            <h1>Hello World PDF Document</h1>
            <p>This is your first PDF file created with IronPDF!</p>
        </body>
    </html>";
// Generate PDF from HTML
var PDF = renderer.RenderHtmlAsPdf(html);
// Save the PDF document
pdf.SaveAs("output.pdf");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

このコードは、HTML コンテンツをレンダリングして新しい PDF を作成する PdfDocument オブジェクトを作成します。 ChromePdfRenderer は変換を処理して、PDF ドキュメントが一貫したフォーマットを維持するようにします。

出力

.NETコア IronPDFでPDFファイルを作成:画像1 - IronPDFで作成された最初のシンプルなPDF.

高度な機能を備えた HTML から PDF への変換

IronPDF は、複雑な Web ページや HTML コンテンツをプロフェッショナルな PDF ファイルに変換することに優れています。 次のコードでは、テーブル、画像、スタイル付き要素などの高度な機能を備えた新しい PDF ドキュメントを作成する方法を説明しています。

public void CreateAdvancedPdf()
{
    var renderer = new ChromePdfRenderer();
    // Configure rendering options
    renderer.RenderingOptions.MarginTop = 25;
    renderer.RenderingOptions.MarginBottom = 25;
    var HTML = @"
        <html>
        <head>
            <style>
                table { width: 100%; border-collapse: collapse; }
                th, td { padding: 10px; border: 1px solid #ddd; }
                th { background-color: #f2f2f2; }
            </style>
        </head>
        <body>
            <h2>Sales Report</h2>
            <table>
                <tr>
                    <th>Product</th>
                    <th>Quantity</th>
                    <th>Total</th>
                </tr>
                <tr>
                    <td>Software License</td>
                    <td>10</td>
                    <td>$500</td>
               </tr>
            </table>
        </body>
        </html>";
    // Create PDF file
    var PDF = renderer.RenderHtmlAsPdf(html);
    pdf.SaveAs("report.pdf");
}
public void CreateAdvancedPdf()
{
    var renderer = new ChromePdfRenderer();
    // Configure rendering options
    renderer.RenderingOptions.MarginTop = 25;
    renderer.RenderingOptions.MarginBottom = 25;
    var HTML = @"
        <html>
        <head>
            <style>
                table { width: 100%; border-collapse: collapse; }
                th, td { padding: 10px; border: 1px solid #ddd; }
                th { background-color: #f2f2f2; }
            </style>
        </head>
        <body>
            <h2>Sales Report</h2>
            <table>
                <tr>
                    <th>Product</th>
                    <th>Quantity</th>
                    <th>Total</th>
                </tr>
                <tr>
                    <td>Software License</td>
                    <td>10</td>
                    <td>$500</td>
               </tr>
            </table>
        </body>
        </html>";
    // Create PDF file
    var PDF = renderer.RenderHtmlAsPdf(html);
    pdf.SaveAs("report.pdf");
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

この例は、IronPDF の複雑なレイアウトや CSS スタイリングの処理能力を示す、フォーマットされたテーブルを含む PDF ドキュメントの作成方法を示しています。

出力

.NET Core Create PDF Files with IronPDF:イメージ2 - 高度な機能を持つPDF

ASP.NET Core アプリケーションでの作業

ASP.NET Core MVC ビューでの PDF 生成の統合はシンプルです。 コントローラーから PDF を生成するためのプロジェクトの実装例を次に示します。

using Microsoft.AspNetCore.Mvc;
using IronPdf;
using System.IO;
public class DocumentController : Controller
{
    public IActionResult GeneratePdf()
    {
        var renderer = new ChromePdfRenderer();
        // Create HTML content
        var HTML = "<h1>Invoice</h1><p>Thank you for your purchase!</p>";
        // Generate PDF
        var PDF = renderer.RenderHtmlAsPdf(html);
        byte[] pdfBytes = pdf.BinaryData;
    // Return PDF file using the byte array, setting the content type to PDF
    return File(pdfBytes,
            "application/pdf",
            "document.pdf");
       }
    }
}
using Microsoft.AspNetCore.Mvc;
using IronPdf;
using System.IO;
public class DocumentController : Controller
{
    public IActionResult GeneratePdf()
    {
        var renderer = new ChromePdfRenderer();
        // Create HTML content
        var HTML = "<h1>Invoice</h1><p>Thank you for your purchase!</p>";
        // Generate PDF
        var PDF = renderer.RenderHtmlAsPdf(html);
        byte[] pdfBytes = pdf.BinaryData;
    // Return PDF file using the byte array, setting the content type to PDF
    return File(pdfBytes,
            "application/pdf",
            "document.pdf");
       }
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

このコントローラーメソッドは、PDF ドキュメントを生成し、ダウンロード可能なファイルとしてそれを返します。これは Web アプリケーションのサーバーサイド処理に最適です。 新しい MemoryStream オブジェクトを使用して、PDF ドキュメントの作成を処理することもできます。

出力

.NET Core Create PDF Files with IronPDF:画像3 - ASP.NETコントローラで生成されたPDF

高度な PDF 生成技術

IronPDF では、PDF を作成するための高度な機能が数多くサポートされています。 ヘッダー、フッター、ページ番号の追加や、複数の PDF ファイルをマージすることができます。

public void CreatePdfWithHeaderFooter()
{
    var renderer = new ChromePdfRenderer();
    // Add header
    renderer.RenderingOptions.TextHeader = new TextHeaderFooter
    {
        CenterText = "Company Report",
        DrawDividerLine = true
    };
    // Add footer with page numbers
    renderer.RenderingOptions.TextFooter = new TextHeaderFooter
    {
        CenterText = "Page {page} of {total-pages}",
        DrawDividerLine = true
    };
    var HTML = "<h1>Annual Report</h1><p>Content goes here...</p>";
    var PDF = renderer.RenderHtmlAsPdf(html);
    // Save the new document
    pdf.SaveAs("report-with-header.pdf");
}
// Merge multiple PDFs
public void MergePdfFiles()
{
    var renderer = new ChromePdfRenderer();
    var pdf1 = renderer.RenderHtmlAsPdf("<p>First Document</p>");
    var pdf2 = renderer.RenderHtmlAsPdf("<p>Second Document</p>");
    // Merge PDF documents
    var merged = PdfDocument.Merge(pdf1, pdf2);
    merged.SaveAs("merged.pdf");
}
// Example of iterating over something, illustrating 'int i' and 'index'
public void ProcessMultipleFiles(string[] filePaths)
{
    for (int i = 0; i < filePaths.Length; i++)
    {
        // Use 'i' as an index to process each source file
        var source file = filePaths[i];
        Console.WriteLine($"Processing file at index {i}: {source file}");
        // Imagine code here to load or process the file
        // var PDF = PdfDocument.FromFile(sourceFile); // load
    }
}
public void CreatePdfWithHeaderFooter()
{
    var renderer = new ChromePdfRenderer();
    // Add header
    renderer.RenderingOptions.TextHeader = new TextHeaderFooter
    {
        CenterText = "Company Report",
        DrawDividerLine = true
    };
    // Add footer with page numbers
    renderer.RenderingOptions.TextFooter = new TextHeaderFooter
    {
        CenterText = "Page {page} of {total-pages}",
        DrawDividerLine = true
    };
    var HTML = "<h1>Annual Report</h1><p>Content goes here...</p>";
    var PDF = renderer.RenderHtmlAsPdf(html);
    // Save the new document
    pdf.SaveAs("report-with-header.pdf");
}
// Merge multiple PDFs
public void MergePdfFiles()
{
    var renderer = new ChromePdfRenderer();
    var pdf1 = renderer.RenderHtmlAsPdf("<p>First Document</p>");
    var pdf2 = renderer.RenderHtmlAsPdf("<p>Second Document</p>");
    // Merge PDF documents
    var merged = PdfDocument.Merge(pdf1, pdf2);
    merged.SaveAs("merged.pdf");
}
// Example of iterating over something, illustrating 'int i' and 'index'
public void ProcessMultipleFiles(string[] filePaths)
{
    for (int i = 0; i < filePaths.Length; i++)
    {
        // Use 'i' as an index to process each source file
        var source file = filePaths[i];
        Console.WriteLine($"Processing file at index {i}: {source file}");
        // Imagine code here to load or process the file
        // var PDF = PdfDocument.FromFile(sourceFile); // load
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

これらの例は、PDF ドキュメントにプロフェッショナルなタッチを加えたり、複数のファイルを単一のドキュメントに結合したりする方法を示しています。

カスタム ヘッダーとフッターを使用した出力

.NET Core Create PDF Files with IronPDF:画像4 - シンプルでカスタムなヘッダーとフッターで作成されたPDF

フォームと動的コンテンツを使用する

IronPDF はフォームフィールドを備えたインタラクティブな PDF ドキュメントを作成できます。

public void CreatePdfWithForm()
{
    var HTML = @"
    <!DOCTYPE html>
    <html>
    <head>
        <title>PDF Test Form</title>
        <style>
            body {
                font-family: Arial, sans-serif;
                margin: 20px;
                background-color: #f4f4f4;
            }
            .form-container {
                width: 400px;
                padding: 20px;
                border: 1px solid #ccc;
                border-radius: 8px;
                background-color: #fff;
                box-shadow: 2px 2px 5px rgba(0,0,0,0.1);
            }
            .form-group {
                margin-bottom: 15px;
            }
            label {
                display: block; /* Make label take up full width */
                margin-bottom: 5px;
                font-weight: bold;
                color: #333;
            }
            input[type='text'], textarea {
                width: 100%;
                padding: 10px;
                border: 1px solid #ddd;
                border-radius: 4px;
                box-sizing: border-box; /* Include padding and border in the element's total width and height */
            }
            textarea {
                height: 100px;
                resize: vertical;
            }
            .checkbox-group {
                display: flex;
                align-items: center;
            }
            .checkbox-group label {
                display: inline;
                font-weight: normal;
                margin-left: 8px;
            }
        </style>
    </head>
    <body>
        <div class='form-container'>
            <h2>Document Generation Test Form</h2>
            <form>
                <div class='form-group'>
                    <label for='fullName'>Full Name:</label>
                </div>
                <div class='form-group'>
                    <label for='comments'>Comments/Feedback:</label>
                    <textarea id='comments' name='comments' placeholder='Type your feedback here...'></textarea>
                </div>
                <div class='form-group checkbox-group'>
                    <label for='agree'>I agree to the terms and conditions.</label>
                </div>
                <button style='padding: 10px 15px; background-color: #007bff; color: white; border: none; border-radius: 4px; cursor: pointer;'>
                    Test Button Rendering
                </button>
            </form>
        </div>
    </body>
    </html>";
    var renderer = new ChromePdfRenderer();
    renderer.RenderingOptions.CreatePdfFormsFromHtml = true;
    var PDF = renderer.RenderHtmlAsPdf(html);
    pdf.SaveAs("form.pdf");
}
public void CreatePdfWithForm()
{
    var HTML = @"
    <!DOCTYPE html>
    <html>
    <head>
        <title>PDF Test Form</title>
        <style>
            body {
                font-family: Arial, sans-serif;
                margin: 20px;
                background-color: #f4f4f4;
            }
            .form-container {
                width: 400px;
                padding: 20px;
                border: 1px solid #ccc;
                border-radius: 8px;
                background-color: #fff;
                box-shadow: 2px 2px 5px rgba(0,0,0,0.1);
            }
            .form-group {
                margin-bottom: 15px;
            }
            label {
                display: block; /* Make label take up full width */
                margin-bottom: 5px;
                font-weight: bold;
                color: #333;
            }
            input[type='text'], textarea {
                width: 100%;
                padding: 10px;
                border: 1px solid #ddd;
                border-radius: 4px;
                box-sizing: border-box; /* Include padding and border in the element's total width and height */
            }
            textarea {
                height: 100px;
                resize: vertical;
            }
            .checkbox-group {
                display: flex;
                align-items: center;
            }
            .checkbox-group label {
                display: inline;
                font-weight: normal;
                margin-left: 8px;
            }
        </style>
    </head>
    <body>
        <div class='form-container'>
            <h2>Document Generation Test Form</h2>
            <form>
                <div class='form-group'>
                    <label for='fullName'>Full Name:</label>
                </div>
                <div class='form-group'>
                    <label for='comments'>Comments/Feedback:</label>
                    <textarea id='comments' name='comments' placeholder='Type your feedback here...'></textarea>
                </div>
                <div class='form-group checkbox-group'>
                    <label for='agree'>I agree to the terms and conditions.</label>
                </div>
                <button style='padding: 10px 15px; background-color: #007bff; color: white; border: none; border-radius: 4px; cursor: pointer;'>
                    Test Button Rendering
                </button>
            </form>
        </div>
    </body>
    </html>";
    var renderer = new ChromePdfRenderer();
    renderer.RenderingOptions.CreatePdfFormsFromHtml = true;
    var PDF = renderer.RenderHtmlAsPdf(html);
    pdf.SaveAs("form.pdf");
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

これにより、ユーザーが入力できるフォームフィールドを備えたインタラクティブな PDF が作成され、ユーザー入力が必要なアプリケーションには最適です。 コードは、生成されたコンテンツ内で HTML リンクが使用される可能性がある場所も示しています。

編集可能なフォームによる出力 PDF

.NET Core Create PDF Files with IronPDF:画像5 - 記入欄のあるPDF

ベスト プラクティスとエラー処理

本番環境で PDF ファイルを生成する際は、適切なエラー処理を実装してください。

try
{
    var renderer = new ChromePdfRenderer();
    var PDF = renderer.RenderHtmlAsPdf(html);
    pdf.SaveAs("output.pdf");
}
catch (Exception ex)
{
    // Log error and handle appropriately
    Console.WriteLine($"PDF generation failed: {ex.Message}");
}
try
{
    var renderer = new ChromePdfRenderer();
    var PDF = renderer.RenderHtmlAsPdf(html);
    pdf.SaveAs("output.pdf");
}
catch (Exception ex)
{
    // Log error and handle appropriately
    Console.WriteLine($"PDF generation failed: {ex.Message}");
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

常に入力データを検証し、例外を適切に処理して、アプリケーションでの信頼性の高い PDF 生成を保証してください。

結論

IronPDF は、.NET Core での PDF ファイルの作成という複雑なタスクを単純で管理しやすいプロセスに変換します。 基本的なドキュメント作成から、フォーム、画像、ページ管理などの高度な機能まで、この .NET ライブラリはプログラムで PDF ドキュメントを生成するための包括的なツールを提供します。 共通のアプローチとして HTML を変換することで、データをすばやくロードして、完成したファイルをダウンロードできます。

シンプルなレポートから複雑な多ページ ドキュメントまで、IronPDF の直感的な API と強力なレンダリング エンジンは、.NET 開発者にとって理想的な選択肢です。 IronPDF の無料試用版を使用して、ASP.NET Core アプリケーションでプロフェッショナルな PDF ファイルの作成を今すぐ開始しましょう。

PDF 生成機能を備えてアプリケーションを強化する準備はできましたか? IronPDF を使い始めて、PDF 作成の容易さを体験しましょう。

よくある質問

ASP.NETアプリケーションにおけるIronPDFの主な機能は何ですか?

IronPDFにより、開発者はASP.NETアプリケーション内で簡単にPDFドキュメントを作成することができ、請求書やレポート、その他のドキュメントベースのシステム生成などのタスクを効率化することができます。

最新のWebアプリケーションにおいて、なぜプログラムでPDF文書を作成することが重要なのでしょうか?

プログラムによるPDF文書の作成は、請求システムやデータレポートなど、文書管理を必要とするアプリケーションの自動化や動的なコンテンツ生成を可能にするため、不可欠です。

.NET Core環境でIronPDFを使ってPDFを生成できますか?

IronPDFはPDF生成を簡素化するために特別に設計された強力な.NET Coreライブラリであり、.NET CoreアプリケーションでPDFファイルを作成するための理想的な選択肢です。

.NET CoreのIronPDFを使ってどのような種類のドキュメントを作成できますか?

IronPdfを使えば、請求書、レポート、効率的なPDF生成が必要なドキュメントベースのシステムなど、幅広いドキュメントを作成することができます。

IronPdfの使用に関する技術的な詳細はどこにありますか?

IronPdfの使用に関する包括的な技術的詳細は、ステップバイステップのガイダンスと実用的なヒントを提供する公式ドキュメントをご覧ください。

IronPDFはASP.NETアプリケーションのPDF生成機能をどのように強化しますか?

IronPDFは、ASP.NETアプリケーション内で直接PDFドキュメントの作成、操作、管理を簡素化する堅牢なライブラリを提供することで、PDF生成機能を強化します。

IronPDFは.NET Coreでドキュメントベースのシステムを構築するのに適していますか?

IronPDFは.NET Coreでドキュメントベースのシステムを構築するのに非常に適しており、プログラムでPDFを生成し管理するシームレスな方法を提供します。

.NET CoreでIronPDFを使用してPDF作成を処理する最善の方法は何ですか?

このチュートリアルでは、.NET Core環境でPDFドキュメントを効率的に生成・管理するIronPDFの機能の活用に焦点を当てながら、PDF作成を扱う様々な方法を探ります。

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

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

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