
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;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 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")此程式碼會將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
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
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
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;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
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 NamespaceRenderThisPageAsPdf方法將從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
Dim HtmlTemplate As String = "<p>[[NAME]]</p>"
Dim Names() As String = {"John", "James", "Jenny"}
For Each name As String 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
NextASP 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...
}
}Imports IronPdf
Imports System
Imports System.Web.Mvc
Namespace WebApplication8.Controllers
Public Class HomeController
Inherits Controller
Public Function Index() As ActionResult
' 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 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");
}Imports IronPdf
' Create a new instance of ChromePdfRenderer
Dim 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");
}Imports IronPdf
' Create a new instance of ChromePdfRenderer
Dim 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以獲取更多詳細資訊。

Curtis Chau擁有Carleton大學的電腦科學學士學位,專精於前端開發,擁有Node.js、TypeScript、JavaScript和React的專業知識。Curtis熱衷於建立直觀且美觀的使用者介面,喜愛使用現代框架並建立結構良好、視覺吸引力的手冊。
相關文章


