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

ASP.NET CoreでPDFファイルを表示する方法

PDFファイルは、ドキュメントの共有やデータ表示の目的で広く使用されています。 Webアプリケーションでは、ブラウザ内でユーザーに直接PDFファイルを表示することがよく求められます。 ASP.NET Coreアプリケーションは、この機能を実現するためのさまざまなオプションを提供しており、PDFファイルを操作するための人気のあるライブラリの1つがIronPDFです。

IronPDF は、開発者がPDFを簡単に作成、編集、および操作できる強力な.NETライブラリです。 この記事では、IronPDFを使用してASP.NET Core PDFビューアアプリケーションでPDFファイルを表示する方法を探ります。 必要なコンポーネントをセットアップする手順と、ASP.NET Core PDFビューアの統合を示すサンプルロジックを提供します。

環境のセットアップ

開始するには、以下の前提条件を確認してください。

  1. Visual Studio: 最新バージョンのVisual Studioまたはお好みの互換性のある統合開発環境(IDE)をインストールします。
  2. IronPDFライブラリ: 公式IronPDFウェブサイトまたはNuGetパッケージマネージャーからIronPDFライブラリを入手します。

     ASP.NET Coreで PDF ファイルを表示する方法、図 1: NuGetパッケージ マネージャー NuGet Package Manager

  3. .NET Coreアプリケーション: ASP.NET Coreセットアップ手順の基本を理解し、開発機にインストールしてください。

環境をセットアップしたら、ASP.NET CoreアプリケーションでIronPDFを使用してPDFファイルを表示する手順を見ていきましょう。

新しいプロジェクトの作成

  1. Visual Studioを開き、新しいASP.NET Core Webアプリプロジェクトを作成します。

     ASP.NET Coreで PDF ファイルを表示する方法、図 2: Web アプリケーション Webアプリケーション

  2. "ASP.NET Core Web App"テンプレートを選択します。

     ASP.NET Coreで PDF ファイルを表示する方法、図 3: .NET Framework .NETフレームワーク

  3. 希望するプロジェクトの設定を選択し、"作成"をクリックして新しいプロジェクトを生成します。

IronPDFライブラリの追加

プロジェクトでIronPDFを使用するには、IronPDFライブラリの参照を追加する必要があります。

  1. ソリューションエクスプローラーでプロジェクトを右クリックし、"ソリューション用のNuGetパッケージの管理"を選択します。

     ASP.NET Coreで PDF ファイルを表示する方法、図 4: NuGetパッケージ マネージャー NuGet Package Manager

  2. NuGetパッケージマネージャーで"IronPDF"を検索し、パッケージの最新バージョンをインストールします。

     ASP.NET Coreで PDF ファイルを表示する方法、図 5: NuGetパッケージ マネージャー - ソリューション エクスプローラー NuGetパッケージマネージャー - ソリューションエクスプローラー

ASP.NET Core Webページを使用してPDFを作成する

サーバーサイドからASP.NET Core WebページからPDFを作成するには、次の手順に従います。

 ASP.NET Coreで PDF ファイルを表示する方法、図 6: NuGetパッケージ マネージャー - ソリューション エクスプローラー ソリューションエクスプローラー

ステップ1 IronPDF名前空間を追加

PDFに変換したいASP.NET Coreウェブページのソースファイルパスを開きます。 コード ビハインド ファイル (Index.cshtml.cs) で、先頭に IronPdf 名前空間を追加します。

using IronPdf;
using IronPdf;
$vbLabelText   $csharpLabel

ステップ2 RazorページをPDFに変換

OnGet 関数内に次のコードを追加します。

public FileContentResult OnGet()
{
    // Create a new instance of ChromePdfRenderer
    ChromePdfRenderer renderer = new ChromePdfRenderer();

    // Render the current Razor page to a PDF document
    PdfDocument pdf = renderer.RenderRazorToPdf(this);

    // Add HTTP header to display PDF in the browser
    Response.Headers.Add("Content-Disposition", "inline");

    // Return the PDF file to the client
    return File(pdf.BinaryData, "application/pdf");
}
public FileContentResult OnGet()
{
    // Create a new instance of ChromePdfRenderer
    ChromePdfRenderer renderer = new ChromePdfRenderer();

    // Render the current Razor page to a PDF document
    PdfDocument pdf = renderer.RenderRazorToPdf(this);

    // Add HTTP header to display PDF in the browser
    Response.Headers.Add("Content-Disposition", "inline");

    // Return the PDF file to the client
    return File(pdf.BinaryData, "application/pdf");
}
$vbLabelText   $csharpLabel

たった 1 行のコードで、 Razorページは RenderRazorToPdf メソッドを使用して PDF ドキュメントに変換されます。

これを実現するには、IronPdf.Extensions.Razor NuGetパッケージをインストールする必要があります。

ステップ3 PDFの表示またはダウンロード

デフォルトでは、コードはブラウザでPDF文書を表示します。 代わりにPDFをダウンロードしたい場合は、次のようにコードを変更してください。

return File(pdf.BinaryData, "application/pdf", "razorPageToPDF.pdf");
return File(pdf.BinaryData, "application/pdf", "razorPageToPDF.pdf");
$vbLabelText   $csharpLabel

このコードはASP.NET WebページのPDFファイルをローカルの"ダウンロード"フォルダにダウンロードします。

 ASP.NET Coreで PDF ファイルを表示する方法、図 7: ASPX ページを PDF に変換 RazorページからPDF

ASP.NET CoreでPDFファイルを読み込んで表示する

次に、このセクションではIronPDFを使用してPDFファイルを生成し、ASP.NET Coreアプリケーションで表示するさまざまな方法を探ります。

URLからPDFを生成

IronPDFは、URL(HTTPサービス)からHTMLファイルを生成し、それをPDFに変換することでPDF文書の作成プロセスを簡素化します。 次のコードは、URLからPDFファイルを生成する方法を示しています。

// Render a PDF from a URL
using var pdf = new IronPdf.ChromePdfRenderer().RenderUrlAsPdf("https://www.google.co.in/");

// Read the File as Byte Array
byte[] bytes = pdf.BinaryData;

// Convert File to Base64 string and send to Client
string base64 = Convert.ToBase64String(bytes, 0, bytes.Length);
return Content(base64);
// Render a PDF from a URL
using var pdf = new IronPdf.ChromePdfRenderer().RenderUrlAsPdf("https://www.google.co.in/");

// Read the File as Byte Array
byte[] bytes = pdf.BinaryData;

// Convert File to Base64 string and send to Client
string base64 = Convert.ToBase64String(bytes, 0, bytes.Length);
return Content(base64);
$vbLabelText   $csharpLabel

上記のコードでは、IronPDF のChromePdfRenderer クラスを使用して、指定された URL から HTML コンテンツをレンダリングし、PDF ドキュメントに変換します。 次に、PDF ドキュメントはバイト配列に変換され、base64 文字列としてクライアントに送信されます。

HTML文字列からPDFを生成

IronPDFはHTML文字列をPDF文書に変換する効率的なアプローチを提供しています。 以下のコードスニペットは、文字列からPDFファイルを生成する方法を示しています。

// Render a PDF from an HTML string
using var pdf = new IronPdf.ChromePdfRenderer().RenderHtmlAsPdf("<h1>Hello world!!</h1>");
// Render a PDF from an HTML string
using var pdf = new IronPdf.ChromePdfRenderer().RenderHtmlAsPdf("<h1>Hello world!!</h1>");
$vbLabelText   $csharpLabel

上記の例では、 RenderHtmlAsPdf メソッドを使用して HTML 文字列をレンダリングし、PDF ドキュメントに変換します。 生成されたPDFは、アプリケーションの要件に応じてさらに処理または保存できます。

 ASP.NET Coreで PDF ファイルを表示する方法、図 8: Web アプリケーションの出力 Webアプリケーション出力

HTMLファイルからPDFを生成

IronPDFは、HTMLファイルやCSSファイルをPDF文書の例に変換することもサポートしています。 次のコードは、HTMLファイルからPDFファイルを生成する方法を示しています。

// Render a PDF from an HTML file
using var pdf = new IronPdf.ChromePdfRenderer().RenderHtmlFileAsPdf("demo.html");

// Read the file as Byte Array
byte[] bytes = pdf.BinaryData;

// Convert File to Base64 string and send to Client
string base64 = Convert.ToBase64String(bytes, 0, bytes.Length);
return Content(base64);
// Render a PDF from an HTML file
using var pdf = new IronPdf.ChromePdfRenderer().RenderHtmlFileAsPdf("demo.html");

// Read the file as Byte Array
byte[] bytes = pdf.BinaryData;

// Convert File to Base64 string and send to Client
string base64 = Convert.ToBase64String(bytes, 0, bytes.Length);
return Content(base64);
$vbLabelText   $csharpLabel

上記のコード スニペットでは、 RenderHtmlFileAsPdf メソッドを使用して、指定されたファイル名から HTML コンテンツをレンダリングし、PDF ドキュメントに変換します。 生成されたPDFはバイト配列に変換され、クライアントにbase64文字列として送信されます。

 ASP.NET Coreで PDF ファイルを表示する方法: 図 9 - 新しい Web ページの追加

ASP.NET Web APIからIronPDFを使用してASP.NET WebフォームをPDFファイルに変換

HTMLの代わりに1行のコードを使用することで、ASP.NET WebフォームをPDF形式に簡単に変換できます。 このコードをページのコード ビハインド ファイルの Page_Load メソッドに配置すると、ページに表示されます。

IronPdf 名前空間をインポートします

コード ビハインド ファイルに using 名前空間をインポートするには、IronPdf キーワードを使用します。

using IronPdf;
using System;
using System.Web.UI;
using IronPdf;
using System;
using System.Web.UI;
$vbLabelText   $csharpLabel

ASP.NET WebフォームをPDFに変換

PDF に変換するページのコード ビハインド ファイル (例: Default.aspx.cs) に、次のコードを追加します。

namespace WebApplication7
{
    public partial class _Default : Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            // Convert the ASPX page to a PDF displayed in the browser
            AspxToPdf.RenderThisPageAsPdf(AspxToPdf.FileBehavior.InBrowser);
        }
    }
}
namespace WebApplication7
{
    public partial class _Default : Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            // Convert the ASPX page to a PDF displayed in the browser
            AspxToPdf.RenderThisPageAsPdf(AspxToPdf.FileBehavior.InBrowser);
        }
    }
}
$vbLabelText   $csharpLabel

AspxToPdf クラスの RenderThisPageAsPdf メソッドは、Web API から Web フォームを PDF ドキュメントに変換します。

HTMLテンプレートを適用

イントラネットやウェブサイト開発者にとって、テンプレートを使用してPDFを生成することは、一般的な要件です。 IronPDFは、HTMLテンプレートを生成し、データでそれを埋めることでこのプロセスを簡素化します。

HTMLテンプレートとIronPDFを使用して複数のカスタマイズされたPDFを生成する方法の例を次に示します。

// Define an HTML template with placeholders
string HtmlTemplate = "<p>[[NAME]]</p>";
string[] Names = { "John", "James", "Jenny" };
foreach (var name in Names)
{
    // Replace placeholder in template with actual data
    string HtmlInstance = HtmlTemplate.Replace("[[NAME]]", name);

    // Render HTML to PDF
    using (var Pdf = Renderer.RenderHtmlAsPdf(HtmlInstance))
    {
        // Save the PDF with the name as filename
        Pdf.SaveAs(name + ".pdf");
    }
}
// Define an HTML template with placeholders
string HtmlTemplate = "<p>[[NAME]]</p>";
string[] Names = { "John", "James", "Jenny" };
foreach (var name in Names)
{
    // Replace placeholder in template with actual data
    string HtmlInstance = HtmlTemplate.Replace("[[NAME]]", name);

    // Render HTML to PDF
    using (var Pdf = Renderer.RenderHtmlAsPdf(HtmlInstance))
    {
        // Save the PDF with the name as filename
        Pdf.SaveAs(name + ".pdf");
    }
}
$vbLabelText   $csharpLabel

ASP MVCルーティング このページのPDFバージョンをダウンロード

ASP.NET MVCを使用している場合、簡単にPDFファイルにユーザーを導くことができます。ソースコードを書き換える例を次に示します。

using IronPdf;
using System;
using System.Web.Mvc;

namespace WebApplication8.Controllers
{
    public class HomeController : Controller
    {
        public IActionResult Index()
        {
            // Create a new instance of ChromePdfRenderer
            ChromePdfRenderer renderer = new ChromePdfRenderer();

            // Render the URL as a PDF
            using (var PDF = renderer.RenderUrlAsPdf(new Uri("https://en.wikipedia.org")))
            {
                // Return the PDF file with a specified filename
                return File(PDF.BinaryData, "application/pdf", "Wiki.Pdf");
            }
        }
        // Other action methods...
    }
}
using IronPdf;
using System;
using System.Web.Mvc;

namespace WebApplication8.Controllers
{
    public class HomeController : Controller
    {
        public IActionResult Index()
        {
            // Create a new instance of ChromePdfRenderer
            ChromePdfRenderer renderer = new ChromePdfRenderer();

            // Render the URL as a PDF
            using (var PDF = renderer.RenderUrlAsPdf(new Uri("https://en.wikipedia.org")))
            {
                // Return the PDF file with a specified filename
                return File(PDF.BinaryData, "application/pdf", "Wiki.Pdf");
            }
        }
        // Other action methods...
    }
}
$vbLabelText   $csharpLabel

コードがどのように書かれるべきかの例は以下のとおりです:

既存のPDF文書に表紙や裏表紙を追加するには、IronPDFのマージ機能を使用できます。 以下は例です:

using (var PDF = Renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf/"))
{
    // Merge the cover page with the main PDF
    using (var Merged = PdfDocument.Merge(new PdfDocument("CoverPage.pdf"), PDF))
    {
        // Save the combined PDF
        Merged.SaveAs("Combined.Pdf");
    }
}
using (var PDF = Renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf/"))
{
    // Merge the cover page with the main PDF
    using (var Merged = PdfDocument.Merge(new PdfDocument("CoverPage.pdf"), PDF))
    {
        // Save the combined PDF
        Merged.SaveAs("Combined.Pdf");
    }
}
$vbLabelText   $csharpLabel

文書にウォーターマークを追加する

C#コードを使用してPDF文書に透かしを追加することもできます。 以下は例です:

using IronPdf;

// Create a new instance of ChromePdfRenderer
ChromePdfRenderer renderer = new ChromePdfRenderer();

// Render the URL as a PDF
using (var pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf"))
{
    // Add watermark text to all pages
    pdf.WatermarkAllPages("<h2 style='color:red'>SAMPLE</h2>", PdfDocument.WaterMarkLocation.MiddleCenter, 50, -45);

    // Save the watermarked PDF
    pdf.SaveAs(@"C:\PathToWatermarked.pdf");
}
using IronPdf;

// Create a new instance of ChromePdfRenderer
ChromePdfRenderer renderer = new ChromePdfRenderer();

// Render the URL as a PDF
using (var pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf"))
{
    // Add watermark text to all pages
    pdf.WatermarkAllPages("<h2 style='color:red'>SAMPLE</h2>", PdfDocument.WaterMarkLocation.MiddleCenter, 50, -45);

    // Save the watermarked PDF
    pdf.SaveAs(@"C:\PathToWatermarked.pdf");
}
$vbLabelText   $csharpLabel

PDFをパスワードで保護する

IronPDFを使用して、PDF文書をパスワードで暗号化および保護することができます。 以下は例です:

using IronPdf;

// Create a new instance of ChromePdfRenderer
ChromePdfRenderer renderer = new ChromePdfRenderer();

// Render HTML to PDF
using (var pdfDocument = renderer.RenderHtmlAsPdf("<h1>Hello World<h1>"))
{
    // Set a password to protect the PDF
    pdfDocument.Password = "strong!@#pass&^%word";

    // Save the secured PDF
    pdfDocument.SaveAs("secured.pdf");
}
using IronPdf;

// Create a new instance of ChromePdfRenderer
ChromePdfRenderer renderer = new ChromePdfRenderer();

// Render HTML to PDF
using (var pdfDocument = renderer.RenderHtmlAsPdf("<h1>Hello World<h1>"))
{
    // Set a password to protect the PDF
    pdfDocument.Password = "strong!@#pass&^%word";

    // Save the secured PDF
    pdfDocument.SaveAs("secured.pdf");
}
$vbLabelText   $csharpLabel

上記の機能に加えて、IronPDFはPDFからのOCRによる画像とテキストの抽出チャートのPDFへのレンダリングバーコードの追加パスワードによるドキュメントセキュリティの向上、PDFの透かし技術、およびPDFフォームの処理とカスタマイズなどの他の機能も提供しています。 IronPDFを使用することで、PDFの作成プロセスを簡素化し、ドキュメントのプレゼンテーションを向上できます。

結論

IronPDFは、.NETプロジェクト内でのPDF操作を簡単に行うために設計された.NET開発者向けの優れたツールです。 IronPDFを使用することで、開発者はワークフローを強化し、作業プロセスを効率化できます。 この強力なツールは、PDFファイルの書式設定、ページの削除、ページの追加などのシームレスな機能を多数提供します。 開発者は、特定の要件に応じてPDF文書を効率的に管理およびカスタマイズできます。

IronPDFは機能面で優れているだけでなく、開発目的で無料で利用できるという追加の利点も提供します。 つまり、プロジェクトの開発フェーズ中に費用をかけずにその機能を活用できるということです。 IronPDFを利用することで、開発者は生産性を向上させ、PDF関連のタスクで顕著な結果を達成し、.NETプロジェクト内で高品質で効率的なソリューションを提供できます。

PDFドキュメントを操作するためのIronPDF、Excelドキュメントを操作するためのIronXL、OCRで操作するためのIronOCRなど、他にも多くの便利なライブラリがあります。 現在、5つのライブラリすべてを2つ分の価格で取得できるIron Suiteの完全パッケージを購入できます。より詳細はIron Softwareライセンス情報をご覧ください。

よくある質問

ASP.NET Core Web AppでPDFファイルを表示するにはどうすればよいですか?

IronPDFライブラリを使用して、ASP.NET Core Web AppでPDFファイルを表示できます。まずNuGetパッケージマネージャーを介してIronPDFパッケージをインストールし、RenderRazorToPdfRenderHtmlAsPdfなどのメソッドを使用して、RazorページやHTML文字列をPDFドキュメントに変換して表示します。

PDF表示用にASP.NET Coreプロジェクトを設定する手順は何ですか?

PDF表示用にASP.NET Coreプロジェクトを設定するには、Visual Studioをインストールし、新しいASP.NET Core Web Appプロジェクトを作成し、NuGet経由でIronPDFライブラリを追加し、ライブラリのメソッドを使用してアプリケーション内でPDFファイルをレンダリングして表示するように統合します。

C#でHTML文字列をPDFに変換するにはどうすればよいですか?

C#でHTML文字列をPDFに変換するには、IronPDFのRenderHtmlAsPdfメソッドを使用します。これにより、HTMLコンテンツをPDFドキュメントとしてレンダリングし、ASP.NET Coreアプリケーションで表示できます。

ASP.NET RazorページをPDFに変換できますか?

はい、IronPDFを使用してASP.NET RazorページをPDFに変換できます。コードビハインドファイルにIronPDF名前空間を追加し、RenderRazorToPdfメソッドを使用してRazorページをPDFドキュメントとしてレンダリングします。

PDFドキュメントにカバーページを追加するにはどうすればよいですか?

IronPDFを使用して、PDFドキュメントにカバーページを追加できます。追加のHTMLページまたはファイルを最初のページとしてレンダリングし、メインのPDFコンテンツとマージします。

C#を使用して複数のPDFドキュメントをマージすることは可能ですか?

はい、IronPDFは複数のPDFドキュメントをマージする機能を提供します。PdfDocument.Mergeメソッドを使用して、複数のPDFを1つのドキュメントに結合できます。

PDFのすべてのページにウォーターマークを適用するにはどうすればよいですか?

PDFのすべてのページにウォーターマークを適用するには、IronPDFのWatermarkAllPagesメソッドを使用します。これにより、テキストや画像をドキュメントの各ページにウォーターマークとしてオーバーレイできます。

IronPDFを.NET開発者が使用する利点は何ですか?

IronPDFは、.NET開発者にとって非常に役立ちます。PDFの操作において堅牢で柔軟なライブラリを提供し、変換、編集、PDFの表示をWebアプリケーション内で行うことができます。生産性を向上させ、ワークフローを効率化するための貴重なツールです。

C#でPDFドキュメントをパスワードで保護するにはどうすればよいですか?

C#でPDFドキュメントをパスワードで保護するには、IronPDFを使用してコンテンツをレンダリングし、保存する前にPdfDocumentオブジェクトにパスワードを設定します。これにより、許可されたユーザーのみがドキュメントを開くことができます。

IronPDF は .NET 10 をサポートしていますか? また、それを .NET 10 プロジェクトでどのように使用できますか?

はい。IronPDFは.NET 10と完全に互換性があります。ライブラリは.NET 10(および.NET 9、8、7など)をサポートしており、特別な設定なしでWeb、デスクトップ、コンソール、クラウド環境で使用できます。使用するには、.NET 10プロジェクトでNuGet経由でIronPDFを参照し、 ChromePdfRenderer().RenderHtmlAsPdf(...)などのメソッドを通常通り呼び出すだけです。

IronPDF のパフォーマンスを向上させる新しい .NET 10 機能はありますか?

はい。.NET 10では、ヒープ割り当ての削減、構造体のエスケープ解析、配列インターフェースメソッドの仮想化解除といったパフォーマンス強化が導入され、これらが相まって実行時効率が向上します。IronPDFは、特にHTMLからPDFへのレンダリングや、マルチスレッドまたは高同時実行のシナリオにおいて、これらの改善の恩恵を受けます。

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

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

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

Iron Support Team

We're online 24 hours, 5 days a week.
Chat
Email
Call Me