跳至頁尾內容
.NET 幫助

.NET 中的 NuGet PDF 生成器(開發者教學)

PDF 文件已成為數位生態系統中不可或缺的一部份,是分享和呈現資訊的通用格式。 在軟體開發的世界中,不斷需要能夠有效率地建立、修改及轉換 PDF 檔案的工具。 這就是 NuGet PDF 生成器的用武之地,它為開發者提供了一條簡化的途徑,來生成 PDF 檔案和將 PDF 功能整合到其應用程式中。

IronPDF for .NET 就是這樣一個功能強大的 .NET PDF 函式庫,它可以 NuGet 套件的形式提供。 在本文中,我們將深入 NuGet 的世界,探索 IronPDF 函式庫的功能,並學習如何輕鬆建立和產生 PDF 檔案。

什麼是 NuGet?

NuGet 是 Microsoft 開發平台的套件管理器,包括 .NET Framework 和 .NET Core。 它透過自動化套件安裝、版本管理和相依性追蹤,簡化將第三方函式庫和工具併入專案的流程。

NuGet 擁有超過 100,000 個套件的龐大儲存庫,可讓開發人員毫不費力地新增、更新和移除功能,而無需手動管理 DLL 或擔心相容性問題。 我們可以用它在 Visual Studio 中安裝 NuGet 套件。

IronPDF Library:功能強大的 .NET PDF 生成器。

NuGet PDF Generator in .NET (Developer Tutorial):圖 2 - IronPDF for .NET

IronPDF for .NET 是一款功能強大、用途廣泛的 .NET 函式庫,可讓開發人員在其應用程式中建立、修改和轉換 PDF 文件。 IronPDF 以 NuGet 上的套件形式提供,可簡化 PDF 作業,是處理 .NET Framework 和 .NET Core 專案的開發人員的寶貴工具。

IronPDF 的主要功能包括從頭開始建立新的 PDF 文件、將 HTML 內容轉換為 PDF 檔案、修改現有的 PDF 檔案,以及提供高品質的渲染和排版。 這個函式庫簡化了從現有 HTML 頁面產生 PDF 的過程。 它可以使用 HTML 字串、HTML 檔案或 URL 建立 PDF 檔案。

NuGet PDF Generator in .NET (Developer Tutorial):圖 3 - 跨平台支援

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");
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");
$vbLabelText   $csharpLabel

NuGet PDF Generator in .NET (Developer Tutorial):圖 4 - 輸出 PDF

URL 至 PDF 文件

IronPDF 可讓開發人員 將網頁直接轉換為 PDF 文件。 此功能對於開發人員需要從即時網頁產生 PDF 文件或儲存線上內容以供離線檢視、歸檔或分享的情境特別有用。

利用 IronPDF 的 HTML-to-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");
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");
$vbLabelText   $csharpLabel

修改 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");
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");
$vbLabelText   $csharpLabel

NuGet PDF Generator in .NET (Developer Tutorial):圖 5 - 將水印套用至 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");
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");
$vbLabelText   $csharpLabel

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");
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");
$vbLabelText   $csharpLabel

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");
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");
$vbLabelText   $csharpLabel

IronPDF 的先進功能使其成為在 .NET 應用程式中需要全面 PDF 功能的開發人員的寶貴工具。 從合併文件和管理表單,到保護內容和自訂渲染,IronPDF 為您所有的 PDF 需求提供強大的解決方案。

結論

IronPDF library 在 NuGet 上提供,是功能強大且多用途的 .NET PDF library,可簡化在應用程式中建立、修改及轉換 PDF 檔案的流程。 透過利用其廣泛的功能,例如產生新的 PDF 文件、將 HTML 轉換為 PDF,以及修改現有的 PDF 檔案,開發人員可以將 PDF 功能無縫整合到他們的 .NET Framework 和 .NET Core 專案中。 有了 IronPDF,生成和管理 PDF 文件變得前所未有的簡單。

IronPDF 提供 免費試用他們的函式庫,讓開發人員在做出購買決定之前,可以先試用軟體的特色與功能。 如果開發人員決定在試用期後購買授權,則授權起價為 $799 。 價格可能因授權類型和使用軟體的開發人員數量而異。 IronPDF 也會針對較大的採購量提供批量折扣。

常見問題解答

如何使用 NuGet 套件產生 PDF 文件?

您可以使用 IronPDF 產生 PDF 文檔,IronPDF 是一個可在 NuGet 上取得的 .NET 程式庫。它允許開發人員輕鬆地從 HTML 內容、URL 或現有 PDF 文件建立 PDF。

使用 NuGet 套件產生 PDF 檔案有哪些優勢?

使用像 IronPDF 這樣的 NuGet 套件可以簡化整合過程,因為它能夠管理依賴項並確保您擁有最新更新。它簡化了將 PDF 生成功能整合到 .NET 應用程式中的過程。

如何在 C# 中將 HTML 字串轉換為 PDF?

您可以使用 IronPDF 在 C# 中將 HTML 字串轉換為 PDF。使用ChromePdfRenderer類別可以輕鬆地將 HTML 內容渲染成 PDF 文件。

我可以使用 NuGet 套件修改現有的 PDF 文件嗎?

是的,使用 IronPDF,您可以修改現有的 PDF 文件。該庫提供了編輯文字、新增圖像和插入額外頁面的功能。

如何將多個PDF文件合併成一個文件?

IronPDF 讓您可以使用Merge方法將多個 PDF 文件合併到一個文件中,從而無縫編譯 PDF 文件,使內容更有條理。

是否可以使用 NuGet 套件對 PDF 檔案進行加密保護?

是的,IronPDF 允許您對 PDF 文件套用加密和密碼保護,確保您的文件安全可靠,只有授權使用者才能存取。

在.NET中使用PDF產生器時,有哪些常見的故障排除技巧?

在對 IronPDF 等 .NET 中的 PDF 產生器進行故障排除時,請確保所有相依性都已透過 NuGet 正確安裝。檢查正在轉換的 HTML 內容是否有任何錯誤,並驗證庫版本是否為最新版本。

我可以使用 .NET 程式庫在 PDF 文件中建立可填寫表單嗎?

是的,IronPDF 提供了在 PDF 文件中建立和管理可填寫表單的功能,允許使用者與您的 PDF 互動並輸入資料。

如何將URL轉換為PDF文件?

使用 IronPDF,您可以使用RenderUrlAsPdf方法將 URL 轉換為 PDF,該方法會捕獲網頁內容並將其儲存為 PDF 檔案。

NuGet 在 .NET 開發中扮演什麼角色?

NuGet 是一個套件管理器,它簡化了 .NET 專案中 IronPDF 等第三方程式庫的安裝和管理,實現了依賴項管理和版本控制的自動化。

Jacob Mellor,Team Iron 首席技術官
首席技術長

Jacob Mellor 是 Iron Software 的首席技術官,也是一位富有遠見的工程師,率先開發了 C# PDF 技術。作為 Iron Software 核心程式碼庫的最初開發者,他自公司成立之初便參與塑造了其產品架構,並與執行長 Cameron Rimington 一起將其發展成為一家擁有 50 多名員工、服務於 NASA、特斯拉和全球政府機構的公司。

Jacob 於 1998 年至 2001 年在曼徹斯特大學獲得土木工程一級榮譽學士學位。 1999 年,他在倫敦創辦了自己的第一家軟體公司;2005 年,他創建了自己的第一個 .NET 元件。此後,他專注於解決微軟生態系統中的複雜問題。

他的旗艦產品 IronPDF 和 IronSuite .NET 庫在全球 NuGet 上的安裝量已超過 3000 萬次,其基礎程式碼持續為全球開發者工具提供支援。憑藉 25 年的商業經驗和 41 年的程式設計專長,Jacob 始終致力於推動企業級 C#、Java 和 Python PDF 技術的創新,同時指導下一代技術領導者。