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

ASP.NET MVC PDFビューアを作成する方法

ASP.NET MVCアプリケーションのための堅牢なPDFビューアを作成するには、複雑なJavaScriptライブラリやサードパーティのビューアコントロールは必要ありません。 IronPDFを使用すると、PDF ファイルの表示からビューからの動的な PDF ドキュメントの直接生成まで、あらゆる処理を実行する強力な MVC PDF ビューアー コントロールを作成できます。

この記事では、すべてのブラウザでシームレスに動作する完全なASP.NET MVC PDFビューアソリューションを実装する方法を紹介します。 さらに、テキスト選択、フォーム入力、モダンなウェブアプリケーション向けのレスポンシブ表示などの機能をどのように実装できるかを紹介します。 最初のファイルをアップロードして表示する前に、当社の包括的なドキュメントをメモしておいてください。

IronPDF をダウンロードして、わずか数行のコードで独自の .NET MVC PDF ビューアー コントロールを簡単に構築できることをご確認ください。

ASP.NET MVC PDFビューアを作成するにはどうすればよいですか?

ASP ベースの PDF ビューアのセットアップは、NuGet パッケージ マネージャーを使用して IronPDF をインストールすることから始まります。 この.NET PDFビューアコントロールは、ブラウザの互換性の問題を解消するサーバーサイドの処理機能を提供します。 詳細なインストール ガイドについては、 IronPDF のインストール ドキュメントを参照してください。

Install-Package IronPdf

ASP.NET MVCコントローラーに、必須の名前空間を追加します:

using IronPdf;
using System.Web.Mvc;
using IronPdf;
using System.Web.Mvc;
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

これらのインポートは、WebアプリケーションがPDFのレンダリングと表示を処理できるようにします。 ChromePdfRendererクラスは、MVC PDF ビューアー コントロールのコア コンポーネントとして機能し、ユーザーのブラウザーで直接 PDF ファイルを作成、操作、表示するためのメソッドを提供します。 クライアントサイドのソリューションとは異なり、IronPDFはすべてをサーバーで処理し、すべてのデバイスとブラウザで一貫したレンダリングを保証しながら、PDFドキュメントの制御を維持します。 このアプローチの重要な利点は、そのセキュリティです。

.NET MVC WebアプリケーションにPDFファイルを表示する方法?

既存のPDFファイルを表示するPDFビューアコントロールを作成するには、FileResultとしてドキュメントを返すコントローラーアクションを実装する必要があります。 このアプローチにより、ユーザーはファイルを手動でアップロードしたり選択したりする必要なく、ブラウザでPDFページを直接閲覧できます。 より高度なシナリオについては、 IronPDF のレンダリング オプションを参照してください。

public FileResult DisplayPdf(string fileName)
{
    // Load existing PDF document
    var pdfPath = Server.MapPath($"~/Content/PDFs/{fileName}");
    PdfDocument PDF = PdfDocument.FromFile(pdfPath);
    // Set response headers to display in browser
    Response.Headers.Add("Content-Disposition", "inline; filename=" + fileName);
    // Return PDF to the browser
    return File(PDF.BinaryData, "application/pdf");
}
public FileResult DisplayPdf(string fileName)
{
    // Load existing PDF document
    var pdfPath = Server.MapPath($"~/Content/PDFs/{fileName}");
    PdfDocument PDF = PdfDocument.FromFile(pdfPath);
    // Set response headers to display in browser
    Response.Headers.Add("Content-Disposition", "inline; filename=" + fileName);
    // Return PDF to the browser
    return File(PDF.BinaryData, "application/pdf");
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

このコードは、サーバーのファイルシステムからPDFドキュメントを読み込み、ブラウザに送信します。 Content-Disposition: inlineヘッダーは、PDFファイルをダウンロードトリガーせずにビューポート内に表示するようブラウザに指示します。 PdfDocument.FromFileメソッドは既存のファイルを読み取り、 PDF.BinaryDataストリーミングに必要なバイト配列を提供します。

この簡素な実装は、さまざまなファイルサイズを効率的に処理する機能的なMVC PDFビューアを作成します。 レスポンシブなビューイングのために、ブラウザはビューポートの寸法に基づいて表示を自動的に調整し、PDFビューアがモバイルデバイスでも動作するようにします。 Stack Overflow の議論によると、このサーバー側のアプローチは、プラグインを埋め込むよりも優れた制御を提供します。 また、スクリーンリーダーでもうまく動作します。

出力PDF

IronPDFでASP.NET MVC PDFビューアを作成する: 画像1 - ブラウザに表示されたPDF

ビューをPDFドキュメントに変換する方法?

ASP.NET MVC PDFビューアは、Razorビューから動的にPDFドキュメントを生成し、データ駆動型のドキュメント作成を可能にします。 この強力な機能により、任意のビューをプロフェッショナルにフォーマットされたPDFに変換できます。 CSHTML から PDF への変換について詳しく学びます。

public FileResult GeneratePdfFromView()
{
    // Sample data for the view
    var model = new ReportModel
    {
        Title = "Monthly Report",
        Data = ReportModel.GetReportData()
    };
    // Initialize renderer
    var renderer = new ChromePdfRenderer();
    // Configure rendering options
    renderer.RenderingOptions.MarginTop = 25;
    renderer.RenderingOptions.MarginBottom = 25;
    renderer.RenderingOptions.EnableJavaScript = true;
    // Render MVC view to PDF
    var PDF = renderer.RenderView(this.HttpContext,
                                  "~/Views/Reports/Monthly.cshtml",
                                  model);
    // Display in browser
    Response.Headers.Add("Content-Disposition", "inline");
    return File(PDF.BinaryData, "application/pdf");
}
public FileResult GeneratePdfFromView()
{
    // Sample data for the view
    var model = new ReportModel
    {
        Title = "Monthly Report",
        Data = ReportModel.GetReportData()
    };
    // Initialize renderer
    var renderer = new ChromePdfRenderer();
    // Configure rendering options
    renderer.RenderingOptions.MarginTop = 25;
    renderer.RenderingOptions.MarginBottom = 25;
    renderer.RenderingOptions.EnableJavaScript = true;
    // Render MVC view to PDF
    var PDF = renderer.RenderView(this.HttpContext,
                                  "~/Views/Reports/Monthly.cshtml",
                                  model);
    // Display in browser
    Response.Headers.Add("Content-Disposition", "inline");
    return File(PDF.BinaryData, "application/pdf");
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

RenderView メソッドは、すべてのスタイルとレイアウトを維持しながら、CSHTML ビューを PDF ドキュメントに変換します。 RenderingOptions を使用すると、余白を制御したり、JavaScript の実行を有効にしたり、その他の表示プロパティを構成したりできます。 このサーバーサイドのレンダリングは、ユーザーのブラウザやデバイスに関係なく一貫した出力を保証します。

生成されたPDFページは、レスポンシブデザイン要素を保持し、最適な表示のためにコンテンツを自動的に適応させます。 複雑なレイアウトの場合は、ヘッダーとフッターを追加してプロフェッショナルなドキュメントを作成することもできます。 これは、ほとんどのクライアントサイドの代替案と比べて非常に軽量のソリューションです。

レンダリングされたビュー出力

! IronPDF で ASP.NET MVC PDF ビューアを作成する: 画像 2 - PDF にレンダリングされ、PDF ビューア ブラウザ アプリに表示されるビュー

PDFビューアに追加できる機能は何ですか?

モダンなPDFビューアコントロールの実装には、基本的な表示を超えたインタラクティブな機能が必要です。 IronPDFは、PDFファイルをレンダリングする際に自動的にテキスト選択およびテキスト検索機能を有効にします。 ユーザーは表示されたドキュメントから直接コンテンツをハイライトしてコピーできます。 これらの機能はユーザーエクスペリエンスを向上させ、ASP.NET MVC PDFビューアをより機能的にします。

public FileResult ViewPdfWithFeatures(int documentId = 1)
{
    // Load the PDF document object
    var PDF = LoadPdfDocument(documentId);
    if (PDF == null)
    {
        // Handle file not found (returns nothing, which will result in a 404 or empty response)
        return null;
    }
    PDF.SecuritySettings.AllowUserFormData = true;
    PDF.Bookmarks.AddBookMarkAtStart("Table of Contents", 1);
    PDF.Bookmarks.AddBookMarkAtStart("Chapter 1", 5);
    // Configure viewer toolbar
    Response.Headers.Add("Content-Disposition",
                        "inline; filename=document.pdf#toolbar=1");
    // return File (pdf.BinaryData, "application/pdf");
    return File(PDF.BinaryData, "application/pdf");
}
public FileResult ViewPdfWithFeatures(int documentId = 1)
{
    // Load the PDF document object
    var PDF = LoadPdfDocument(documentId);
    if (PDF == null)
    {
        // Handle file not found (returns nothing, which will result in a 404 or empty response)
        return null;
    }
    PDF.SecuritySettings.AllowUserFormData = true;
    PDF.Bookmarks.AddBookMarkAtStart("Table of Contents", 1);
    PDF.Bookmarks.AddBookMarkAtStart("Chapter 1", 5);
    // Configure viewer toolbar
    Response.Headers.Add("Content-Disposition",
                        "inline; filename=document.pdf#toolbar=1");
    // return File (pdf.BinaryData, "application/pdf");
    return File(PDF.BinaryData, "application/pdf");
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

この実装によりフォーム入力機能が可能になり、ユーザーはブラウザで直接PDFフォームデータを送信できます。 ブックマークの追加は、長いドキュメントを簡単にナビゲートするためのナビゲーション構造を作成します。 Content-Dispositionヘッダーの組み込みツールバーのパラメータにより、ユーザーはズーム、印刷、およびダウンロード機能にアクセスできます。

これらの機能によって基本的な表示が包括的なASP.NET MVC PDFビューアに変わり、完全なドキュメントのインタラクションをサポートします。 高度なシナリオでは、 IronPDF の注釈機能を利用して、PDF ページにコメントや注釈を追加します。 テキストの出現をすばやく検索するには、Ctrl + F などのキーボード ショートカットを使用します。

出力

! IronPDF で ASP.NET MVC PDF ビューアを作成する: 画像 3 - ブックマークのアウトラインが追加された読み込まれた PDF

PDFビューアコントロールを安全にする方法?

WebアプリケーションにPDFビューアを実装する際には、セキュリティが重要です。 IronPDFは、機密性の高いPDFドキュメントに対して複数の保護層を提供します。 Microsoft のセキュリティのベスト プラクティスによれば、サーバー側の処理はクライアント側のライブラリよりも優れた制御を提供します。

public FileResult SecurePdfView(string documentId)
{
    var PDF = GenerateConfidentialPdf();
    // Apply security settings
    PDF.SecuritySettings.UserPassword = "MySecretPassword";
    PDF.SecuritySettings.OwnerPassword = "OwnerSecretPassword";
    PDF.SecuritySettings.AllowUserPrinting = PdfPrintSecurity.NoPrint;
    PDF.SecuritySettings.AllowUserCopyPasteContent = false;
    PDF.SecuritySettings.AllowUserEdits = IronPdf.Security.PdfEditSecurity.NoEdit;
    // Prevent unauthorized downloads
    Response.Headers.Add("X-Frame-Options", "SAMEORIGIN");
    Response.Headers.Add("Content-Security-Policy",
                        "frame-ancestors 'self'");
    return File(PDF.BinaryData, "application/pdf");
}
public FileResult SecurePdfView(string documentId)
{
    var PDF = GenerateConfidentialPdf();
    // Apply security settings
    PDF.SecuritySettings.UserPassword = "MySecretPassword";
    PDF.SecuritySettings.OwnerPassword = "OwnerSecretPassword";
    PDF.SecuritySettings.AllowUserPrinting = PdfPrintSecurity.NoPrint;
    PDF.SecuritySettings.AllowUserCopyPasteContent = false;
    PDF.SecuritySettings.AllowUserEdits = IronPdf.Security.PdfEditSecurity.NoEdit;
    // Prevent unauthorized downloads
    Response.Headers.Add("X-Frame-Options", "SAMEORIGIN");
    Response.Headers.Add("Content-Security-Policy",
                        "frame-ancestors 'self'");
    return File(PDF.BinaryData, "application/pdf");
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

これらのセキュリティ対策は、PDFファイルの不正アクセスや配布を防ぎます。 パスワード保護は閲覧前に認証を要求し、許可設定は機密コンテンツのコピーや印刷を防ぎます。 セキュリティヘッダーは、PDFビューアコントロールを不正な外部サイトに埋め込むことを防ぎます。 これは特に機密ドキュメントを保護する際に役立ちます。

追加のセキュリティ オプションについては、 IronPDF のパスワードと権限に関するドキュメントを参照してください。

結論

IronPDF は、包括的な PDF ビューア機能を使用して、 ASP.NET MVC アプリケーションを強力なドキュメント管理システムに変換します。 基本的なファイル表示からフォーム入力やテキスト検索のような高度な機能に至るまで、モダンなWebアプリケーションの要件を満たすプロフェッショナルなMVC PDFビューアコントロールを構築できます。 サーバーサイドの処理はすべてのプラットフォームで一貫したレンダリングを保証し、PDFドキュメントのセキュリティと制御を保持します。 PDFファイルを表示したり、動的なレポートを作成したり、インタラクティブなUI要素を追加したりする必要があるかどうかにかかわらず、IronPDFは開発プロセスを支援するツールとドキュメントを提供します。

自分のASP.NET MVC PDFビューアを実装する準備はできていますか? 無料トライアルを開始し包括的なドキュメントで IronPDF の完全な機能セットを確認してください。 実践的な例については、コード サンプルチュートリアルを参照してください。 エンタープライズ機能が必要ですか? ライセンス オプションを確認して、チームに適したプランを選択してください。

よくある質問

複雑なライブラリを使用せずに ASP.NET MVC で PDF ビューアーを作成するにはどうすればよいですか?

IronPDF を使用すると、ASP.NET MVC アプリケーション用の堅牢な PDF ビューアを構築できます。複雑な JavaScript ライブラリやサードパーティ製のビューアコントロールを必要とせず、ビューから直接 PDF ファイルを表示したり、動的な PDF ドキュメントを生成したりできます。

IronPDF は ASP.NET MVC アプリケーションにどのような機能を提供しますか?

IronPDF は、PDF ドキュメントの表示、ビューの PDF への変換、インタラクティブな要素の追加などの機能を提供し、ASP.NET MVC アプリケーションの機能を強化します。

IronPDF は ASP.NET MVC でビューを PDF に変換できますか?

はい、IronPDF はビューを PDF ドキュメントに変換できるため、ASP.NET MVC ビューから直接 PDF ファイルを簡単に生成できます。

IronPDF を使用して ASP.NET MVC の PDF にインタラクティブ機能を追加することは可能ですか?

はい、IronPDF を使用すると、PDF ドキュメントにインタラクティブな機能を追加して、ASP.NET MVC アプリケーション内でのユーザー エンゲージメントを強化できます。

IronPDF を使用して ASP.NET MVC で PDF を表示するには、追加のプラグインが必要ですか?

いいえ、IronPDF では、ASP.NET MVC アプリケーションで PDF を表示するために追加のプラグインやサードパーティのビューアー コントロールは必要ありません。

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

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

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