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

ASP.NET C#でPDFを作成する方法

ASP.NET C#でフォーマットされたPDFファイルを生成する際の頭痛に苦しんだことがある場合、そのフラストレーションの大きさがわかるでしょう。 プロフェッショナルな請求書、詳細なレポート、公式文書の必要性は常にありますが、従来のPDF APIの複雑さがしばしば障害となります。

幸いにも、IronPDFはその複雑さを解消します。 この強力な.NET PDFライブラリはプロセス全体を簡素化し、美しく信頼性のあるPDF文書を迅速に生成するための完全なコードとツールを提供します。

ASP.NET CoreでのPDF生成が不可欠な理由

PDF文書は、異なるプラットフォームやデバイス間でフォーマットされたコンテンツを共有するための普遍的な標準として機能します。 ASP.NET Coreアプリケーションでは、PDFファイルの生成により、ビジネスがプロフェッショナルな請求書、詳細なレポート、公式文書を作成し、そのフォーマットを閲覧環境に関係なく保持することができます。 サーバーサイドのPDF生成は、一貫した出力を提供し、セキュリティ管理を強化し、クライアントサイドのリソースへの依存を排除します。

HTMLコンテンツをPDF形式に直接変換することができることは、強力な可能性を開きます。 既存のHTMLとCSSの知識を活用して、複雑なPDF専用APIを学ばずに美しくフォーマットされたPDF文書を作成できます。このアプローチにより、既存のウェブページ、Razorビュー、またはカスタムHTML文字列から最小の労力でPDFファイルを生成できます。

IronPDFはPDF作成をどのように簡素化するのか?

IronPDFは、そのChromeベースのレンダリングエンジンを通じて、他のPDF生成ライブラリの中でも際立っています。このエンジンは正確なHTMLからPDFへの変換を保証します。 このエンジンは、CSS3、JavaScript、およびレスポンシブレイアウトを含む現代のウェブ標準をサポートしているため、HTMLのカウンターパートと同じように見えるPDF文書を作成することができます。

ライブラリのシンプルなAPI設計により、大規模な設定をせずにすぐにPDFの生成を開始することができます。 IronPDFは、フォントや画像の管理から複雑なレイアウトの適切なレンダリングに至るまで、PDFファイルの作成の複雑さを裏で処理します。 簡単なHTML文字列からPDFを生成する必要があるか、ウェブページ全体を変換する必要があるかに関わらず、プロセスは一貫して簡単です。 多くの開発者にとって強力なオープンソースライブラリです。

ASP.NET CoreにおけるIronPDFの始め方

ASP.NET CoreプロジェクトにてIronPDFを導入するのは、NuGetパッケージマネージャーを使用することで簡単です。 Visual Studioのパッケージマネージャーコンソールを開き、以下のコマンドを実行します:

Install-Package IronPdf

インストールが完了すると、IronPDFライブラリ全体にアクセスでき、PDFファイルの作成をすぐに開始できます。 For production use, you'll need to apply a license key, but the free version allows full development and testing.

シンプルなHTML文字列からPDF文書を作成する方法

HTML文字列からPDFファイルを作成する方法を示すシンプルな例から始めましょう。 この例はPDF文書を生成する基本的なアプローチを示しています:

using IronPdf;

public class PdfGenerator
{
    public void CreateSimplePdf()
    {
        // Create a new PDF document
        var renderer = new ChromePdfRenderer();
        // Generate PDF from HTML string
        var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1><p>This is my first PDF file in C#!</p>");
        // Save the PDF file
        pdf.SaveAs("simple-document.pdf");
    }
}
using IronPdf;

public class PdfGenerator
{
    public void CreateSimplePdf()
    {
        // Create a new PDF document
        var renderer = new ChromePdfRenderer();
        // Generate PDF from HTML string
        var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1><p>This is my first PDF file in C#!</p>");
        // Save the PDF file
        pdf.SaveAs("simple-document.pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

出力PDF

ASP.NET C#でPDFを作成する方法: 図1 - シンプルなHTMLからPDFへの出力

このコードは、基本的なHTMLコンテンツで新しい文書を作成します。 ChromePdfRendererクラスはすべての変換の詳細を処理し、HTMLを適切にフォーマットされたPDFファイルに変換します。結果の文書は、ポータブル文書形式への変換中もHTML構造を保持します。 私たちのウェブサイトでは、完全なコード例付きの便利なPDFチュートリアルも見つけることができます。

複雑なHTMLからPDF文書を生成する方法

IronPDFは、複雑なHTMLコンテンツをPDF文書にレンダリングするのに優れています。 ライブラリのスタイル付きHTMLコンテンツとの相互作用を示す、より洗練された請求書文書を作成しましょう:

using IronPdf;
using System;

public class InvoiceGenerator
{
    public void CreateInvoiceDocument()
    {
        var renderer = new ChromePdfRenderer();
        // HTML content with styling
        string htmlContent = @"
        <!DOCTYPE html>
        <html>
        <head>
            <style>
                body { font-family: 'Arial', sans-serif; margin: 40px; }
                .header { background-color: #003366; color: white; padding: 20px; text-align: center; }
                .invoice-details { margin: 20px 0; }
                table { width: 100%; border-collapse: collapse; margin-top: 20px; }
                th { background-color: #f0f0f0; padding: 10px; text-align: left; }
                td { padding: 10px; border-bottom: 1px solid #ddd; }
                .total { font-size: 18px; font-weight: bold; text-align: right; margin-top: 20px; }
            </style>
        </head>
        <body>
            <div class='header'>
                <h1>INVOICE</h1>
            </div>
            <div class='invoice-details'>
                <p><strong>Invoice Number:</strong> INV-2024-001</p>
                <p><strong>Date:</strong> " + DateTime.Now.ToString("yyyy-MM-dd") + @"</p>
                <p><strong>Customer:</strong> ABC Corporation</p>
            </div>
            <table>
                <thead>
                    <tr>
                        <th>Item</th>
                        <th>Quantity</th>
                        <th>Price</th>
                        <th>Total</th>
                    </tr>
                </thead>
                <tbody>
                    <tr>
                        <td>Professional Services</td>
                        <td>10</td>
                        <td>$150.00</td>
                        <td>$1,500.00</td>
                    </tr>
                    <tr>
                        <td>Software License</td>
                        <td>1</td>
                        <td>$499.00</td>
                        <td>$499.00</td>
                    </tr>
                </tbody>
            </table>
            <div class='total'>
                Total Amount: $1,999.00
            </div>
        </body>
        </html>";
        // Generate PDF file
        var document = renderer.RenderHtmlAsPdf(htmlContent);
        document.SaveAs("invoice.pdf");
    }
}
using IronPdf;
using System;

public class InvoiceGenerator
{
    public void CreateInvoiceDocument()
    {
        var renderer = new ChromePdfRenderer();
        // HTML content with styling
        string htmlContent = @"
        <!DOCTYPE html>
        <html>
        <head>
            <style>
                body { font-family: 'Arial', sans-serif; margin: 40px; }
                .header { background-color: #003366; color: white; padding: 20px; text-align: center; }
                .invoice-details { margin: 20px 0; }
                table { width: 100%; border-collapse: collapse; margin-top: 20px; }
                th { background-color: #f0f0f0; padding: 10px; text-align: left; }
                td { padding: 10px; border-bottom: 1px solid #ddd; }
                .total { font-size: 18px; font-weight: bold; text-align: right; margin-top: 20px; }
            </style>
        </head>
        <body>
            <div class='header'>
                <h1>INVOICE</h1>
            </div>
            <div class='invoice-details'>
                <p><strong>Invoice Number:</strong> INV-2024-001</p>
                <p><strong>Date:</strong> " + DateTime.Now.ToString("yyyy-MM-dd") + @"</p>
                <p><strong>Customer:</strong> ABC Corporation</p>
            </div>
            <table>
                <thead>
                    <tr>
                        <th>Item</th>
                        <th>Quantity</th>
                        <th>Price</th>
                        <th>Total</th>
                    </tr>
                </thead>
                <tbody>
                    <tr>
                        <td>Professional Services</td>
                        <td>10</td>
                        <td>$150.00</td>
                        <td>$1,500.00</td>
                    </tr>
                    <tr>
                        <td>Software License</td>
                        <td>1</td>
                        <td>$499.00</td>
                        <td>$499.00</td>
                    </tr>
                </tbody>
            </table>
            <div class='total'>
                Total Amount: $1,999.00
            </div>
        </body>
        </html>";
        // Generate PDF file
        var document = renderer.RenderHtmlAsPdf(htmlContent);
        document.SaveAs("invoice.pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

出力PDF File

ASP.NET C#でPDFを作成する方法: 図2 - 複雑なHTMLからPDFへの出力

上記のコードは、IronPDFが複雑なHTML構造、CSSスタイル、動的コンテンツを処理してプロフェッショナルなPDF文書を作成する方法を示しています。 結果のPDFファイルはすべてのフォーマットを保持し、ビジネス文書の生成に最適です。

ASP.NET Core MVCのコントローラでPDFファイルを生成する方法

ASP.NET Core MVCアプリケーションでは、通常、コントローラアクション内でPDFファイルを生成し、ユーザーにダウンロード用として返します。 以下のコードスニペットは、最新バージョンを使用してコントローラ内でどのようにPDF生成を実装するかを示しています:

using Microsoft.AspNetCore.Mvc;
using IronPdf;
using System.IO;

public class DocumentController : Controller
{
    public IActionResult GenerateReport()
    {
        var renderer = new ChromePdfRenderer();
        // Configure rendering options
        renderer.RenderingOptions.MarginTop = 25;
        renderer.RenderingOptions.MarginBottom = 25;
        renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print;
        string htmlString = @"
        <html>
        <head>
            <style>
                body { font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; }
                h1 { color: #2c3e50; }
                .report-content { line-height: 1.6; }
            </style>
        </head>
        <body>
            <h1>Monthly Sales Report</h1>
            <div class='report-content'>
                <p>This report contains confidential sales data for the current month.</p>
                <p>Total Revenue: $45,678</p>
                <p>New Customers: 123</p>
            </div>
        </body>
        </html>";
        // Create PDF document
        var pdfDocument = renderer.RenderHtmlAsPdf(htmlString);
        // Convert to byte array
        byte[] pdfBytes = pdfDocument.BinaryData;
        // Return file
        return File(pdfBytes, "application/pdf", "sales-report.pdf");
    }
}
using Microsoft.AspNetCore.Mvc;
using IronPdf;
using System.IO;

public class DocumentController : Controller
{
    public IActionResult GenerateReport()
    {
        var renderer = new ChromePdfRenderer();
        // Configure rendering options
        renderer.RenderingOptions.MarginTop = 25;
        renderer.RenderingOptions.MarginBottom = 25;
        renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print;
        string htmlString = @"
        <html>
        <head>
            <style>
                body { font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; }
                h1 { color: #2c3e50; }
                .report-content { line-height: 1.6; }
            </style>
        </head>
        <body>
            <h1>Monthly Sales Report</h1>
            <div class='report-content'>
                <p>This report contains confidential sales data for the current month.</p>
                <p>Total Revenue: $45,678</p>
                <p>New Customers: 123</p>
            </div>
        </body>
        </html>";
        // Create PDF document
        var pdfDocument = renderer.RenderHtmlAsPdf(htmlString);
        // Convert to byte array
        byte[] pdfBytes = pdfDocument.BinaryData;
        // Return file
        return File(pdfBytes, "application/pdf", "sales-report.pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

ASP.NET PDF出力

ASP.NET C#でPDFを作成する方法: 図3 - ASP.NET HTMLからPDFへの出力

このコントローラアクションはPDF文書を生成し、ダウンロード可能なファイルとして返します。レンダリングオプションにより、PDFフォーマットの出力を最適化するために余白をカスタマイズしたり、CSSメディアタイプを指定することができます。 ダウンロード用のファイル名は「sales-report.pdf」です。

URLやHTMLファイルから簡単にPDFファイルを生成する方法

IronPDF can also convert existing web pages and HTML files directly to PDF format. この機能は、既存のコンテンツからPDFを生成する必要がある場合に特に便利です:

using IronPdf;

public class WebPageConverter
{
    public void ConvertUrlToPdf()
    {
        var renderer = new ChromePdfRenderer();
        renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Screen;
        renderer.RenderingOptions.EnableJavaScript = true;
        renderer.RenderingOptions.WaitFor.RenderDelay(1000);
        // Convert URL to PDF
        var urlPdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");
        urlPdf.SaveAs("webpage.pdf");
    }

    public void ConvertHtmlFileToPdf()
    {
        var renderer = new ChromePdfRenderer();
        // Convert HTML file to PDF
        var htmlFile = renderer.RenderHtmlFileAsPdf("template.html");
        htmlFile.SaveAs("from-file.pdf");
    }
}
using IronPdf;

public class WebPageConverter
{
    public void ConvertUrlToPdf()
    {
        var renderer = new ChromePdfRenderer();
        renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Screen;
        renderer.RenderingOptions.EnableJavaScript = true;
        renderer.RenderingOptions.WaitFor.RenderDelay(1000);
        // Convert URL to PDF
        var urlPdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");
        urlPdf.SaveAs("webpage.pdf");
    }

    public void ConvertHtmlFileToPdf()
    {
        var renderer = new ChromePdfRenderer();
        // Convert HTML file to PDF
        var htmlFile = renderer.RenderHtmlFileAsPdf("template.html");
        htmlFile.SaveAs("from-file.pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

URLからPDFへの出力

ASP.NET C#でPDFを作成する方法: 図4 - URLからPDFへの出力

両方のメソッドは、PDFファイルを作成する際に元のコンテンツの完全なコードレイアウト、画像、およびスタイリングを保持します。 エラーが発生した場合は、ファイルパスを確認してください。

PDF文書にヘッダーとフッターを追加する方法

PDF文書にプロフェッショナルなヘッダーとフッターを追加することで、見栄えが向上し、ページ番号や文書タイトルなどの重要なコンテキストを提供します。 次のコード例は、これを行う方法を示しています:

using IronPdf;

public class HeaderFooterExample
{
    public void CreatePdfWithHeaderFooter()
    {
        var renderer = new ChromePdfRenderer();
        // Configure headers and footers
        renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
        {
            MaxHeight = 25,
            HtmlFragment = "<div style='text-align:center'>Company Report</div>",
            DrawDividerLine = true
        };
        renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter()
        {
            MaxHeight = 25,
            HtmlFragment = "<div style='text-align:center'>Page {page} of {total-pages}</div>",
            DrawDividerLine = true
        };
        // HTML content for the main document
        string content = "<h1>Annual Report</h1><p>This document contains important information.</p>";
        // Generate PDF with headers and footers
        var doc = renderer.RenderHtmlAsPdf(content);
        doc.SaveAs("report-with-headers.pdf");
    }
}
using IronPdf;

public class HeaderFooterExample
{
    public void CreatePdfWithHeaderFooter()
    {
        var renderer = new ChromePdfRenderer();
        // Configure headers and footers
        renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
        {
            MaxHeight = 25,
            HtmlFragment = "<div style='text-align:center'>Company Report</div>",
            DrawDividerLine = true
        };
        renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter()
        {
            MaxHeight = 25,
            HtmlFragment = "<div style='text-align:center'>Page {page} of {total-pages}</div>",
            DrawDividerLine = true
        };
        // HTML content for the main document
        string content = "<h1>Annual Report</h1><p>This document contains important information.</p>";
        // Generate PDF with headers and footers
        var doc = renderer.RenderHtmlAsPdf(content);
        doc.SaveAs("report-with-headers.pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

出力PDF with Headers

ASP.NET C#でPDFを作成する方法: 図5 - ヘッダー付き生成PDF

{page}{total-pages}プレースホルダーは、自動的に正しいページ番号で埋められ、プロフェッショナルな外観のPDFファイルを作成します。 これにより、既存の文書オブジェクトに新しいページを追加できます。

結論

IronPDFを使用したPDF ASP.NET C#タスクの作成プロセスは、複雑なタスクを簡単なプロセスに変換します。 簡単なHTML文字列から複雑な請求書文書まで、IronPDFのChromeレンダリングエンジンは、PDF文書が意図通りに見えることを保証します。 ライブラリの直感的なAPIにより、最小限のコードでPDFファイルを生成し、PDFファイルを修正し、既存のPDF文書を扱うことができます。 デジタル署名も簡単に管理できます。 コンソールアプリケーションテンプレートやASP.NETの使用が柔軟です。

ビジネスレポートのためにPDFを生成する場合でも、ウェブページからPDF文書を作成する場合でも、またはHTMLコンテンツをポータブル文書形式に変換する場合でも、IronPDFは必要なすべてのツールを提供します。 あなたの.NETアプリケーションでプロフェッショナルなPDFファイルを作成する準備ができましたか?

今日はIronPDFをインストールしましょう、そして適切な.NETライブラリを使用することでPDF生成がいかに簡単かを実感してください。 詳しくは良いドキュメンテーションを確認してください。 IronPDFは.NET Frameworkと.NET Coreの両方をサポートしています。

本番配備のためには、プロジェクトのニーズに最も適した包括的なライセンスオプションを探索してください。 IronPDFを使用すると、ASP.NET Coreアプリケーションで強力なPDF文書の生成を数行のコードで実現できます。

よくある質問

ASP.NET C# で PDF を作成する最適な方法は何ですか?

IronPDF を使用すると、HTML を PDF に変換することで、簡単な API と Chrome レンダリングを使ってプロフェッショナルなドキュメントを生成できます。

IronPDFを使用してHTMLをPDFに変換できますか?

はい、IronPDF は HTML を PDF に変換するための簡単な方法を提供しており、請求書、レポート、および他のプロフェッショナルなドキュメントの生成に理想的です。

PDF を生成するために IronPDF を使用することの利点は何ですか?

IronPDF はシンプルな API、Chrome レンダリング、高品質な PDF を HTML コンテンツから生成する能力を提供しており、ASP.NET C# でのプロフェッショナルなドキュメントの作成に最適です。

ASP.NET C# で IronPDF を使用して請求書を生成することは可能ですか?

もちろんです、IronPDF は HTML 請求書テンプレートを PDF に簡単に変換することでプロフェッショナルな請求書を生成できます。

IronPDFはPDF作成プロセスをどのように簡素化しますか?

IronPDF はユーザーフレンドリーな API を提供し、HTML を PDF に変換することで、従来の PDF API の複雑さを排除して PDF 作成プロセスを簡略化します。

IronPDF で生成できるドキュメントの種類は何ですか?

IronPDF を使用すると、HTML を PDF に変換することで、プロフェッショナルな請求書、詳細なレポート、公式ドキュメントなど、幅広いドキュメントを生成できます。

IronPDF は PDF のレンダリングに Chrome を使用していますか?

はい、IronPDF は Chrome レンダリングを利用して HTML コンテンツから高品質の PDF 出力を保証します。

Curtis Chau
テクニカルライター

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

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