
NuGet PDF 生成器在 .NET 中(開發者教程)
PDF文件已成為數位生態系統中的重要部分,是共享和展示資訊的通用格式。 在軟體開發世界中,始終需要可以有效建立、修改和轉換PDF文件的工具。 這就是NuGet PDF生成器的用武之地,為開發者提供了一種輕鬆生成PDF文件並將PDF功能整合到其應用程式中的方式。
其中一個強大的.NET PDF程式庫是IronPDF,這是一個NuGet套件。 在本文中,我們將深入探討NuGet的世界,探索IronPDF程式庫的功能,並學習如何輕鬆建立和生成PDF文件。
什麼是NuGet?
NuGet是微軟開發平台的套件管理器,包括.NET Framework和.NET Core。 它通過自動化套件安裝、版本管理和依賴跟蹤,簡化了將第三方程式庫和工具整合到您的專案中的過程。
擁有超過100,000個套件的龐大資源庫,NuGet讓開發者可以毫不費力地新增、更新和移除功能,而無需手動管理DLL或擔心相容性問題。 我們可以在Visual Studio中使用它來安裝NuGet套件。
IronPDF程式庫:一個強大的.NET PDF生成器

IronPDF是一個功能強大且多功能的.NET程式庫,讓開發者能夠在其應用程式中建立、修改和轉換PDF文件。 作為NuGet上的一個套件,IronPDF簡化了PDF操作,使其成為從事.NET Framework和.NET Core專案的開發者不可或缺的工具。
IronPDF的主要功能包括從零建立新的PDF文件、將HTML內容轉換為PDF文件、修改現有PDF文件以及提供高品質的渲染和排版。 該程式庫簡化了從現有HTML頁面生成PDF的過程。 它可以使用HTML字串、HTML文件或URL來建立PDF文件。

HTML到PDF轉換
IronPDF具有將HTML內容轉換為PDF文件的能力。 這使得開發者可以從現有的HTML頁面建立PDF文件,或從使用者生成的內容動態生成PDF。 這是一個如何將HTML字串轉換為PDF文件的範例:
using IronPdf;
// Instantiate Renderer
var renderer = new ChromePdfRenderer();
// Create a PDF from an HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("Hello World");
// Export to a file or Stream
pdf.SaveAs("output.pdf");Imports IronPdf
' Instantiate Renderer
Private renderer = New ChromePdfRenderer()
' Create a PDF from an HTML string using C#
Private pdf = renderer.RenderHtmlAsPdf("Hello World")
' Export to a file or Stream
pdf.SaveAs("output.pdf")
URL到PDF文件
IronPDF允許開發者直接將網頁轉換為PDF文件。 此功能對於需要從即時網頁生成PDF文件或將線上內容保存以供離線檢視、存檔或分享的情境特別有用。
利用IronPDF的HTML到PDF轉換能力,開發者只需幾行程式碼即可輕鬆將整個網頁(包括其文字、圖像和樣式)轉換為PDF文件。 以下是這個功能如何運作的簡要概述:
using IronPdf;
// Instantiate Renderer
var renderer = new ChromePdfRenderer();
// Create a PDF from a URL or local file path
var pdf = renderer.RenderUrlAsPdf("https://ironpdf.com/");
// Export to a file or Stream
pdf.SaveAs("url.pdf");Imports IronPdf
' Instantiate Renderer
Dim renderer As New ChromePdfRenderer()
' Create a PDF from a URL or local file path
Dim pdf = renderer.RenderUrlAsPdf("https://ironpdf.com/")
' Export to a file or Stream
pdf.SaveAs("url.pdf")修改PDF文件
IronPDF還使得開發者能夠修改現有的PDF文件,使其可以輕鬆新增或移除內容、合併文件並應用安全設置。 這是一個如何為PDF文件新增水印的範例:
using IronPdf;
// Stamps a Watermark onto a new or existing PDF
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf");
pdf.ApplyWatermark("SAMPLE", 30, IronPdf.Editing.VerticalAlignment.Middle, IronPdf.Editing.HorizontalAlignment.Center);
pdf.SaveAs(@"C:\Path\To\Watermarked.pdf");Imports IronPdf
' Stamps a Watermark onto a new or existing PDF
Private renderer = New ChromePdfRenderer()
Private pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf")
pdf.ApplyWatermark("SAMPLE", 30, IronPdf.Editing.VerticalAlignment.Middle, IronPdf.Editing.HorizontalAlignment.Center)
pdf.SaveAs("C:\Path\To\Watermarked.pdf")
這個範例專案示範了如何從URL建立PDF文件,為每頁新增水印,並將修改後的文件保存為新文件。
IronPDF的高級PDF功能
除了之前討論的基本PDF文件建立操作之外,IronPDF還提供了進階功能,可以進一步增強您的PDF文件生成和管理能力。 其中一些功能包括:
合併PDF文件: IronPDF允許您合併多個PDF文件為一個單一文件,使得編排和組織相關內容變得簡單。
using IronPdf;
var htmlA = @"<h1>[PDF_A]</h1><p>[PDF_A] 1st Page</p><p>[PDF_A] 2nd Page</p>";
var htmlB = @"<h1>[PDF_B]</h1><p>[PDF_B] 1st Page</p><p>[PDF_B] 2nd Page</p>";
var renderer = new ChromePdfRenderer();
var pdfDocA = renderer.RenderHtmlAsPdf(htmlA);
var pdfDocB = renderer.RenderHtmlAsPdf(htmlB);
var merged = PdfDocument.Merge(pdfDocA, pdfDocB);
merged.SaveAs("Merged.pdf");Imports IronPdf
Private htmlA = "<h1>[PDF_A]</h1><p>[PDF_A] 1st Page</p><p>[PDF_A] 2nd Page</p>"
Private htmlB = "<h1>[PDF_B]</h1><p>[PDF_B] 1st Page</p><p>[PDF_B] 2nd Page</p>"
Private renderer = New ChromePdfRenderer()
Private pdfDocA = renderer.RenderHtmlAsPdf(htmlA)
Private pdfDocB = renderer.RenderHtmlAsPdf(htmlB)
Private merged = PdfDocument.Merge(pdfDocA, pdfDocB)
merged.SaveAs("Merged.pdf")PDF表單: IronPDF支援建立和操控PDF表單,讓開發者能生成具有可填寫欄位的動態互動式PDF文件。
using IronPdf;
using System;
// Step 1. Creating a PDF with editable forms from HTML using form and input tags
// Radio Button and Checkbox can also be implemented with input type 'radio' and 'checkbox'
const string formHtml = @"
<h1>Editable PDF Form</h1>
<label>First name: <input type='text' name='firstname' /></label>
<label>Last name: <input type='text' name='lastname' /></label>
<p>Please specify your gender:</p>
<label><input type='radio' name='gender' value='female' /> Female</label>
<label><input type='radio' name='gender' value='male' /> Male</label>
<label><input type='radio' name='gender' value='other' /> Non-Binary / Other</label>
<p>Please select all medical conditions that apply:</p>
<label><input type='checkbox' name='condition' value='hypertension' /> Hypertension</label>
<label><input type='checkbox' name='condition' value='heartDisease' /> Heart Disease</label>
<label><input type='checkbox' name='condition' value='stroke' /> Stroke</label>
<label><input type='checkbox' name='condition' value='diabetes' /> Diabetes</label>
<label><input type='checkbox' name='condition' value='kidneyDisease' /> Kidney Disease</label>
";
// Instantiate Renderer
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.CreatePdfFormsFromHtml = true;
renderer.RenderHtmlAsPdf(formHtml).SaveAs("BasicForm.pdf");
// Step 2. Reading and Writing PDF form values.
var formDocument = PdfDocument.FromFile("BasicForm.pdf");
// Set and Read the value of the "firstname" field
var firstNameField = formDocument.Form.FindFormField("firstname");
firstNameField.Value = "Minnie";
Console.WriteLine("FirstNameField value: {0}", firstNameField.Value);
// Set and Read the value of the "lastname" field
var lastNameField = formDocument.Form.FindFormField("lastname");
lastNameField.Value = "Mouse";
Console.WriteLine("LastNameField value: {0}", lastNameField.Value);
formDocument.SaveAs("FilledForm.pdf");Imports IronPdf
Imports System
' Step 1. Creating a PDF with editable forms from HTML using form and input tags
' Radio Button and Checkbox can also be implemented with input type 'radio' and 'checkbox'
Private Const formHtml As String = "
<h1>Editable PDF Form</h1>
<label>First name: <input type='text' name='firstname' /></label>
<label>Last name: <input type='text' name='lastname' /></label>
<p>Please specify your gender:</p>
<label><input type='radio' name='gender' value='female' /> Female</label>
<label><input type='radio' name='gender' value='male' /> Male</label>
<label><input type='radio' name='gender' value='other' /> Non-Binary / Other</label>
<p>Please select all medical conditions that apply:</p>
<label><input type='checkbox' name='condition' value='hypertension' /> Hypertension</label>
<label><input type='checkbox' name='condition' value='heartDisease' /> Heart Disease</label>
<label><input type='checkbox' name='condition' value='stroke' /> Stroke</label>
<label><input type='checkbox' name='condition' value='diabetes' /> Diabetes</label>
<label><input type='checkbox' name='condition' value='kidneyDisease' /> Kidney Disease</label>
"
' Instantiate Renderer
Private renderer = New ChromePdfRenderer()
renderer.RenderingOptions.CreatePdfFormsFromHtml = True
renderer.RenderHtmlAsPdf(formHtml).SaveAs("BasicForm.pdf")
' Step 2. Reading and Writing PDF form values.
Dim formDocument = PdfDocument.FromFile("BasicForm.pdf")
' Set and Read the value of the "firstname" field
Dim firstNameField = formDocument.Form.FindFormField("firstname")
firstNameField.Value = "Minnie"
Console.WriteLine("FirstNameField value: {0}", firstNameField.Value)
' Set and Read the value of the "lastname" field
Dim lastNameField = formDocument.Form.FindFormField("lastname")
lastNameField.Value = "Mouse"
Console.WriteLine("LastNameField value: {0}", lastNameField.Value)
formDocument.SaveAs("FilledForm.pdf")PDF安全性: IronPDF提供了保護您的PDF文件的選項,包括密碼保護和加密。
using IronPdf;
// Open an Encrypted File, alternatively create a new PDF from Html
var pdf = PdfDocument.FromFile("encrypted.pdf");
//Edit file security settings
//The following code makes a PDF read-only and will disallow copy & paste and printing
pdf.SecuritySettings.RemovePasswordsAndEncryption();
pdf.SecuritySettings.MakePdfDocumentReadOnly("secret-key");
pdf.SecuritySettings.AllowUserAnnotations = false;
//Change or set the document encryption password
pdf.SecuritySettings.OwnerPassword = "top-secret"; // password to edit the pdf
pdf.SaveAs("secured.pdf");Imports IronPdf
' Open an Encrypted File, alternatively create a new PDF from Html
Private pdf = PdfDocument.FromFile("encrypted.pdf")
'Edit file security settings
'The following code makes a PDF read-only and will disallow copy & paste and printing
pdf.SecuritySettings.RemovePasswordsAndEncryption()
pdf.SecuritySettings.MakePdfDocumentReadOnly("secret-key")
pdf.SecuritySettings.AllowUserAnnotations = False
'Change or set the document encryption password
pdf.SecuritySettings.OwnerPassword = "top-secret" ' password to edit the pdf
pdf.SaveAs("secured.pdf")IronPDF的高級功能使其成為需要在.NET應用程式中全面PDF功能的開發者的寶貴工具。 從合併文件和管理表單到保護內容和自訂渲染,IronPDF都提供了強大的解決方案來滿足您的所有PDF需求。
結論
在NuGet上可獲的IronPDF程式庫是一個功能強大且多功能的.NET PDF程式庫,簡化了應用程式中建立、修改和轉換PDF文件的過程。 通過利用其廣泛的功能,如生成新的PDF文件、將HTML轉換為PDF以及修改現有的PDF文件,開發者可以無縫地將PDF功能整合到他們的.NET Framework和.NET Core專案中。 有了IronPDF,生成和管理PDF文件變得前所未有的簡單。
IronPDF提供了其程式庫的免費試用,允許開發者在做出購買決定之前試用該軟體的功能和特性。 如果開發者在試用期結束後決定購買授權,授權的起始價格為$999。 價格可能會根據授權型別及使用該軟體的開發者數量而有所不同。 IronPDF還為大批量採購提供批量折扣。

Jacob Mellor是Iron Software的首席技術官,一位在C# PDF技術上開創先河的遠見工程師。作為Iron Software核心程式碼庫的原開發者,他從創立以來就一直在塑造公司的產品架構,與首席執行官Cameron Rimington一起將公司轉變為服務於NASA、特斯拉和全球政府公司的50多名人員的公司。
相關文章


