在實際環境中測試
在生產環境中測試無浮水印。
在任何需要的地方都能運作。
大部分人會用專門的桌面應用程式在電腦上打開PDF,但軟體工程師也可以使用IronPDF通過C#以編程方式創建、查看、打開、閱讀和編輯PDF內容。
IronPDF在ASP.NET和C#中閱讀PDF文件時證明是一個非常有用的插件。
你可以下載 從此連結下載專案檔案使用 IronPDF,您可以使用 C# 快速輕鬆地建立 PDF 文件。
PDF 文件的設計和佈局大部分可以通過使用現有的 HTML 資產來完成,或者將任務委派給網頁設計員工;它處理了將 PDF 生成集成到您的應用程式中這一耗時的任務,並且自動將準備好的文件轉換為 PDF。使用 .NET,您可以:
有兩種方法可以安裝該庫;
IronPDF 可以通過 Visual Studio 插件或從命令列使用 NuGet 套件管理器進行安裝。導航到控制台,在 Visual Studio 中鍵入以下代碼:
Install-Package IronPdf
或者,你可以直接從網站獲取DLL。
記得在任何使用IronPDF的cs
類文件的頂部包含以下註釋:
查看 IronPDF 功能.
IronPDF 是一個必備的插件。立即獲取您的版本並 使用NuGet試試看.
從 HTML 字串建立 PDF 文件在 C# 中是一種高效且有成效的方法,用於在 C# 中建立新的 PDF 文件。
RenderHtmlAsPdf
函數 從 ㄧ ChromePdfRenderer
提供簡單的方法將任意 HTML 轉換 (HTML5) 由於IronPDF DLL中嵌入的Google Chromium引擎,將字串轉換為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)
RenderHtmlAsPdf
是一個強大的工具,完全支援 CSS、JavaScript 和圖像。如果這些素材存儲在硬碟上,可能需要設置 RenderHtmlAsPdf
的第二個參數。
以下程式碼將生成一個 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")
所有引用的 CSS 樣式表、圖片和 JavaScript 文件都將相對於 BaseUrlPath
,這樣可以保持一個更有組織和邏輯的結構。當然,您也可以利用互聯網上可用的圖片、樣式表和資產,例如 Web 字體、Google 字體,甚至是 jQuery,如果您選擇的話。
現有的網址可以通過 C# 被高效且簡單地渲染成 PDF;這也使得團隊能夠將 PDF 設計和後端 PDF 渲染工作分配到各個部分,這是有益的。
以下代碼展示了如何從網址渲染 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)
因此,所有超連結 (HTML 鏈接) 甚至 HTML 表單也會保留在生成的 PDF 中。
本節展示如何渲染任何本地 HTML 文件。這將顯示該文件已使用 file:/ 協議打開,用於所有相對資產如 CSS、圖片和 JavaScript 等。
//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)
這個策略的優勢在於,它允許開發人員在創建 HTML 內容時在瀏覽器中進行測試。IronPDF 的渲染引擎是基於 Chrome 網頁瀏覽器構建的。因此,建議 將 XML 轉換為 PDF使用XSLT模板可將XML內容列印為PDF。
透過一行代碼,您可以將 ASP.NET 線上表單轉換為 PDF 格式,而不是 HTML。將這行代碼放入頁面的程式碼後置檔的 Page_Load
方法中,使其顯示在頁面上。
ASP.NET Web Forms 應用程式可以從頭開始創建或從以前的版本開啟。
如果尚未安裝,請安裝 NuGet 套件。
應使用 using
關鍵字來導入 IronPdf
命名空間。
找出您想要轉換為 PDF 的頁面後置程式碼。例如,使用 ASP.NET 的 Default.aspx.cs 檔案。
RenderThisPageAsPdf
是 AspxToPdf
類中的一個方法。
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
這需要 IronPdf.Extensions.ASPX 來自 NuGet 官方頁面 安裝。由於ASPX已被MVC模型取代,因此在 .NET Core 中不可用。
對於內聯網和網站開發人員來說,樣板或“批量生成” PDF 的能力是一個標準必需品。
與其為 PDF 文件創建樣板,IronPDF 庫提供一種通過利用現有、經過良好測試的技術為 HTML 生成樣板的方式。
當 HTML 樣板由查詢字串或資料庫的數據補充時,會生成一個動態生成的 PDF 文件,如下所示。
舉例來說,考慮 C# String 類及其屬性。Format 方法非常適合於基本的“郵件合併”操作。
String.Format("<h1>Hello {}!<h1/>","World");
String.Format("<h1>Hello {}!<h1/>","World");
String.Format("<h1>Hello {}!<h1/>","World")
由於HTML檔案可能非常龐大,因此通常會使用任意佔位符,例如 [[名稱]] 然後用準確的數據取代它們。
以下示例將生成三個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
使用 ASP.NET MVC 框架,您可以將用戶導向 PDF 文件。
在建立新的 ASP.NET MVC 應用程式或向現有的應用程式新增現有的 MVC 控制器時,請選擇此選項。選擇 ASP.NET Web 應用程式,啟動 Visual Studio 的新專案精靈 (.NET框架) > 從下拉選單選擇 MVC。或者,您可以開啟一個現有的 MVC 專案。在控制器資料夾中的 HomeController 檔案中替換 Index 方法,或在控制器資料夾中創建一個新的控制器。
以下是程式碼應該如何編寫的範例:
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
為PDF文件添加封面頁面
IronPDF簡化了合併PDF文件的過程。這種技術最常見的應用是向已渲染的PDF文件中添加封面頁或背頁。
為此,請準備封面頁,然後使用PdfDocument
功能。
要合併這兩個文件,請使用 合併 靜態方法。
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")
最後但並非最不重要的是,使用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")
當您設定 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
除了上述優點之外,通過IronPDF,您還可以:
從PDF中提取圖片和文本 使用OCR
創建PDF是一項極具挑戰性的任務;有些人可能從未接觸過應該使用的基本概念來製作最優秀的文件。因此,IronPDF非常有幫助,因為它簡化了PDF的創建過程,從而改善了從PDF和HTML創建的文件的原始展示。
根據文檔中提供的信息和競爭對手的分析:IronPDF是在創建PDF時最有效的工具,使任何人,包括在辦公室或學校工作的人,都能簡單地高效完成工作。
如何使用C#和IronPDF在ASP.NET中查看PDF檔案
IronPDF是一個必備的.NET庫。現在就獲取它 使用NuGet試試看.