如何使用 PDFSharp 在 C# (.NET 5) 中生成 PDF
Full Comparison
Looking for a detailed feature-by-feature breakdown? See how IronPDF stacks up against Itext on pricing, HTML support, and licensing.
IronPDF vs iText / iText
全面的.NET PDF程式庫比較——基於證據的功能對功能
| 功能 | iText / iText | IronPDF ✦ |
|---|---|---|
| PDF建立與轉換 | ||
| HTML/CSS到PDF |
$ Paid Add-on
HTML→PDF透過
pdfHTML附加元件(單獨套件;AGPL/商業模式)。 |
✓ Yes
基於Chromium的引擎,內建像素完美的CSS3、Flexbox和Grid渲染。
|
| JavaScript 執行 |
? Unknown
pdfHTML描述HTML/CSS→PDF轉換,但在文件中未明確支持JS執行。
|
✓ Yes
在渲染時完全執行JS——動態圖表、單頁應用和互動內容。
|
| 程式生成 |
✓ Yes
定位為可編程的.NET PDF SDK——建立、編輯和增強。
|
✓ Yes
從HTML模板、字串、ASPX視圖或圖片生成。Chromium處理布局。
|
| URL到PDF |
$ Paid Add-on
可能透過pdfHTML附加元件與URL捕獲,但不是核心功能。
|
✓ Yes
RenderUrlAsPdf() 捕獲任何實時URL並完全渲染CSS/JS。 |
| DOCX到PDF |
✕ No
沒有原生Word轉換——iText是PDF原生SDK。
|
✓ Yes
DocxToPdfRenderer 在保留結構和格式的情況下轉換Word文件。 |
| 閱讀與提取 | ||
| 文字提取 |
✓ Yes
PdfTextExtractor.GetTextFromPage() 具有多種提取策略。 |
✓ Yes
提取時具有布局意識的文字,可與IronOCR結合處理掃描文件。
|
| 渲染頁面為圖片 |
? Unknown
OCR工作流提及渲染,但在列出的iText文件中未提供主要來源的"PDF→圖片渲染器"模組。
|
✓ Built-in
本地光柵化到PNG、JPEG、BMP,具有可配置的DPI。
|
| 內建OCR |
$ Paid Add-on
提供pdfOCR附加元件;安裝說明提及特定平台/原生依賴(例如,Linux/macOS運行時需求)。
|
✓ Via IronOCR
與IronOCR本地整合,支持127+語言OCR於掃描PDF上。
|
| 編輯與操作 | ||
| 合併與拆分 |
✓ Yes
PdfMerger .NET API中的類;官方範例討論透過PdfMerger合併。
|
✓ Yes
一行合併、拆分、附加、前置和頁面重新排序,帶有直觀的API。
|
| 頁眉、頁腳與頁碼 |
✓ Yes
PDF協會列表確認能夠為現有PDF新增"頁碼"和類似功能。
|
✓ Yes
基於HTML的頁眉/頁腳,帶有自動頁碼、日期和自定義內容。
|
| 水印 |
✓ Yes
PDF協會列表中明確包含"水印...到現有PDF文件"。
|
✓ Yes
ApplyWatermark() 接受HTML/CSS——完全控制不透明度、旋轉、
位置。 |
| 標記文字與圖片 |
✓ Yes
程式內容放置可透過iText的畫布和布局API實現。
|
✓ Yes
TextStamper & ImageStamper與Google字體、定位、
每頁控制。 |
| 文字編輯 |
✓ Yes
iText提供透過清理模組的編輯註解支持。
|
✓ Yes
RedactTextOnAllPages() 一行永久移除敏感文字。
|
| 安全與合規 | ||
| 加密與密碼 |
✓ Yes
透過iText的安全API全面加密與權限控制。
|
✓ Yes
AES加密、擁有者/使用者密碼、細緻的權限(列印、複製、註解)。
|
| 數位簽名 |
✓ Yes
專用的數位簽名文件和簽名API(
PdfSigner)。 |
✓ Yes
PdfSignature 支持X509/PFX證書。 |
| PDF/A與PDF/UA合規 |
✓ Yes
文件涵蓋建立PDF/A,並解釋限制(現有轉換不是
自動的)。
|
✓ Yes
企業使用的本地PDF/A存檔和PDF/UA無障礙合規。
|
| 平台與部署 | ||
| 跨平台支持 |
✓ Yes
.NET Standard 2.0 / .NET Framework 4.6.1 — 在.NET 6+上運行,適用於OS。
|
✓ Yes
Windows、Linux、macOS、x64、x86、ARM。.NET 6–10、Core、Standard 2.0+、Framework 4.6.2+。
|
| 伺服器 / Docker / 云 |
~ Complex
核心安裝需要多個套件(iText + Bouncy Castle適配器);附加元件
(pdfHTML/pdfOCR)增加了依賴性/合規步驟。
|
✓ Yes
Docker、Azure、AWS、IIS。提供官方Docker映像和部署指南。
|
| 設置簡便性 |
~ Complex
核心安裝需要多個套件(Bouncy Castle適配器);HTML/OCR需要
額外的附加元件,有時還需要本地依賴。
|
✓ Simple
單個
Install-Package IronPdf NuGet命令。幾分鐘內準備好。 |
| 授權與支持 | ||
| 授權模式 |
~ Complex
雙重授權:AGPLv3(用于網路使用的源程式碼披露義務)或商業。AGPL可以
限制專有應用程式。
|
✓ Commercial
永久授權。30天完全功能免費試用,無水印。
|
| 商業支持與SLA |
✓ Yes
iText網站包括商業授權 + 支持協議,屬於其授權模式的一部分。
|
✓ 24/5 Support
專用工程支持,保證SLA——電子郵件、即時聊天、電話。
|
| 文件 |
✓ Yes
提供安裝指南、知識庫文章和API參考(核心 + 附加元件)。
|
✓ Extensive
完整API參考,100+操作指南、教程、程式碼範例、問題排查、影片。
|
資料來源於官方iText文件、PDF協會列表和NuGet包參考。 iText功能強大,但具有AGPL授權的複雜性和多包設置的負擔。 IronPDF提供全方位覆蓋,設置更簡單——免費試用30 天。
iText PDF庫是建立和操作PDF文件的Java和.NET庫。 iText是iText和iText的高級版本。 它是更簡單、高效、可擴展的庫,旨在逐步應對當今PDF文件過程和文件需求的挑戰。
iText集團NV
iText集團是PDF(便攜式文件格式)技術的全球先驅,包括產品如iText Suite、iText pdf2Data和iText DITO應用軟體。
iText Core是一個開源PDF庫,您可以將其融入自己的應用程式中以建立互動表單。 這是對iText中成功引擎的重新思考,具有模塊化程式碼結構,允許改善和擴展以及更簡單的腳本編寫。
iText軟體庫的功能
iText庫為商業使用者提供多種功能:
- 建立、閱讀和操作PDF文件
- 向PDF文件新增數位簽名
- 填寫和展平交互式PDF表單
- 向PDF文件新增標籤
- 建立地圖和書籍
- 向現有PDF文件新增書籤、頁碼、水印和其他功能
- 它支持符合以下標準的PDF文件:
- 包括PDF 2.0(ISO 32000-2)在內的PDF規範
- PDF/A(ISO 19005、 PDF/A-1a/b、PDF/A-2a/b/u、PDF/A-3a/b/u)
- PDF/UA(ISO 14289)
關於iText
iText是一家數位文件領域的技術公司。 公司的旗艦產品是一個開源Java庫和.NET庫,用於在Java和.NET(C#)中建立和操作PDF文件。
使用iText建立PDF文件
讓我們看看使用iText生成PDF文件的Hello World源程式碼範例。
// Import iText7 libraries
using iText.Kernel.Pdf;
using iText.Layout;
using iText.Layout.Element;
// Create a writer instance with the destination file path
var writer = new PdfWriter("destination.pdf");
// Create a PdfDocument instance which uses the writer
var pdf = new PdfDocument(writer);
// Create a Document instance for high-level manipulation
var document = new Document(pdf);
// Add a paragraph with "Hello World!" text
document.Add(new Paragraph("Hello World!"));
// Close the document to ensure changes are saved
document.Close();
// Import iText7 libraries
using iText.Kernel.Pdf;
using iText.Layout;
using iText.Layout.Element;
// Create a writer instance with the destination file path
var writer = new PdfWriter("destination.pdf");
// Create a PdfDocument instance which uses the writer
var pdf = new PdfDocument(writer);
// Create a Document instance for high-level manipulation
var document = new Document(pdf);
// Add a paragraph with "Hello World!" text
document.Add(new Paragraph("Hello World!"));
// Close the document to ensure changes are saved
document.Close();
' Import iText7 libraries
Imports iText.Kernel.Pdf
Imports iText.Layout
Imports iText.Layout.Element
' Create a writer instance with the destination file path
Private writer = New PdfWriter("destination.pdf")
' Create a PdfDocument instance which uses the writer
Private pdf = New PdfDocument(writer)
' Create a Document instance for high-level manipulation
Private document = New Document(pdf)
' Add a paragraph with "Hello World!" text
document.Add(New Paragraph("Hello World!"))
' Close the document to ensure changes are saved
document.Close()
說明:
- PdfWriter:此物件負責寫入PDF文件。它作用於一個文件路徑,並寫入有效PDF文件所需的結構。
- PdfDocument:與
PdfWriter通信,並根據PDF標準管理內容和資料結構。 - Document:提供高級抽象以處理內容新增。 它允許新增各種PDF組件,如段落、表格等。
- Paragraph:代表要插入到文件中的文字區域。
Close()方法至關重要,因為它確保所有內容刷新並正確完成文件。
限制
iText是付費的,功能有限。 它們並未在單一套件中提供所有功能。 我們必須為不同的目的使用不同的庫。 例如:
iText支持PDF建立和生成,而pdfHTML支持HTML到PDF的轉換。 另一方面,pdfSweep支持從PDF中移除敏感資料的PDF。
資料提取(如從PDF文件中提取圖片、表格和文字)由pdf2Data庫提供。 RUPS支持PDF除錯,以操作PDF文件。
同樣,其他功能也有庫支持,這些庫是iText Suite的一部分。因此,開發者管理如此多的DLL非常困難。
它的商業授權也非常昂貴。⟨a href="https://itextpdf.com/en/products/itext-7#licenses"⟩iText授權與定價頁⟨/a⟩上未提及價格。 我們需要與他們的銷售部門聯繫以獲取報價,這會浪費時間。
假設,如果我們專注於生成PDF文件,而同時需要從現有PDF中提取圖片、表格或文字。 在這種情況下,我們需要購買iText Suite以及iText pdf2Data,這會讓我們花費更多。

是否有任何⟨a href="https://ironpdf.com"⟩iText軟體的替代方案,具有全面功能,⟨/a⟩可以在單一庫中提供所有上述功能,且具有合理的商業授權? 答案是有。
IronPDF
<a href="https://ironpdf.com"⟩探索IronPDF功能和能力⟨/a⟩是一個由⟨a href="https://ironsoftware.com/"⟩Iron Software⟨/a⟩開發和維護的.NET和Java庫。 IronPDF是最受歡迎的C#和Java PDF庫,用於建立和編輯PDF。 其簡單的API使開發者能夠在.NET專案中快速從HTML生成專業且高品質的PDF。 它優先考慮精確性、易用性和速度。
IronPDF的功能包括:
- 從HTML、字串、URL、Razor、ASPX和MVC視圖生成PDF
- 提取圖片、表格和文字而無需使用其他庫
- 將掃描文件等圖片轉換為PDF,反之亦然
- 它提供新增頁碼、⟨a href="/examples/headers-and-footers/"⟩自定義頁眉和頁腳⟨/a⟩、⟨a href="/examples/digitally-sign-a-pdf/"⟩數位簽名⟨/a⟩、⟨a href="/examples/csharp-add-attachment-to-pdf/"⟩文件附件⟨/a⟩、⟨a href="/examples/security-and-metadata/"⟩密碼保護和安全措施⟨/a⟩的功能
- 它通過提供完整的⟨a href="/examples/threading/"⟩多執行緒功能⟨/a⟩和⟨a href="/examples/async/"⟩支持異步處理⟨/a⟩以實現高效能
- 其他⟨a href="/features/"⟩50+功能⟨/a⟩,我們無法在此列出
- 相容所有.NET語言,如C#、VB.NET和F#。
- 相容所有.NET版本,包括.NET Standard、.NET Core、.NET 5、6和7。
- ⟨a href="/java/"⟩探索IronPDF for Java⟨/a⟩也提供上述所有功能,並且相容Java、Kotlin和Scala。
- 支持每一個操作系統,包括Windows、Linux和Mac操作系統。
- 支持每一個應用型別,如Web、移動和桌面。
讓我們討論一下其授權。
IronPDF授權
IronPDF在開發中免費使用,不需要任何授權。 然而,在生產中使用需要商業授權。 您可以隨時享受⟨a href="trial-license"⟩IronPDF免費試用⟨/a⟩。它的⟨a href="/licensing/"⟩商業授權⟨/a⟩價格從749美元到2999美元不等。 您可以根據需要選擇套件並開始工作。 您不必聯繫他們的銷售可以節省時間。此外,他們的商業授權包括24/7支持。

總結

IronPDF在單一套件中提供所有功能。 它就像是一個全能解決方案。 就iText而言,我們需要為不同的功能使用不同的套件。 IronPDF的商業授權可以輕鬆購買並全面支援,無需聯絡銷售。 另一方面,我們需要聯絡銷售以獲取報價才可商業使用iText。
我們保持這篇文章的簡潔和全面。歡迎在評論區提問。
常見問題
什麼是iText PDF函式庫?
iText PDF函式庫是一個用於Java和.NET的函式庫,旨在建立和操作PDF文件。它提供如數位簽章和PDF/A合規等各種功能,其產品如iText 7 Suite非常知名。
為什麼開發者可能選擇IronPDF而不是iText?
開發者可能會選擇IronPDF而非iText因為它整合了全面的PDF功能於單一的函式庫中提供簡化的體驗。IronPDF提供簡便的授權過程,並且相較於iText更加具成本效益。
如何在C#或Java中將HTML轉換為PDF?
您可以使用IronPDF的RenderHtmlAsPdf方法將HTML字串轉換為PDF。此函式庫簡化了過程,支持HTML到PDF的轉換而不需要其他附加函式庫。
使用IronPDF進行PDF操作有什麼優勢?
IronPDF提供一個全方位的PDF操作解決方案,支持HTML到PDF轉換、圖像和文字提取以及多執行緒能力。與所有.NET語言和版本相容,亦適用於Java。
IronPDF是否需要商業授權?
是的,IronPDF的生產使用需要商業授權。價格從749美元到2999美元不等,包括24/7的支援,是企業可行的選擇。
IronPDF如何簡化PDF建立過程?
IronPDF透過在單一函式庫中提供所有必要功能來簡化PDF建立過程。這消除了對多個函式庫的需求,減少了複雜性並提高了效能。
IronPDF與iText的授權差別是什麼?
IronPDF提供透明的定價和簡便的購買流程,而iText需要聯繫銷售代表取得報價。IronPDF的授權還包含全面支援,而iText的商業授權可能會較昂貴。



