产品比较

在 C# 中使用 ITextSharp 和 IronPDF 创建 PDF 的对比

Chipego
奇佩戈-卡琳达
2023年十二月12日
分享:

在 C# 中创建 PDF 的比较指南;使用 iTextSharp 和 IronPDF

在这个现代数字媒体时代,便携式文档格式 (PDF) 脱颖而出,成为传输数据时不丢失格式的最通用的标准文档格式之一。 其多功能性、平台独立性和保留文档格式的能力使其成为共享信息的理想选择。

在桌面应用程序和网络应用程序中,以编程方式创建 PDF 是一种常见的必要功能。 程序化创建 PDF 允许开发人员根据实时数据动态生成文档。

这对于需要即时生成报告、发票或证书的应用程序尤为重要。 PDF 文件格式由 Adobe 创建,提供创建 PDF 的功能,您可以在 Adobe Create PDF 上探索其功能。

在本文中,我们将探讨使用两个流行的库iTextSharpIronPDF用C#以编程方式创建PDF文档的过程。

iTextSharp 库简介

iTextSharp 于2009年12月推出,作为革命性的PDF工具,取代了其前身iText 2。作为iText 5的.NET版本,它为高级可编程PDF功能开辟了道路。 iTextSharp 是 iText 5 的 .NET 版本,长期以来一直是创建可编程 PDF 文档对象的可靠来源。

用 iTextsharp 创建 PDF 摘要

  1. 在 Visual Studio 中创建一个新的 C# 项目。

  2. 从 NuGet 包管理器安装 iTextSharp 库。

  3. 创建PdfDocument类的实例。

  4. 使用PdfWriter对象实例化它。

  5. 创建一个Document对象,并将PdfDocument对象传递给它。

  6. 使用段落类将文本添加到文档对象。

  7. 关闭文档 doc 对象。

iText 5 的主要功能

下面是 iTextsharp dll 的一些重要关键功能:

动态 PDF 生成

iTextSharp 使开发人员能够动态生成或处理 PDF 文档。 该功能对于根据 XML 文件或数据库中的数据创建文档和报告非常有用。

交互表单

该图书馆有助于创建和填写互动表格,提高用户参与度和互动性。

高级 PDF 功能

iTextSharp 允许开发人员利用大量交互式功能,如在现有 PDF 文件中添加书签、页码、水印等。 这种灵活性对于根据特定要求定制 PDF 十分重要。

地图和书籍制作

开发人员可以利用 iTextSharp 创建地图和书籍,从而将该库的应用扩展到基本文档生成之外。

符合 PDF 标准

iTextSharp 支持多种 PDF 标准,包括用于存档的 PDF/A、用于无障碍访问的 PDF/UA、用于电子发票的 ZUGFeRD 和 PDF 2.0(尽管并非所有功能都涵盖)。

iText Core 第 8 版发布

虽然iTextSharp一直是PDF处理的强大选择,但iText 5/iTextSharp已经被iText Core版本8取代,它带来了许多改进。 我们鼓励开发人员考虑将现有项目过渡到 iText 8,以便从最新版本中获益。

iText Core 第 8 版的主要功能

以下是 iText 7 第 8 版的一些主要功能:

增强功能

与前代产品相比,iText 在功能、性能和可扩展性方面都有所增强。

改进应用程序接口

最新版本改进了应用程序接口,使开发更直观、更高效。

文件和支持

iText 随附更新的文档和支持,确保更顺畅的开发体验。

优化发票

借助 iText 7 版本 8 套件,开发人员可以优化发票开具,确保长期存档,并通过其强大的 PDF SDK 解决合规问题。

使用 iTextSharp 深入创建 PDF

步骤 1 安装 iTextSharp 库

要使用 iTextSharp 创建 PDF 文档,请按照以下步骤使用 NuGet 软件包管理器安装该库:

  1. 打开 Visual Studio 并创建一个新项目。

  2. 右键单击解决方案资源管理器中的项目,选择 "管理 NuGet 包"。

    C#中使用Itextsharp与IronPDF创建PDF的对比 图1 - NuGet解决方案资源管理器

  3. 在 "NuGet 包管理器 "窗口中,选择 "浏览 "选项卡。

  4. 在搜索栏中输入 "iTextsharp",然后按 Enter。

    在 C# 中使用 Itextsharp 和 IronPDF 创建 PDF 的比较 图 2 - 浏览 iText 7

  5. 从搜索结果中选择 "iText 7",然后点击 "安装"。

  6. 查看并接受依赖关系,然后单击 "确定 "继续。

  7. 等待安装完成,即可将 iTextSharp 添加到项目中。

步骤 2 使用 iTextSharp 创建 PDF 文档的代码

现在,让我们举一个使用 iTextSharp 创建 PDF 的基本例子:

using System;
using System.IO;
using iText.Kernel.Pdf;
using iText.Layout;
using iText.Layout.Element;
// Create a new PDF document
PdfDocument pdfDocument = new PdfDocument(new PdfWriter(new FileStream("/myfiles/hello.pdf", FileMode.Create, FileAccess.Write)));
// Create a document object
Document doc = new Document(pdfDocument);
// Add a paragraph to the document
String line = "Hello! Welcome to iTextSharp. Created with latest iText core version 8.";
doc.Add(new Paragraph(line));
// Close the document
doc.Close();
// Print a message to the console
Console.WriteLine("PDF created successfully!");
using System;
using System.IO;
using iText.Kernel.Pdf;
using iText.Layout;
using iText.Layout.Element;
// Create a new PDF document
PdfDocument pdfDocument = new PdfDocument(new PdfWriter(new FileStream("/myfiles/hello.pdf", FileMode.Create, FileAccess.Write)));
// Create a document object
Document doc = new Document(pdfDocument);
// Add a paragraph to the document
String line = "Hello! Welcome to iTextSharp. Created with latest iText core version 8.";
doc.Add(new Paragraph(line));
// Close the document
doc.Close();
// Print a message to the console
Console.WriteLine("PDF created successfully!");
Imports System
Imports System.IO
Imports iText.Kernel.Pdf
Imports iText.Layout
Imports iText.Layout.Element
' Create a new PDF document
Private pdfDocument As New PdfDocument(New PdfWriter(New FileStream("/myfiles/hello.pdf", FileMode.Create, FileAccess.Write)))
' Create a document object
Private doc As New Document(pdfDocument)
' Add a paragraph to the document
Private line As String = "Hello! Welcome to iTextSharp. Created with latest iText core version 8."
doc.Add(New Paragraph(line))
' Close the document
doc.Close()
' Print a message to the console
Console.WriteLine("PDF created successfully!")
$vbLabelText   $csharpLabel

在这段源代码中,我们通过传递一个 PdfWriter 类对象创建了一个新的 PDF 文档。 在其中,我们传递一个完整的 FileStream 对象,指定 PDF 文件名和 FileMode 以创建 PDF 文档,然后将此 PdfDocument 对象传递给 Document 类以创建 PDF。

最后,我们添加了一段字符串文本作为新的段落,文本为“Hello!” 欢迎使用 iTextSharp。使用最新的 iText core 版本 8 创建。",然后关闭文档以节省内存。 创建的 PDF 文档以 "hello.pdf "的形式保存在 "myfiles "PDF 文件夹中的特定位置。

使用 C# 在 Itextsharp 和 IronPDF 之间创建 PDF 的比较 图 3 - 从 iTextsharp 代码生成的输出 PDF

IronPDF 简介

IronPDF 是一个综合的 C# 库,可以帮助开发人员以多种方式高效地与 PDF 交互。 无论您是从头开始创建 PDF、将 HTML 和 CSS 转换为 PDF,还是添加数字签名和水印等高级功能,IronPDF 都能提供一套丰富的工具,满足您与 PDF 相关的所有需求。

IronPDF 的主要功能

HTML 转换为 PDF

IronPDF 擅长将 HTML 和 CSS 转换为高质量的 PDF 文档。 对于处理网络内容或基于 HTML 的动态报告的开发人员来说,这一功能尤为重要。

PDF 创建和操作

开发人员可以从头开始创建 PDF,动态添加内容,并轻松处理现有 PDF。 这种灵活性允许生成符合特定要求的定制文件。

文本、图像和表格

IronPDF 支持在 PDF 文档中加入文本、图像、表格和表单。 这使它成为在 PDF 中创建各种类型内容的多功能工具。

数字签名

安全是最重要的,IronPDF 可以在 PDF 文档中添加数字签名。 这一功能对于处理敏感信息或法律文件的应用程序至关重要。

水印和注释

用水印、注释和附加元数据增强 PDF 文件。 IronPDF 提供了在文档中添加可视化元素和注释的方法,从而提高了沟通效率和文档清晰度。

符合 PDF/A 和 PDF/UA 标准

IronPDF 支持符合 PDF/A 存档标准和 PDF/UA 可访问性标准。 这可确保您的文件符合长期存档和可访问性要求的行业标准。

跨平台支持

IronPDF 可在不同平台上无缝运行,为在不同环境中工作的开发人员提供一致的体验。

用户友好界面

该库配有用户友好的应用程序接口,可简化复杂的 PDF 操作。 这可以让开发人员专注于应用逻辑,而不是解决复杂的 PDF 功能。

使用 IronPDF 创建 PDF

第 1 步 安装 IronPDF 库

要开始使用 IronPDF,请按照以下步骤使用 NuGet 软件包管理器安装该库:

  1. 打开 Visual Studio 并创建一个新项目。

  2. 右键单击解决方案资源管理器中的项目,选择 "管理 NuGet 包"。

  3. 在 "NuGet 包管理器 "窗口中,选择 "浏览 "选项卡。

    在C#中使用Itextsharp和IronPDF创建PDF的比较 图4 - 浏览IronPDF

  4. 在搜索栏中输入 "IronPDF",然后按回车键。

  5. 从搜索结果中选择 "IronPDF",然后点击 "安装"。

  6. 查看并接受依赖关系,然后单击 "确定 "继续。

  7. 等待安装完成,即可将 IronPDF 添加到您的项目中。

第 2 步 用 IronPDF 创建 PDF 文档的代码

现在,让我们看看以下使用 IronPDF 从HTML 字符串创建 PDF的代码:

using IronPdf;
// Instantiate Renderer
var renderer = new ChromePdfRenderer();
// Create a PDF from a HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
// Export to a file or Stream
pdf.SaveAs("output.pdf");
using IronPdf;
// Instantiate Renderer
var renderer = new ChromePdfRenderer();
// Create a PDF from a HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
// Export to a file or Stream
pdf.SaveAs("output.pdf");
Imports IronPdf
' Instantiate Renderer
Private renderer = New ChromePdfRenderer()
' Create a PDF from a HTML string using C#
Private pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>")
' Export to a file or Stream
pdf.SaveAs("output.pdf")
$vbLabelText   $csharpLabel

在上述源代码中,我们创建了一个新的 ChromePdfRenderer,将 HTML 字符串内容(在这种情况下是一个标题)渲染为 PDF,并将生成的 PDF 文档保存为 "output.pdf"。IronPDF 将 HTML 转换为像素完美的 PDF 文档。

要生成具有更多控制的PDF,例如设置页面大小、添加图像文件、元信息和其他元素,请访问此文档以获取更多信息。

使用 C# 创建 PDF 的 Itextsharp 与 IronPDF 的比较 图 5 - IronPDF 代码的输出 PDF

结论

IronPDF 和 iTextSharp(现在正式更名为 iText)都是用 C# 创建 PDF 的强大库,各有所长。

IronPDF 因其友好的用户界面和丰富的文档而脱颖而出,是追求简单的开发人员的绝佳选择。 而 iTextSharp 则以其强大的功能集而闻名,尤其是在需要对 PDF 进行高级操作的环境中。

iText 和 IronPDF 都是生成和处理 PDF 的强大解决方案,但 IronPDF 在速度和效率方面往往优于 iText。 这一优势得益于 IronPDF 的优化架构,利用本地代码完成关键任务并确保高性能。

值得注意的是,IronPDF 擅长 HTML 渲染,与 iText 采用的传统方法相比,从 HTML 生成 PDF 的速度更快。 此外,IronPDF 往往更节省内存,这在资源有限的环境中尤为有利。 总的来说,IronPDF 精简的架构和对 HTML 渲染的熟练掌握使其在性能上略胜 iText 一筹。

要全面比较IronPDF和iTextSharp,请访问这个IronPDF和iTextSharp的详细比较

IronPDF提供免费试用许可证以获取更多信息。 从IronPDF下载页面下载该库。

Chipego
软件工程师
Chipego 拥有出色的倾听技巧,这帮助他理解客户问题并提供智能解决方案。他在 2023 年加入 Iron Software 团队,此前他获得了信息技术学士学位。IronPDF 和 IronOCR 是 Chipego 主要专注的两个产品,但他对所有产品的了解每天都在增长,因为他不断找到支持客户的新方法。他喜欢 Iron Software 的合作氛围,公司各地的团队成员贡献他们丰富的经验,以提供有效的创新解决方案。当 Chipego 离开办公桌时,你经常可以发现他在看书或踢足球。
< 前一页
Jsreport 与 IronPDF 的比较
下一步 >
iTextSharp 文档评审与 IronPDF 比较