IRONPDFの使用

ASP.NETでC#とIronPDFを使用してPDFファイルを表示する方法

更新済み 11月 4, 2021
共有:

ほとんどの人は専用のデスクトップアプリケーションを使用してコンピュータでPDFを開きますが、ソフトウェアエンジニアはIronPDFを使用して、C#を使ってプログラム的にPDFコンテンツを作成、表示、開く、読み取る、および編集することもできます。

IronPDFは、ASP.NETおよびC#でPDFファイルを読み取る際に非常に便利なプラグインであることが判明しました。

ダウンロードできます このリンクからプロジェクトファイル.

C#を使用して、IronPDFでPDFドキュメントを迅速かつ簡単に作成することが可能です。

PDFドキュメントのデザインおよびレイアウトの多くは、既存のHTML資産を使用するか、ウェブデザインの従業員に作業を委任することで達成できます。 アプリケーションにPDF生成を統合するという時間のかかる作業を処理し、準備されたドキュメントをPDFに自動変換します。 .NETを使用すると、以下のことができます:

  • ウェブフォーム、ローカルHTMLページ、その他のウェブサイトをPDF形式に変換します。
  • ユーザーがドキュメントをダウンロードしたり、メールで他の人と共有したり、クラウドに保存したりできるようにします。
  • 顧客に請求書を発行し、見積もりを提供する。 レポートを準備する 契約やその他の書類を交渉する。
  • ASP.NET、ASP.NET Core、Web Forms、MVC、Web APIs、.NET Frameworkおよび.NET Coreの他のプログラミング言語と連携します。

IronPDFライブラリの設定

ライブラリをインストールする方法は2つあります。

NuGet パッケージ マネージャーを使用したインストール

IronPDFは、Visual StudioアドインまたはコマンドラインのNuGetパッケージマネージャーを介してインストールすることができます。コンソールに移動し、Visual Studioで次のコードを入力してください:

Install-Package IronPdf

ウェブサイトからDLLファイルを直接ダウンロードする

あるいは、ウェブサイトから直接DLLを取得することもできます。

次に続く cs クラスファイルで IronPDF を使用する際には、以下のコメントを必ず含めてください:

チェックアウト IronPDFの機能.

IronPDFは必須のプラグインです。 今すぐ手に入れて NuGetで試してみてください.

HTML文字列からPDFファイルを.NET C#で作成

C#でHTML文字列からPDFファイルを作成することは、C#で新しいPDFファイルを作成するための効率的で有益な方法です。

について RenderHtmlAsPdf 関数から ChromePdfRenderer は、任意のHTMLを簡単に変換する方法を提供します。 (HTML5) 組み込まれたGoogle Chromiumエンジンのバージョンを搭載したIronPDF DLLのおかげで、文字列をPDFドキュメントに変換できます。

//Render HTML to pdf
var renderer = new ChromePdfRenderer();
using var rendered_pdf = renderer.RenderHtmAsPdf("<h1>My First HTML to Pdf</h1>");

var Output_Path = "My_First_Html.pdf";
PDF.SaveAs(Output_Path);
System.Diagnostics.Process.Start(Output_Path);
//Render HTML to pdf
var renderer = new ChromePdfRenderer();
using var rendered_pdf = renderer.RenderHtmAsPdf("<h1>My First HTML to Pdf</h1>");

var Output_Path = "My_First_Html.pdf";
PDF.SaveAs(Output_Path);
System.Diagnostics.Process.Start(Output_Path);
'Render HTML to pdf
Dim renderer = New ChromePdfRenderer()
Dim rendered_pdf = renderer.RenderHtmAsPdf("<h1>My First HTML to Pdf</h1>")

Dim Output_Path = "My_First_Html.pdf"
PDF.SaveAs(Output_Path)
System.Diagnostics.Process.Start(Output_Path)
VB   C#

「RenderHtmlAsPdf」は、CSS、JavaScript、および画像を完全にサポートする強力なツールです。 これらの素材がハードディスクに保存されている場合、RenderHtmlAsPdf の第2引数を設定する必要があるかもしれません。

以下のコードはPDFファイルを生成します:

var Render_pdf = renderer.RenderHtmlAsPdf("<img src='image_1.png'/>", @"C:\Newproject");
var Render_pdf = renderer.RenderHtmlAsPdf("<img src='image_1.png'/>", @"C:\Newproject");
Dim Render_pdf = renderer.RenderHtmlAsPdf("<img src='image_1.png'/>", "C:\Newproject")
VB   C#

すべてのCSSスタイルシート、画像、およびJavaScriptファイルはBaseUrlPathに対して相対的に参照され、より整理されて論理的な構造を維持することができます。 もちろん、インターネット上で利用可能な画像、スタイルシート、アセット(Webフォント、Googleフォント、さらにjQueryなど)を使用することもできます。

PDFドキュメントを作成する。

既存のHTML URLの利用

既存のURLをC#で非常に効率的かつ簡単な方法でPDFにレンダリングできます。 これにより、チームがPDFデザインとバックエンドのPDFレンダリング作業をさまざまなセクションに分けることができるため、有益です。

以下のコードは、URLからendeavorcreative.comページをレンダリングする方法を示しています:

//Render url to pdf
var renderer = new ChromePdfRenderer();
using var Rendered_pdf = renderer.RenderUrlAsPdf("https://endeavorcreative.com/setting-up-wordpress-website-from-scratch/");

var Output_Path = "Url_pdf.pdf";
Rendered_pdf.SaveAs(Output_Path);
System.Diagnostics.Process.Start(Output_Path);
//Render url to pdf
var renderer = new ChromePdfRenderer();
using var Rendered_pdf = renderer.RenderUrlAsPdf("https://endeavorcreative.com/setting-up-wordpress-website-from-scratch/");

var Output_Path = "Url_pdf.pdf";
Rendered_pdf.SaveAs(Output_Path);
System.Diagnostics.Process.Start(Output_Path);
'Render url to pdf
Dim renderer = New ChromePdfRenderer()
Dim Rendered_pdf = renderer.RenderUrlAsPdf("https://endeavorcreative.com/setting-up-wordpress-website-from-scratch/")

Dim Output_Path = "Url_pdf.pdf"
Rendered_pdf.SaveAs(Output_Path)
System.Diagnostics.Process.Start(Output_Path)
VB   C#

その結果、すべてのハイパーリンク (HTMLリンク) 生成されたPDFには、HTMLフォームも保持されます。

既存のHTMLドキュメントからPDFドキュメントを作成

このセクションでは、任意のローカルHTMLファイルをレンダリングする方法を示します。CSS、画像、JavaScriptなどのすべての相対的なアセットに対して、ファイルがfile:/プロトコルを使用して開かれたように表示されます。

//Render existing html to pdf
var renderer = new ChromePdfRenderer();
using var Rendered_pdf = renderer.RenderHtmlFileAsPdf("Assets/test1.html");

var Output_Path = "test1_pdf.pdf";
Rendered_pdf.SaveAs(Output_Path);
System.Diagnostics.Process.Start(Output_Path);
//Render existing html to pdf
var renderer = new ChromePdfRenderer();
using var Rendered_pdf = renderer.RenderHtmlFileAsPdf("Assets/test1.html");

var Output_Path = "test1_pdf.pdf";
Rendered_pdf.SaveAs(Output_Path);
System.Diagnostics.Process.Start(Output_Path);
'Render existing html to pdf
Dim renderer = New ChromePdfRenderer()
Dim Rendered_pdf = renderer.RenderHtmlFileAsPdf("Assets/test1.html")

Dim Output_Path = "test1_pdf.pdf"
Rendered_pdf.SaveAs(Output_Path)
System.Diagnostics.Process.Start(Output_Path)
VB   C#

この戦略の利点は、開発者がHTMLコンテンツを作成中にブラウザでテストできることです。 IronPDFのレンダリングエンジンは、Chromeウェブブラウザ上に構築されています。 したがって、おすすめします XMLをPDFに変換する; XMLコンテンツをPDFに印刷するには、XSLTテンプレートを使用することができます。

ASP.NET Web Forms をPDFファイルに変換

1行のコードで、ASP.NETのオンラインフォームをHTMLではなくPDF形式に変換することができます。 ページのコードビハインドファイルの Page_Load メソッドにこのコード行を配置すると、ページに表示されます。

ASP.NET Web Formsアプリケーションは、新規に作成することも、以前のバージョンから開くこともできます。

NuGetパッケージがまだインストールされていない場合は、インストールしてください。

using キーワードを使用して IronPDF 名前空間をインポートする必要があります。

PDFに変換したいページのコードビハインドに移動します。 例えば、ASP.NET を使用しているファイル Default.aspx.cs

RenderThisPageAsPdfAspxToPdfクラスのメソッドです。

using IronPdf;
using System;
using System.Web.UI;

namespace WebApplication7
{
    public partial class _Default : Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {            
            AspxToPdf.RenderThisPageAsPdf(AspxToPdf.FileBehavior.InBrowser);
        }
    }
}
using IronPdf;
using System;
using System.Web.UI;

namespace WebApplication7
{
    public partial class _Default : Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {            
            AspxToPdf.RenderThisPageAsPdf(AspxToPdf.FileBehavior.InBrowser);
        }
    }
}
Imports IronPdf
Imports System
Imports System.Web.UI

Namespace WebApplication7
	Partial Public Class _Default
		Inherits Page

		Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
			AspxToPdf.RenderThisPageAsPdf(AspxToPdf.FileBehavior.InBrowser)
		End Sub
	End Class
End Namespace
VB   C#

これは必要です。 NuGet公式ページからIronPdf.Extensions.ASPX インストールする必要があります。 .NET Coreでは利用できません。ASPXはMVCモデルによって置き換えられています。

HTMLテンプレートを適用

イントラネットおよびウェブサイトの開発者にとって、テンプレート化や「一括生成」でPDFを作成する能力は標準的な必要条件です。

PDFドキュメントのテンプレートを作成する代わりに、IronPDFライブラリは、既存のよくテストされた技術を活用してHTMLのテンプレートを生成する方法を提供します。

以下のように、HTMLテンプレートにクエリ文字列またはデータベースからのデータが追加されると、動的に生成されたPDFファイルが作成されます。

例として、C#のStringクラスおよびそのプロパティを考えてみましょう。 フォーマットメソッドは、基本的な「メールマージ」操作に適しています。

String.Format("<h1>Hello {}!<h1/>","World");
String.Format("<h1>Hello {}!<h1/>","World");
String.Format("<h1>Hello {}!<h1/>","World")
VB   C#

HTMLファイルはかなり大きくなることがあるため、任意のプレースホルダーを使用することが一般的です。 [[名前]] その後、正確なデータに置き換えます。

以下の例では、それぞれ異なるユーザー向けにカスタマイズされた3つのPDFドキュメントが生成されます。

var HtmlTemplate = "<p>[[NAME]]</p>";
var Names = new [] { "John", "James", "Jenny" };
foreach (var name in Names) {
var HtmlInstance = HtmlTemplate.Replace("[[NAME]]", name);

var renderer = new ChromePdfRenderer();
using var pdf = renderer.RenderHtmlAsPdf(HtmlInstance);
pdf.SaveAs(name + ".pdf");
}
var HtmlTemplate = "<p>[[NAME]]</p>";
var Names = new [] { "John", "James", "Jenny" };
foreach (var name in Names) {
var HtmlInstance = HtmlTemplate.Replace("[[NAME]]", name);

var renderer = new ChromePdfRenderer();
using var pdf = renderer.RenderHtmlAsPdf(HtmlInstance);
pdf.SaveAs(name + ".pdf");
}
Dim HtmlTemplate = "<p>[[NAME]]</p>"
Dim Names = { "John", "James", "Jenny" }
For Each name In Names
Dim HtmlInstance = HtmlTemplate.Replace("[[NAME]]", name)

Dim renderer = New ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlAsPdf(HtmlInstance)
pdf.SaveAs(name & ".pdf")
Next name
VB   C#

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

ASP.NET MVCフレームワークを使用すると、ユーザーをPDFファイルに誘導できます。

新しいASP.NET MVCアプリケーションを構築するか、既存のアプリケーションに既存のMVCコントローラーを追加する際は、このオプションを選択してください。 ASP.NET Web アプリケーションを選択して、Visual Studio の新しいプロジェクトウィザードを開始します。 (.NETフレームワーク) ドロップダウンメニューからMVCを選択します。 または、既存のMVCプロジェクトを開くこともできます。 Controllersフォルダ内のHomeControllerファイルのIndexメソッドを置き換えるか、Controllersフォルダ内に新しいコントローラーを作成します。

以下は、コードの書き方の例です:

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

namespace WebApplication8.Controllers
{
    public class HomeController : Controller
    {
        public ActionResult Index()
        {
            using var PDF = HtmlToPdf.StaticRenderUrlAsPdf(new Uri("https://en.wikipedia.org"));
            return File(PDF.BinaryData, "application/pdf", "Wiki.Pdf");
        }

        public ActionResult About()
        {
            ViewBag.Message = "Your application description page.";

            return View();
        }

        public ActionResult Contact()
        {
            ViewBag.Message = "Your contact page.";

            return View();
        }
    }
}
using IronPdf;
using System;
using System.Web.Mvc;

namespace WebApplication8.Controllers
{
    public class HomeController : Controller
    {
        public ActionResult Index()
        {
            using var PDF = HtmlToPdf.StaticRenderUrlAsPdf(new Uri("https://en.wikipedia.org"));
            return File(PDF.BinaryData, "application/pdf", "Wiki.Pdf");
        }

        public ActionResult About()
        {
            ViewBag.Message = "Your application description page.";

            return View();
        }

        public ActionResult Contact()
        {
            ViewBag.Message = "Your contact page.";

            return View();
        }
    }
}
Imports IronPdf
Imports System
Imports System.Web.Mvc

Namespace WebApplication8.Controllers
	Public Class HomeController
		Inherits Controller

		Public Function Index() As ActionResult
			Dim PDF = HtmlToPdf.StaticRenderUrlAsPdf(New Uri("https://en.wikipedia.org"))
			Return File(PDF.BinaryData, "application/pdf", "Wiki.Pdf")
		End Function

		Public Function About() As ActionResult
			ViewBag.Message = "Your application description page."

			Return View()
		End Function

		Public Function Contact() As ActionResult
			ViewBag.Message = "Your contact page."

			Return View()
		End Function
	End Class
End Namespace
VB   C#

PDFドキュメントに表紙を追加

![ASP.NETでC#とIronPDFを使用してPDFファイルを表示する方法

図1:PDFドキュメントに表紙を追加する](/static-assets/pdf/blog/how-to-view-pdf-files-in-asp-net-using-c/how-to-view-pdf-files-in-asp-net-using-c-1.webp)

PDFドキュメントに表紙ページを追加する

IronPDFはPDFドキュメントの結合プロセスを簡素化します。 この技術の最も一般的な応用は、既にレンダリングされたPDFドキュメントに表紙または裏表紙を追加することです。

そのためには、カバーページを準備し、次に PdfDocument 機能を使用します。

2つのドキュメントを結合するには、 マージ 静的メソッド。

var renderer = new ChromePdfRenderer();
using var pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf/");
using var merged = PdfDocument.Merge(new PdfDocument("CoverPage.pdf"), pdf);
merged.SaveAs("Combined.Pdf");
var renderer = new ChromePdfRenderer();
using var pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf/");
using var merged = PdfDocument.Merge(new PdfDocument("CoverPage.pdf"), pdf);
merged.SaveAs("Combined.Pdf");
Dim renderer = New ChromePdfRenderer()
Dim pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf/")
Dim merged = PdfDocument.Merge(New PdfDocument("CoverPage.pdf"), pdf)
merged.SaveAs("Combined.Pdf")
VB   C#

ドキュメントにウォーターマークを追加する

最後に、C#コードを使用してPDFドキュメントにウォーターマークを追加することができます。 これは、ドキュメントの各ページに「機密」または「サンプル」であることを示す免責事項を追加するために使用できます。

// prepare a stamp
HtmlStamper stamper = new HtmlStamper("<h2 style='color:red'>SAMPLE</h2>")
{
    HorizontalOffset = new Length(-3, MeasurementUnit.Inch),
    VerticalAlignment = VerticalAlignment.Bottom
};

// Stamps a watermark onto a new or existing PDF
var renderer = new ChromePdfRenderer();
using var pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf");
pdf.ApplyStamp(stamper);
pdf.SaveAs(@"C:\PathToWatermarked.pdf");
// prepare a stamp
HtmlStamper stamper = new HtmlStamper("<h2 style='color:red'>SAMPLE</h2>")
{
    HorizontalOffset = new Length(-3, MeasurementUnit.Inch),
    VerticalAlignment = VerticalAlignment.Bottom
};

// Stamps a watermark onto a new or existing PDF
var renderer = new ChromePdfRenderer();
using var pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf");
pdf.ApplyStamp(stamper);
pdf.SaveAs(@"C:\PathToWatermarked.pdf");
' prepare a stamp
Dim stamper As New HtmlStamper("<h2 style='color:red'>SAMPLE</h2>") With {
	.HorizontalOffset = New Length(-3, MeasurementUnit.Inch),
	.VerticalAlignment = VerticalAlignment.Bottom
}

' Stamps a watermark onto a new or existing PDF
Dim renderer = New ChromePdfRenderer()
Dim pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf")
pdf.ApplyStamp(stamper)
pdf.SaveAs("C:\PathToWatermarked.pdf")
VB   C#

PDFファイルはパスワードで保護できます。

PDF ドキュメントのパスワードプロパティを設定すると、ドキュメントは暗号化され、ユーザーはドキュメントを閲覧するために正しいパスワードを入力する必要があります。 このサンプルは、.NET Core コンソール アプリケーションで使用できます。

using IronPdf;

namespace ConsoleApp
{
    class Program
    {
        static void Main(string [] args)
        {
            var renderer = new ChromePdfRenderer();
            using var pdfDocument = renderer.RenderHtmlAsPdf("<h1>Hello World<h1>");
            pdfDocument.Password = "strong!@#pass&^%word";
            pdfDocument.SaveAs("secured.pdf");
        }
    }
}
using IronPdf;

namespace ConsoleApp
{
    class Program
    {
        static void Main(string [] args)
        {
            var renderer = new ChromePdfRenderer();
            using var pdfDocument = renderer.RenderHtmlAsPdf("<h1>Hello World<h1>");
            pdfDocument.Password = "strong!@#pass&^%word";
            pdfDocument.SaveAs("secured.pdf");
        }
    }
}
Imports IronPdf

Namespace ConsoleApp
	Friend Class Program
		Shared Sub Main(ByVal args() As String)
			Dim renderer = New ChromePdfRenderer()
			Dim pdfDocument = renderer.RenderHtmlAsPdf("<h1>Hello World<h1>")
			pdfDocument.Password = "strong!@#pass&^%word"
			pdfDocument.SaveAs("secured.pdf")
		End Sub
	End Class
End Namespace
VB   C#

以下の利点を除いても、IronPDFを使用して次のことができます:

  • PDFから画像とテキストを抽出 OCRを使用して
  • HTMLコンテンツを編集する 変換したウェブの
  • 強化する 前景と背景 画像
  • 追加 デジタル署名 PDFへの

  • オートフィル PDFフォーム

    PDFの作成は非常に困難な作業です。 一部の人々は、最も優れた文書を作成するために使用すべき基本的な概念に一度も出会ったことがないかもしれません。 その結果、IronPDFはPDFの作成を簡素化し、PDFおよびHTMLから作成された文書の元のプレゼンテーションを向上させるため、非常に役立ちます。

    ドキュメントの情報および競合分析に基づくと、IronPDFはPDFを作成するための最も効果的なツールであり、オフィスや学校で働く人々を含め、誰でも簡単に効率よくタスクを完了することができます。

    C#とIronPDFを使用してASP.NETでPDFファイルを表示する方法、図2:C#とIronPDFを使用してASP.NETでPDFファイルを表示する方法

    C#およびIronPDFを使用してASP.NETでPDFファイルを表示する方法

    IronPDFは必須の.NETライブラリです。 今すぐ手に入れて NuGetで試してみてください.

< 以前
HTMLファイルからC#でPDFを作成
次へ >
C#でIRON PDFを使用してPDFファイルを生成する5つのステップ

準備はできましたか? バージョン: 2024.9 新発売

無料のNuGetダウンロード 総ダウンロード数: 10,659,073 View Licenses >