跳過到頁腳內容
.NET幫助

NuGet PDF 生成器在 .NET 中(開發者教程)

PDF 文件已成為數位生態系統的重要組成部分,成為共享和展示資訊的通用格式。 在軟體開發領域,人們一直需要能夠有效率地建立、修改和轉換 PDF 檔案的工具。 這時NuGet PDF 產生器就派上了用場,它為開發人員提供了一種輕鬆生成 PDF 文件並將 PDF 功能整合到其應用程式中的方法。

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

什麼是NuGet?

NuGet是 Microsoft 開發平台的套件管理器,包括.NET Framework和.NET Core。 它透過自動化軟體包安裝、版本管理和依賴項跟踪,簡化了將第三方庫和工具整合到專案中的過程。

NuGet擁有超過 10 萬個軟體套件的龐大儲存庫,讓開發人員能夠輕鬆新增、更新和刪除功能,而無需手動管理 DLL 或擔心相容性問題。 我們可以用它來在 Visual Studio 中安裝NuGet套件。

IronPDF庫:功能強大的.NET PDF產生器

 .NET中的NuGet PDF 產生器(開發者教學):圖 2 - IronPDF for .NET

IronPDF是一個功能強大且用途廣泛的.NET庫,它使開發人員能夠在自己的應用程式中建立、修改和轉換 PDF 文件。 IronPDF以NuGet套件的形式提供,它簡化了 PDF 操作,使其成為使用.NET Framework和.NET Core專案的開發人員的寶貴工具。

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

 .NET中的NuGet PDF 產生器(開發者教學):圖 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

 .NET中的NuGet PDF 產生器(開發者教學):圖 4 - 輸出 PDF

PDF文件的URL

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");
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

 .NET中的NuGet PDF 產生器(開發者教學):圖 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庫(可在NuGet上取得)是一個功能強大且用途廣泛的.NET PDF 庫,可簡化應用程式中建立、修改和轉換 PDF 文件的過程。 透過利用其豐富的功能,例如產生新的 PDF 文件、將 HTML 轉換為 PDF 以及修改現有的 PDF 文件,開發人員可以將 PDF 功能無縫整合到他們的.NET Framework和.NET Core專案中。 使用IronPDF,產生和管理 PDF 文件從未如此簡單。

IronPDF提供其庫的免費試用版,讓開發人員在做出購買決定之前試用該軟體的功能和功能。 如果開發者在試用期結束後決定購買許可證,則許可證的起價為 $799。 價格可能會因許可證類型和使用該軟體的開發人員數量而異。 IronPDF也為大宗採購提供大量折扣。

常見問題解答

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

您可以使用 IronPDF 生成 PDF 文件,這是一個可在 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 文件合併為單一文件,以便更有組織的內容。

是否可以使用 NuGet 套件加密來保護 PDFs?

是的,IronPDF 允許您對 PDF 文件應用加密和密碼保護,以確保您的文檔安全,僅限授權用戶訪問。

在 .NET 中使用 PDF 生成器時,有哪些常見的故障排除提示?

當在 .NET 中排除使用像 IronPDF 這樣的 PDF 生成器的故障時,請確保所有的依賴項通過 NuGet 正確安裝。檢查被轉換的 HTML 內容中是否有任何錯誤,並且確認庫版本是最新的。

我可以使用 .NET 庫在 PDF 文件中創建可填寫的表格嗎?

可以,IronPDF 提供在 PDF 文件中創建和管理可填寫表格的能力,允許用戶與您的 PDFs 互動並輸入數據。

如何將 URL 轉換為 PDF 文件?

使用 IronPDF,您可以使用 RenderUrlAsPdf 方法將 URL 轉換為 PDF,該方法能夠捕捉網頁內容並將其保存為 PDF 文件。

NuGet 在 .NET 開發中的角色是什麼?

NuGet 是一個包管理器,促進了像 IronPDF 這樣的第三方庫在 .NET 項目中的安裝和管理,自動化依賴項管理和版本控制。

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

Jacob Mellor是Iron Software的首席技術官,也是開創C# PDF技術的前瞻性工程師。作為Iron Software核心代碼庫的原始開發者,他自公司成立以來就塑造了公司的產品架構,並與CEO Cameron Rimington將公司轉型為服務NASA、Tesla以及全球政府機構的50多人公司。

Jacob擁有曼徹斯特大學土木工程一級榮譽學士學位(1998年–2001年)。他於1999年在倫敦開立首家軟體公司,並於2005年建立了他的第一個.NET組件,專注於解決Microsoft生態系統中的複雜問題。

他的旗艦作品IronPDF和Iron Suite .NET程式庫全球已獲得超過3000萬次NuGet安裝,他的基礎代碼不斷在全球各地驅動開發者工具。擁有25年以上的商業經驗和41年的編碼專業知識,Jacob仍然專注於推動企業級C#、Java和Python PDF技術的創新,同時指導下一代技術領導者。

Iron Support Team

We're online 24 hours, 5 days a week.
Chat
Email
Call Me