ASP PDF查看器(開發者教程)
PDF文件廣泛用於文件共享和資料顯示目的。 在網頁應用中,通常需要直接在瀏覽器中向使用者顯示PDF文件。 ASP.NET Core應用程式提供了多種選項來實現此功能,其中一個受歡迎的工作PDF文件的庫是IronPDF。
IronPDF 是一個強大的.NET程式庫,允許開發者輕鬆地建立、編輯和操作PDF。 本文將探索如何使用IronPDF在ASP.NET Core PDF查看器應用程式中顯示PDF文件。 它將涵蓋設置必要組件的步驟,並提供範例邏輯以演示ASP.NET Core PDF查看器的整合。
設置環境
要開始,請確保您具備以下先決條件:
- Visual Studio:安裝最新版本的Visual Studio或任何其他您選擇的相容整合開發環境(IDE)。
-
IronPDF程式庫:從IronPDF官方網站或通過NuGet Package Manager獲取IronPDF程式庫。
NuGet Package Manager - .NET Core應用程式:確保您對ASP.NET Core設置說明有基本了解,並已安裝在您的開發機上。
設置好環境後,讓我們深入了解如何在ASP.NET Core應用程式中使用IronPDF顯示PDF文件的步驟。
建立新項目
-
打開Visual Studio並建立一個新的ASP.NET Core Web App項目。
Web Application -
選擇"ASP.NET Core Web App"模板。
.NET Framework - 選擇所需的項目設置,點擊"Create"以生成新項目。
新增IronPDF程式庫
要在項目中使用IronPDF,您需要新增IronPDF程式庫引用。
-
在方案資源管理器中右鍵單擊項目,選擇"Manage NuGet Packages for Solution..."
NuGet Package Manager -
在NuGet Package Manager中搜索"IronPDF"並安裝最新版本的包。
NuGet Package Manager - Solution Explorer
使用ASP.NET Core網頁建立PDF
要從ASP.NET Core網頁從伺服器端建立PDF,請按照以下步驟操作:
Solution Explorer
步驟1 新增IronPDF命名空間
打開您要轉換為PDF的ASP.NET Core網頁的源文件路徑。 在後臺程式碼文件(IronPdf命名空間:
using IronPdf;
using IronPdf;
Imports IronPdf
步驟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");
}
Public Function OnGet() As FileContentResult
' Create a new instance of ChromePdfRenderer
Dim renderer As New ChromePdfRenderer()
' Render the current Razor page to a PDF document
Dim pdf As PdfDocument = renderer.RenderRazorToPdf(Me)
' 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")
End Function
只需一行程式碼,Razor頁面將使用RenderRazorToPdf方法轉換為PDF文件。
要實現這一點,需要安裝IronPdf.Extensions.Razor NuGet Package。
步驟3 顯示或下載PDF
預設情況下,程式碼將在瀏覽器中顯示PDF文件。 如果您想下載PDF,請按以下方式修改程式碼:
return File(pdf.BinaryData, "application/pdf", "razorPageToPDF.pdf");
return File(pdf.BinaryData, "application/pdf", "razorPageToPDF.pdf");
Return File(pdf.BinaryData, "application/pdf", "razorPageToPDF.pdf")
此程式碼會將ASP.NET網頁的PDF文件下載到您的本地"下載"文件夾。
Razor Page to 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);
' Render a PDF from a URL
Dim pdf = (New IronPdf.ChromePdfRenderer()).RenderUrlAsPdf("https://www.google.co.in/")
' Read the File as Byte Array
Dim bytes() As Byte = pdf.BinaryData
' Convert File to Base64 string and send to Client
Dim base64 As String = Convert.ToBase64String(bytes, 0, bytes.Length)
Return Content(base64)
在上面的程式碼中,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>");
' Render a PDF from an HTML string
Dim pdf = (New IronPdf.ChromePdfRenderer()).RenderHtmlAsPdf("<h1>Hello world!!</h1>")
在上面的範例中,RenderHtmlAsPdf方法被用來渲染HTML字串並將其轉換為PDF文件。 生成的PDF可以根據應用程式的需要進一步處理或保存。
Web Application Output
從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);
' Render a PDF from an HTML file
Dim pdf = (New IronPdf.ChromePdfRenderer()).RenderHtmlFileAsPdf("demo.html")
' Read the file as Byte Array
Dim bytes() As Byte = pdf.BinaryData
' Convert File to Base64 string and send to Client
Dim base64 As String = Convert.ToBase64String(bytes, 0, bytes.Length)
Return Content(base64)
在上面的程式碼片段中,RenderHtmlFileAsPdf方法被用來渲染指定文件名的HTML內容並將其轉換為PDF文件。 生成的PDF被轉換為位元組陣列並作為base64字串發送到客戶端。

使用IronPDF從ASP.NET Web API將ASP.NET Web表單轉換為PDF文件
您可以輕鬆地將ASP.NET網頁表單轉換為PDF格式,而不需要HTML程式碼,只需一行程式碼。 將此程式碼放在頁面後台程式碼文件的Page_Load方法中以將其顯示在頁面上。
匯入IronPdf命名空間
使用IronPdf命名空間。
using IronPdf;
using System;
using System.Web.UI;
using IronPdf;
using System;
using System.Web.UI;
Imports IronPdf
Imports System
Imports System.Web.UI
將ASP.NET網頁表單轉換為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);
}
}
}
Namespace WebApplication7
Partial Public Class _Default
Inherits Page
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
' Convert the ASPX page to a PDF displayed in the browser
AspxToPdf.RenderThisPageAsPdf(AspxToPdf.FileBehavior.InBrowser)
End Sub
End Class
End Namespace
RenderThisPageAsPdf方法將從Web API中將該網頁表單轉換為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");
}
}
' Define an HTML template with placeholders
Dim HtmlTemplate As String = "<p>[[NAME]]</p>"
Dim Names() As String = { "John", "James", "Jenny" }
For Each name In Names
' Replace placeholder in template with actual data
Dim HtmlInstance As String = HtmlTemplate.Replace("[[NAME]]", name)
' Render HTML to PDF
Using Pdf = Renderer.RenderHtmlAsPdf(HtmlInstance)
' Save the PDF with the name as filename
Pdf.SaveAs(name & ".pdf")
End Using
Next name
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...
}
}
Imports IronPdf
Imports System
Imports System.Web.Mvc
Namespace WebApplication8.Controllers
Public Class HomeController
Inherits Controller
Public Function Index() As IActionResult
' Create a new instance of ChromePdfRenderer
Dim renderer As New ChromePdfRenderer()
' Render the URL as a PDF
Using 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")
End Using
End Function
' Other action methods...
End Class
End Namespace
為PDF文件新增封面頁
要為現有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");
}
}
Using PDF = Renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf/")
' Merge the cover page with the main PDF
Using Merged = PdfDocument.Merge(New PdfDocument("CoverPage.pdf"), PDF)
' Save the combined PDF
Merged.SaveAs("Combined.Pdf")
End Using
End Using
為您的文件新增水印
您還可以使用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");
}
Imports IronPdf
' Create a new instance of ChromePdfRenderer
Private renderer As New ChromePdfRenderer()
' Render the URL as a PDF
Using 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")
End Using
使用密碼保護您的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");
}
Imports IronPdf
' Create a new instance of ChromePdfRenderer
Private renderer As New ChromePdfRenderer()
' Render HTML to PDF
Using 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")
End Using
除了上述功能,IronPDF還提供其他功能,例如從PDF提取圖像和文字的OCR,將圖表渲染為PDF的範例,向PDF新增條形碼的範例,使用密碼強化文件安全性的範例,和PDF水印技術,甚至處理和自定義PDF表單等。 通過使用IronPDF,您可以簡化建立PDF的過程並改善您的文件的整體展示。
結論
IronPDF是一個為.NET開發者專門設計的出色工具,提供了一系列廣泛的功能以輕鬆地處理.NET項目中的PDF操作。 使用IronPDF,開發者可以提高工作流程並精簡工作過程。 這個強大的工具提供了大量功能,使PDF文件的格式化、頁面刪除、頁面增加等工作可以無縫進行。 它使開發者能夠高效地管理和定制PDF文件,根據他們的特定需求進行操作。
IronPDF不僅在功能上表現出色,還提供了開發階段免費使用的額外好處。 這意味著開發者可以在其項目的開發階段利用其能力而不會產生任何費用。 通過利用IronPDF,開發者可以提高生產力,在其與PDF有關的任務中取得卓越的成果,最終在其.NET項目中提供高質量且高效的解決方案。
還有許多其他有用的程式庫,如IronPDF用於處理PDF文件、IronXL用於處理Excel文件、IronOCR用於處理OCR。 目前,您可以通過購買完整的Iron Suite以僅兩個程式庫的價格獲取所有五個程式庫。請存取我們的Iron Software Licensing Information以獲取更多詳細資訊。
常見問題
如何在 ASP.NET Core Web 應用程式中顯示 PDF 文件?
您可以使用 IronPDF 程式庫在 ASP.NET Core Web 應用程式中顯示 PDF 文件。首先,通過 NuGet 套件管理器安裝 IronPDF 套件,然後使用像 RenderRazorToPdf 或 RenderHtmlAsPdf 這樣的方法將 Razor 頁面或 HTML 字串轉換為 PDF 文件進行顯示。
設置 ASP.NET Core 專案以顯示 PDF 的步驟有哪些?
要設置一個 ASP.NET Core 專案以顯示 PDF,安裝 Visual Studio,建立一個新的 ASP.NET Core Web 應用程式專案,通過 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 通過渲染額外的 HTML 頁面或文件作為 PDF 文件的首頁來新增封面,然後將其與主要的 PDF 內容合併。
用 C# 可以合併多個 PDF 文件嗎?
是的,IronPDF 提供了合併多個 PDF 文件的功能。您可以使用 PdfDocument.Merge 方法將多個 PDF 合併為一個。
如何在 PDF 的所有頁面上應用水印?
要在 PDF 的所有頁面上應用水印,使用 IronPDF 的 WatermarkAllPages 方法。這允許您將文字或圖像覆蓋為水印,應用於文件的每一頁。
using IronPDF 對 .NET 開發者的好處有哪些?
IronPDF 對 .NET 開發者非常有益,因為它提供了一個強大而靈活的 PDF 操作程式庫,包括轉換、編輯和在 Web 應用程式中顯示 PDF。它提高了生產力並簡化了工作流程,使其成為開發者工具包中的一個寶貴工具。
如何使用 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(...)。
有沒有新的 .NET 10 功能可以提高 IronPDF 的性能?
是的 — .NET 10 引入了性能增強功能,如減少堆記憶體分配、結構體逃逸分析和陣列介面方法去虛擬化,這些改進共同提高了運行時效率。IronPDF 尤其在 HTML-to-PDF 渲染及多執行緒或高並發場景中受益於這些改進。




