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

ASP.NET CoreでPDFを表示、保存、印刷する方法

ASP.NETコアビューアでPDFを表示、保存、印刷する方法

IronPDF は、サーバー側で PDF を生成し、ブラウザーの組み込み PDF ビューアーを活用することで、ASP.NET Core アプリケーションでシームレスな PDF 表示を可能にし、プラグインの必要性を排除しながら、Docker コンテナーとクラウド環境でのクロスプラットフォーム展開をサポートします。

PDFドキュメントを直接ウェブブラウザで表示することは、現代のASP.NET Coreウェブアプリケーションにおいて重要な要件となっています。 請求書、レポート、契約書などを作成する場合でも、ユーザーはファイルをダウンロードしたり Adobe Acrobat Reader をインストールしたりすることなく、シームレスに PDF を表示できることを期待しています。 このチュートリアルでは、 IronPDF が強力なChrome ベースのレンダリング エンジンを使用して、ASP.NET Core ビューアーでの PDF の表示、保存、印刷を簡素化する方法を説明します。

ASP.NET CoreでのブラウザのPDF表示方法

現代のブラウザは適切なMIMEタイプ(application/pdf)を持つPDFファイルを受け取るときに、組み込みのPDFビューアを起動します。 ASP.NET Coreアプリケーションが適切なヘッダーを含むPDFドキュメントを返すと、ブラウザはそれを自動的にインラインで表示します。これにより、外部プラグイン、Adobe Acrobat Reader、複雑なJavaScriptライブラリは不要になります。 MDN Web Docs によると、ブラウザーがファイルのダウンロードと表示を処理する方法を制御するには、適切なヘッダー構成が不可欠です。

IronPDF は、 ChromePdfRendererクラスを使用してサーバー側で高品質の PDF を生成することで、このブラウザ機能を活用します。 レンダラーは完全な Chrome エンジンを内部で使用しており、最新のCSSJavaScriptデジタル署名Web フォントを完全にサポートし、ドキュメントが意図したとおりに表示されることを保証します。 単純なドキュメント ビューアとは異なり、IronPDF はPDF の処理とレンダリングを完全に制御できます。

ASP.NET CoreでPDFファイルを表示/閲覧するために必要なツールは何ですか?

ASP.NET Core プロジェクトで IronPDF を設定するには、わずか数ステップで済みます。 まず、Visual Studioまたはコマンドラインで新しいプロジェクトを作成します。Visual Studioを開き、ASP.NET Core Web Applicationのプロジェクトテンプレートを選択します:

dotnet new mvc -n PdfViewerApp
cd PdfViewerApp
dotnet new mvc -n PdfViewerApp
cd PdfViewerApp
SHELL

.NET プロジェクトに IronPDF をインストールするにはどうすればよいでしょうか?

プロジェクトに NuGet パッケージ マネージャー経由で IronPDF をインストールします。

Install-Package IronPdf

もしくはソリューションエクスプローラーでプロジェクトを右クリックし、"NuGetパッケージの管理"を選択します。適切なパッケージソースを選択し、IronPDFを検索します。

これで必要なセットアップは完了です。 IronPDF は、.NET 6、7、8 を含む ASP.NET Core 3.1 以降 (長期サポート バージョン) とシームレスに動作します。ライブラリは、最新のフレームワークとの互換性を確保するために頻繁に更新されます。 詳細なインストール手順については、 IronPDF インストール ガイドをご覧ください。 パッケージには、PDF の生成編集、処理に必要なすべてのコンポーネントが含まれています。 Docker デプロイメントの場合、IronPDF はデプロイメントの複雑さを最小限に抑える最適化されたコンテナ イメージを提供します。これは、コンテナ化された環境を管理するDevOpsエンジニアにとって重要な考慮事項です。

ASP.NET Coreを使用してブラウザにPDFファイルを表示するにはどうすればよいですか?

ブラウザで PDF を作成して表示するには、数行のコードだけが必要です。 HTML から PDF を生成し、インラインで表示する完全なコントローラー アクションを次に示します。

using IronPdf;
using Microsoft.AspNetCore.Mvc;

public class PdfController : Controller
{
    public IActionResult ViewPdf()
    {
        var renderer = new ChromePdfRenderer();
        // Configure rendering options for the PDF viewer
        renderer.RenderingOptions.PrintHtmlBackgrounds = true;
        renderer.RenderingOptions.CreatePdfFormsFromHtml = true;
        renderer.RenderingOptions.EnableJavaScript = true;
        // Generate PDF from HTML string
        var html = @"
            <html>
            <head>
                <style>
                    body { font-family: Arial, sans-serif; padding: 20px; }
                    h1 { color: #2c3e50; }
                    .content { line-height: 1.6; width: 100%; }
                </style>
            </head>
            <body>
                <h1>Invoice #12345</h1>
                <div class='content'>
                    <p>Date: " + DateTime.Now.ToString("yyyy-MM-dd") + @"</p>
                    <p>Thank you for your business!</p>
                </div>
            </body>
            </html>";
        var pdf = renderer.RenderHtmlAsPdf(html);
        // Return PDF for inline viewing in the browser
        return File(pdf.BinaryData, "application/pdf");
    }
}
using IronPdf;
using Microsoft.AspNetCore.Mvc;

public class PdfController : Controller
{
    public IActionResult ViewPdf()
    {
        var renderer = new ChromePdfRenderer();
        // Configure rendering options for the PDF viewer
        renderer.RenderingOptions.PrintHtmlBackgrounds = true;
        renderer.RenderingOptions.CreatePdfFormsFromHtml = true;
        renderer.RenderingOptions.EnableJavaScript = true;
        // Generate PDF from HTML string
        var html = @"
            <html>
            <head>
                <style>
                    body { font-family: Arial, sans-serif; padding: 20px; }
                    h1 { color: #2c3e50; }
                    .content { line-height: 1.6; width: 100%; }
                </style>
            </head>
            <body>
                <h1>Invoice #12345</h1>
                <div class='content'>
                    <p>Date: " + DateTime.Now.ToString("yyyy-MM-dd") + @"</p>
                    <p>Thank you for your business!</p>
                </div>
            </body>
            </html>";
        var pdf = renderer.RenderHtmlAsPdf(html);
        // Return PDF for inline viewing in the browser
        return File(pdf.BinaryData, "application/pdf");
    }
}
Imports IronPdf
Imports Microsoft.AspNetCore.Mvc

Public Class PdfController
    Inherits Controller

    Public Function ViewPdf() As IActionResult
        Dim renderer = New ChromePdfRenderer()
        ' Configure rendering options for the PDF viewer
        renderer.RenderingOptions.PrintHtmlBackgrounds = True
        renderer.RenderingOptions.CreatePdfFormsFromHtml = True
        renderer.RenderingOptions.EnableJavaScript = True
        ' Generate PDF from HTML string
        Dim html = "
            <html>
            <head>
                <style>
                    body { font-family: Arial, sans-serif; padding: 20px; }
                    h1 { color: #2c3e50; }
                    .content { line-height: 1.6; width: 100%; }
                </style>
            </head>
            <body>
                <h1>Invoice #12345</h1>
                <div class='content'>
                    <p>Date: " & DateTime.Now.ToString("yyyy-MM-dd") & "</p>
                    <p>Thank you for your business!</p>
                </div>
            </body>
            </html>"
        Dim pdf = renderer.RenderHtmlAsPdf(html)
        ' Return PDF for inline viewing in the browser
        Return File(pdf.BinaryData, "application/pdf")
    End Function
End Class
$vbLabelText   $csharpLabel

このコードはChromePdfRendererインスタンスを作成し、背景色を含めてHTML フォームを PDF フォームに変換するように構成します。 RenderHtmlAsPdfメソッドは、HTML 文字列を PDF に変換します。 application/pdf MIME タイプで PDF を返すと、ブラウザは PDF をダウンロードするのではなくインラインで表示するよう指示されます。 このサーバー側のアプローチにより、すべてのブラウザーとプラットフォーム間で一貫したレンダリングが保証されます。これは、Azure デプロイメントAWS Lambda 環境の信頼性を維持するために不可欠です。

出力

! PDF ビューアーインターフェースに、2025年10月30日付、請求書番号12345のシンプルな請求書が表示されています。ASP.NET Core PDF ビューアーは、ツールバーにページナビゲーションコントロールとズームオプションを備えたレンダリングされた請求書ドキュメントを正常に表示しています。

既存の HTML ファイルまたは Razor ページの場合は、代替のレンダリング方法を使用できます。

// Render from URL - useful for complex pages
var pdf = renderer.RenderUrlAsPdf("___PROTECTED_URL_58___");
// Render from HTML file in the same location
var pdf = renderer.RenderHtmlFileAsPdf("Views/Invoice.html");
// Render from wwwroot folder
var pdf = renderer.RenderHtmlFileAsPdf("wwwroot/templates/report.html");
// For containerized applications, use environment-specific paths
var basePath = Environment.GetEnvironmentVariable("APP_BASE_PATH") ?? "wwwroot";
var pdf = renderer.RenderHtmlFileAsPdf($"{basePath}/templates/report.html");
// Render from URL - useful for complex pages
var pdf = renderer.RenderUrlAsPdf("___PROTECTED_URL_58___");
// Render from HTML file in the same location
var pdf = renderer.RenderHtmlFileAsPdf("Views/Invoice.html");
// Render from wwwroot folder
var pdf = renderer.RenderHtmlFileAsPdf("wwwroot/templates/report.html");
// For containerized applications, use environment-specific paths
var basePath = Environment.GetEnvironmentVariable("APP_BASE_PATH") ?? "wwwroot";
var pdf = renderer.RenderHtmlFileAsPdf($"{basePath}/templates/report.html");
' Render from URL - useful for complex pages
Dim pdf = renderer.RenderUrlAsPdf("___PROTECTED_URL_58___")
' Render from HTML file in the same location
pdf = renderer.RenderHtmlFileAsPdf("Views/Invoice.html")
' Render from wwwroot folder
pdf = renderer.RenderHtmlFileAsPdf("wwwroot/templates/report.html")
' For containerized applications, use environment-specific paths
Dim basePath = If(Environment.GetEnvironmentVariable("APP_BASE_PATH"), "wwwroot")
pdf = renderer.RenderHtmlFileAsPdf($"{basePath}/templates/report.html")
$vbLabelText   $csharpLabel

これらの方法により、高品質の PDF 出力を維持しながら、HTML コンテンツのソースを柔軟に取得できるようになります。 また、IronPDF の包括的な機能を使用して、既存の PDF ドキュメントを読み込んだりPDF を編集したり、 Word (DOCX ファイル)や Excel 形式を操作したりすることもできます。 HTML から PDF への変換オプションの詳細については、ドキュメントをご覧ください。 高度な処理および編集機能については、 API リファレンスを参照してください。

マイクロサービス アーキテクチャを管理するDevOpsエンジニアにとって、IronPDF のネイティブ エンジン アーキテクチャとリモート エンジンアーキテクチャは、柔軟な展開を実現します。 リモート エンジン オプションを使用すると、PDF レンダリングを専用サービスに分離して、リソース使用率を向上させ、水平スケーリングが可能になります。

ブラウザからユーザーがPDFドキュメントを保存するにはどうすればよいですか?

ユーザーが PDF をインラインで表示するのではなくダウンロードできるようにするには、 Content-Dispositionヘッダーを変更します。 この機能は、ユーザーがオフライン アクセスを必要とするアプリケーションにとって不可欠です。

public IActionResult DownloadPdf()
{
    var renderer = new ChromePdfRenderer();
    // Create PDF with CSS styling and images
    var html = @"<h1>Download Me</h1>
                 <img src='logo.png' width='100' />";
    var pdf = renderer.RenderHtmlAsPdf(html, @"wwwroot/images");
    // Force download with custom filename
    return File(pdf.BinaryData, "application/pdf", "invoice-2024.pdf");
}

// Health check endpoint for container orchestration
[HttpGet("/health/pdf-generator")]
public IActionResult HealthCheck()
{
    try
    {
        var renderer = new ChromePdfRenderer();
        var pdf = renderer.RenderHtmlAsPdf("<p>Health Check</p>");
        return Ok(new { status = "healthy", timestamp = DateTime.UtcNow });
    }
    catch (Exception ex)
    {
        return StatusCode(503, new { status = "unhealthy", error = ex.Message });
    }
}
public IActionResult DownloadPdf()
{
    var renderer = new ChromePdfRenderer();
    // Create PDF with CSS styling and images
    var html = @"<h1>Download Me</h1>
                 <img src='logo.png' width='100' />";
    var pdf = renderer.RenderHtmlAsPdf(html, @"wwwroot/images");
    // Force download with custom filename
    return File(pdf.BinaryData, "application/pdf", "invoice-2024.pdf");
}

// Health check endpoint for container orchestration
[HttpGet("/health/pdf-generator")]
public IActionResult HealthCheck()
{
    try
    {
        var renderer = new ChromePdfRenderer();
        var pdf = renderer.RenderHtmlAsPdf("<p>Health Check</p>");
        return Ok(new { status = "healthy", timestamp = DateTime.UtcNow });
    }
    catch (Exception ex)
    {
        return StatusCode(503, new { status = "unhealthy", error = ex.Message });
    }
}
Public Function DownloadPdf() As IActionResult
    Dim renderer = New ChromePdfRenderer()
    ' Create PDF with CSS styling and images
    Dim html = "<h1>Download Me</h1>
                <img src='logo.png' width='100' />"
    Dim pdf = renderer.RenderHtmlAsPdf(html, "wwwroot/images")
    ' Force download with custom filename
    Return File(pdf.BinaryData, "application/pdf", "invoice-2024.pdf")
End Function

' Health check endpoint for container orchestration
<HttpGet("/health/pdf-generator")>
Public Function HealthCheck() As IActionResult
    Try
        Dim renderer = New ChromePdfRenderer()
        Dim pdf = renderer.RenderHtmlAsPdf("<p>Health Check</p>")
        Return Ok(New With {Key .status = "healthy", Key .timestamp = DateTime.UtcNow})
    Catch ex As Exception
        Return StatusCode(503, New With {Key .status = "unhealthy", Key .error = ex.Message})
    End Try
End Function
$vbLabelText   $csharpLabel

ファイル名パラメータを追加するとContent-Dispositionヘッダーが自動的に"attachment"に設定され、ブラウザにファイルのダウンロードを促すメッセージが表示されます。ユーザーは、ブラウザの保存機能(Ctrl+SまたはPDFビューアのツールバー)を使用して、インラインで表示されたPDFを保存することもできます。 上記のヘルスチェック エンドポイントは、Kubernetes のデプロイメントとコンテナ オーケストレーション プラットフォームにとって非常に重要であり、PDF サービスの応答性を確保します。

出力

Download Meというテキストと IronPDF for .NET のロゴが含まれたドキュメントを 100% ズームでブラウザーに表示した PDF ビューアー。 PDF ビューアは、IronPDF for .NET を通じてダウンロード機能が有効になっている、生成された請求書ドキュメントを正常に表示します。

大きな PDF ファイルにストリームを使用する必要があるのはなぜですか?

大きなドキュメントでメモリ効率を向上させるには、ストリームを使用します。

public IActionResult StreamPdf()
{
    var renderer = new ChromePdfRenderer();
    // Load and process HTML with images
    var html = "<h1>Streamed Content</h1>";
    var pdf = renderer.RenderHtmlAsPdf(html);
    // Stream the PDF file to the browser
    var stream = pdf.Stream;
    stream.Position = 0;
    return File(stream, "application/pdf", "document.pdf");
}

// Async streaming for better resource utilization
public async Task<IActionResult> StreamPdfAsync()
{
    var renderer = new ChromePdfRenderer();
    // Configure for optimal container performance
    renderer.RenderingOptions.Timeout = 60000; // 60 seconds for complex documents
    renderer.RenderingOptions.RenderDelay = 500; // Allow JS to execute

    var html = await LoadHtmlTemplateAsync();
    var pdf = await Task.Run(() => renderer.RenderHtmlAsPdf(html));

    var stream = pdf.Stream;
    stream.Position = 0;
    return File(stream, "application/pdf", "async-document.pdf");
}
public IActionResult StreamPdf()
{
    var renderer = new ChromePdfRenderer();
    // Load and process HTML with images
    var html = "<h1>Streamed Content</h1>";
    var pdf = renderer.RenderHtmlAsPdf(html);
    // Stream the PDF file to the browser
    var stream = pdf.Stream;
    stream.Position = 0;
    return File(stream, "application/pdf", "document.pdf");
}

// Async streaming for better resource utilization
public async Task<IActionResult> StreamPdfAsync()
{
    var renderer = new ChromePdfRenderer();
    // Configure for optimal container performance
    renderer.RenderingOptions.Timeout = 60000; // 60 seconds for complex documents
    renderer.RenderingOptions.RenderDelay = 500; // Allow JS to execute

    var html = await LoadHtmlTemplateAsync();
    var pdf = await Task.Run(() => renderer.RenderHtmlAsPdf(html));

    var stream = pdf.Stream;
    stream.Position = 0;
    return File(stream, "application/pdf", "async-document.pdf");
}
Imports System.Threading.Tasks

Public Function StreamPdf() As IActionResult
    Dim renderer = New ChromePdfRenderer()
    ' Load and process HTML with images
    Dim html = "<h1>Streamed Content</h1>"
    Dim pdf = renderer.RenderHtmlAsPdf(html)
    ' Stream the PDF file to the browser
    Dim stream = pdf.Stream
    stream.Position = 0
    Return File(stream, "application/pdf", "document.pdf")
End Function

' Async streaming for better resource utilization
Public Async Function StreamPdfAsync() As Task(Of IActionResult)
    Dim renderer = New ChromePdfRenderer()
    ' Configure for optimal container performance
    renderer.RenderingOptions.Timeout = 60000 ' 60 seconds for complex documents
    renderer.RenderingOptions.RenderDelay = 500 ' Allow JS to execute

    Dim html = Await LoadHtmlTemplateAsync()
    Dim pdf = Await Task.Run(Function() renderer.RenderHtmlAsPdf(html))

    Dim stream = pdf.Stream
    stream.Position = 0
    Return File(stream, "application/pdf", "async-document.pdf")
End Function
$vbLabelText   $csharpLabel

このアプローチでは、中間バイト配列を作成せずに PDF を応答に直接ストリーミングすることで、メモリの消費量を削減します。 wwwroot フォルダーから既存の PDF を読み込んで編集し、変更されたバージョンをストリーミングすることもできます。 高度なPDF ドキュメント操作および画像処理については、 PdfDocument API リファレンスを参照してください。 このコンポーネントは、テキストの選択フォームの入力デジタル署名の追加など、さまざまな編集操作をサポートしています。

コンテナのデプロイメントでは、非同期 PDF 生成アプローチによりスレッドのブロックが防止され、アプリケーションのスループットが向上します。これは、オーケストレーションされた環境で応答性の高いサービスを維持するために重要です。

ASP.NET Coreウェブアプリケーションから直接PDFドキュメントを印刷できますか?

IronPDF は、適切な CSS メディア タイプとページ設定を構成することで、PDF を印刷用に最適化します。 これにより、ユーザーが物理プリンターで印刷する場合でも、PDF として保存する場合でも、プロフェッショナルな出力が保証されます。

public IActionResult PrintablePdf()
{
    var renderer = new ChromePdfRenderer();
    // Configure printing options for the PDF viewer
    renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Print;
    renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Portrait;
    renderer.RenderingOptions.MarginTop = 25;
    renderer.RenderingOptions.MarginBottom = 25;
    renderer.RenderingOptions.MarginLeft = 25;
    renderer.RenderingOptions.MarginRight = 25;
    // Load HTML with print-specific CSS
    var html = @"<h1>Print-Optimized Document</h1>
                 <p>This document is optimized for printing.</p>";
    var pdf = renderer.RenderHtmlAsPdf(html);
    // Return the PDF file for viewing and printing
    return File(pdf.BinaryData, "application/pdf");
}

// Container-optimized configuration
public IActionResult ConfigureForContainer()
{
    var renderer = new ChromePdfRenderer();
    // Disable GPU for container compatibility
    renderer.RenderingOptions.EnableJavaScript = true;
    renderer.RenderingOptions.RenderDelay = 0; // No artificial delays
    renderer.RenderingOptions.Timeout = 30000; // 30 second timeout

    // Use environment variables for configuration
    var printDpi = int.Parse(Environment.GetEnvironmentVariable("PDF_PRINT_DPI") ?? "300");
    renderer.RenderingOptions.PrintHtmlBackgrounds = true;

    return Ok("Configured for container environment");
}
public IActionResult PrintablePdf()
{
    var renderer = new ChromePdfRenderer();
    // Configure printing options for the PDF viewer
    renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Print;
    renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Portrait;
    renderer.RenderingOptions.MarginTop = 25;
    renderer.RenderingOptions.MarginBottom = 25;
    renderer.RenderingOptions.MarginLeft = 25;
    renderer.RenderingOptions.MarginRight = 25;
    // Load HTML with print-specific CSS
    var html = @"<h1>Print-Optimized Document</h1>
                 <p>This document is optimized for printing.</p>";
    var pdf = renderer.RenderHtmlAsPdf(html);
    // Return the PDF file for viewing and printing
    return File(pdf.BinaryData, "application/pdf");
}

// Container-optimized configuration
public IActionResult ConfigureForContainer()
{
    var renderer = new ChromePdfRenderer();
    // Disable GPU for container compatibility
    renderer.RenderingOptions.EnableJavaScript = true;
    renderer.RenderingOptions.RenderDelay = 0; // No artificial delays
    renderer.RenderingOptions.Timeout = 30000; // 30 second timeout

    // Use environment variables for configuration
    var printDpi = int.Parse(Environment.GetEnvironmentVariable("PDF_PRINT_DPI") ?? "300");
    renderer.RenderingOptions.PrintHtmlBackgrounds = true;

    return Ok("Configured for container environment");
}
Imports System

Public Class PdfController
    Public Function PrintablePdf() As IActionResult
        Dim renderer As New ChromePdfRenderer()
        ' Configure printing options for the PDF viewer
        renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Print
        renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Portrait
        renderer.RenderingOptions.MarginTop = 25
        renderer.RenderingOptions.MarginBottom = 25
        renderer.RenderingOptions.MarginLeft = 25
        renderer.RenderingOptions.MarginRight = 25
        ' Load HTML with print-specific CSS
        Dim html As String = "<h1>Print-Optimized Document</h1>
                              <p>This document is optimized for printing.</p>"
        Dim pdf = renderer.RenderHtmlAsPdf(html)
        ' Return the PDF file for viewing and printing
        Return File(pdf.BinaryData, "application/pdf")
    End Function

    ' Container-optimized configuration
    Public Function ConfigureForContainer() As IActionResult
        Dim renderer As New ChromePdfRenderer()
        ' Disable GPU for container compatibility
        renderer.RenderingOptions.EnableJavaScript = True
        renderer.RenderingOptions.RenderDelay = 0 ' No artificial delays
        renderer.RenderingOptions.Timeout = 30000 ' 30 second timeout

        ' Use environment variables for configuration
        Dim printDpi As Integer = Integer.Parse(Environment.GetEnvironmentVariable("PDF_PRINT_DPI") Or "300")
        renderer.RenderingOptions.PrintHtmlBackgrounds = True

        Return Ok("Configured for container environment")
    End Function
End Class
$vbLabelText   $csharpLabel

CssMediaType Printに設定すると、印刷固有の CSS スタイルが適用され、印刷時にドキュメントが正しく表示されるようになります。 マージン設定により、物理的な紙に適切なスペーシングが提供されます。 ユーザーは、標準の印刷ダイアログを使用してブラウザの PDF ビューアから直接PDF を印刷することができ、プリンタの選択と設定を完全に制御できます。 出力を微調整するためのPDF レンダリング オプションの詳細について説明します。

印刷に最適化されたドキュメントを表示する PDF ビューア インターフェイス。白いページの中央にこのドキュメントは印刷用に最適化されていますというメッセージが表示されます。 PDF ビューアは、ドキュメントが印刷用に最適化されると確認メッセージを表示し、ユーザーがファイルが高品質の出力の準備ができていることを確実に知らせます。

IronPDF はクロスプラットフォームおよびコンテナーのデプロイメントをどのようにサポートしますか?

IronPDFは、Windows、Linux、macOS、Dockerコンテナ、AzureやAWSなどのクラウドプラットフォームでシームレスに動作します。 このクロスプラットフォーム対応により、AzureやAWSなどのASP.NET Core PDFビューアソリューションがデプロイ環境にかかわらず一貫して動作します。 ライブラリはプラットフォーム固有のレンダリングの詳細を内部で処理するため、コードは変更せずにどこでも動作します。

複数のバージョン、オペレーティング システム、クラウド プラットフォーム、開発環境にわたる .NET の互換性を示すクロスプラットフォーム サポート図。 IronPDF の包括的なクロスプラットフォーム サポートには、.NET 9 から Framework 4.6.2+ までの互換性が含まれ、Windows、Linux、Mac で実行され、主要なクラウド プロバイダーおよび開発ツールと統合されます。

サーバーサイド処理は、すべてのプラットフォームで一貫したPDF生成を保証します。 Windows サーバーに展開しても、 Linux コンテナーに展開しても、コンポーネントは同じレンダリング品質を維持します。 ライブラリはオペレーティング システム間のパスの違いを自動的に管理し、wwwroot フォルダーまたはその他の場所にあるファイルを正しく処理します。 コンテナ化されたデプロイメントについては、 Docker デプロイメント ガイドを確認してください。 パッケージには各プラットフォームに必要な依存関係がすべて含まれており、標準の ASP.NET Core 要件を超える追加の構成は必要ありません。

本番環境のコンテナのデプロイメントでは、次の Dockerfile の例を検討してください。

FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS base
WORKDIR /app
EXPOSE 80

# Install IronPDF dependencies for Linux
RUN apt-get update && apt-get install -y \
    libgdiplus \
    libc6-dev \
    libx11-6 \
    && rm -rf /var/lib/apt/lists/*

FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build
WORKDIR /src
COPY ["PdfViewerApp.csproj", "./"]
RUN dotnet restore "PdfViewerApp.csproj"
COPY . .
RUN dotnet build "PdfViewerApp.csproj" -c Release -o /app/build

FROM build AS publish
RUN dotnet publish "PdfViewerApp.csproj" -c Release -o /app/publish

FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "PdfViewerApp.dll"]

今すぐ無料トライアルを開始して、ドキュメント ビューアーの機能を変革しましょう。

ASP.NET Core PDF 表示に IronPDF を使用する主な利点は何ですか?

IronPDF は、サーバー側での生成とブラウザーネイティブの表示を組み合わせることで、ASP.NET Core アプリケーションでの PDF 処理を変革します。 わずか数行のコードで、HTML からプロフェッショナルな PDF を作成し、インラインで表示し、ダウンロードを可能にし、印刷用に最適化することができます。 Chrome ベースのレンダリング エンジンにより、すべてのプラットフォームでピクセル単位の精度が保証され、Adobe Acrobat Reader やサードパーティのビューアが不要になります。

この ASP.NET Core PDF ビューア ソリューションは、フォームの入力テキストの選択デジタル署名PDF の編集機能などの包括的な機能を提供します。 このコンポーネントは、Word 文書 (DOCX ファイル) 、Excel スプレッドシート、画像を PDF に変換することもサポートしています。 シンプルなドキュメント ビューアーを構築する場合でも、複雑なドキュメント管理システムを構築する場合でも、IronPDF は必要なツールを提供します。

ライブラリのタグ ヘルパー統合と広範なドキュメントにより、実装が簡単になります。 バックエンド処理で複雑なPDF 生成タスクを処理している間、プロジェクトでは PDF を直接表示できます。 ビューアは、wwwroot フォルダーから読み込む場合、動的に生成する場合、または外部ソースから取得する場合の一貫した動作を維持します。 ビルトインテーマサポートとカスタマイズ可能な幅設定により、アプリケーションのデザインに完璧にマッチします。 DevOpsチームの場合、 IronPDF Slim パッケージは展開サイズを縮小し、オーケストレーションされた環境におけるコンテナー サイズの制約に対処します。

あなたの.NET Core WebアプリケーションでのPDFビューイングを実装しますか?

実稼働環境で使用する場合、ライセンスは$799から始まり、包括的なサポートとアップデートが含まれます。 ドキュメントで詳細なAPIリファレンスと高度な機能を参照してください。 豊富なコード例を参考にして、ASP.NET CoreプロジェクトでPDF機能を迅速に実装してください。

IronPDF のライセンス ページには、4 つの永久ライセンス レベル (Lite、Plus、Professional、Unlimited) と、価格、開発者の制限、および IronPDF と Iron Suite のオプション間の切り替えが表示されています。 IronPDF は、単独開発者向けの 749 ドルから無制限使用向けの 3,999 ドルまで、さまざまなライセンス オプションを提供しており、すべてのライセンスには 1 年間のサポートとアップデートが含まれています。

よくある質問

ASP.NET CoreアプリケーションでPDFを表示するにはどうすればよいですか?

IronPDFを使用すると、アプリケーション内でPDFファイルを直接レンダリングする機能を提供することで、ASP.NET CoreアプリケーションでPDFを表示できます。

IronPDFを使用してASP.NET CoreでPDFを保存する手順は?

ASP.NET CoreでPDFを保存するには、IronPDFのビルトインメソッドを使用して文書をPDF形式に変換し、ファイルシステムやストリームに書き込むことができます。

ASP.NET CoreアプリケーションでPDFを印刷することは可能ですか?

はい、IronPDFを使用すると、ASP.NET Coreアプリケーションから直接PDFを印刷できます。

ASP.NET CoreでIronPDFを使用するメリットは何ですか?

IronPDFはASP.NET Coreとのシームレスな統合を提供し、最小限のセットアップでビュー、保存、印刷などのPDF操作を容易にします。

ASP.NET CoreでIronPDFは大きなPDF文書を処理できますか?

はい、IronPDFは大きなPDF文書を効率的に処理するように最適化されており、複雑なファイルでもスムーズなパフォーマンスを確保します。

ASP.NET CoreでIronPDFはPDFの注釈やコメントに対応していますか?

IronPDFはPDFに注釈やコメントを追加および読み取ることができ、ASP.NET CoreアプリケーションでPDF文書のインタラクティビティと使いやすさを向上させます。

既存のASP.NET CoreプロジェクトにIronPDFを統合するにはどうすればよいですか?

IronPDF NuGetパッケージをインストールし、そのAPIを使用してPDFを管理することで、ASP.NET CoreプロジェクトにIronPDFを統合できます。

IronPDFをASP.NET Coreで使用するための特定のシステム要件はありますか?

IronPDFは.NET Coreまたは.NET 5+を必要とし、主要なすべてのオペレーティングシステムをサポートしているため、ASP.NET Coreプロジェクトに柔軟な選択肢を提供します。

ASP.NET CoreでIronPDFは他のファイル形式をPDFに変換できますか?

はい、IronPDFはASP.NET Core環境内でHTML、画像、文書などのさまざまなファイル形式をPDFに変換できます。

ASP.NET Core開発者にIronPDFはどのようなサポートを提供していますか?

IronPDFは包括的なドキュメント、コードサンプル、およびPDF機能を実装するASP.NET Core開発者を支援するための迅速なサポートを提供します。

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

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

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