产品比较

IronPDF与PSPDFKit的比较

发布 2022年十一月13日
分享:

1.导言

使用编程语言操作PDF对开发者来说相当困难,尤其是在.NET平台上。 在这篇文章中,我们将讨论如何使用几种工具在C#.NET中管理PDF文件,这将帮助您节省大量的生产时间和精力。 在从PDF文件显示材料以及从其他格式转换内容到PDF时,有几个需要考虑的要素。 我们将讨论的工具是业界开发人员和财富500强公司或组织使用的顶级产品。 以下.NET 工具可立即为您的 PDF 问题提供解决方案:

PSPDFKit

  • IronPDF

2.IronPDF

IronPDF是将HTML网站转换为.NET和.NET core开发的理想解决方案。 它不仅仅是转换HTML,还提供了多种额外功能。 IronPDF允许开发人员在.NET Core和框架项目中创建、修改和提取PDF文档。 使用IronPDF包,开发人员可以轻松地从HTML页面生成或转换PDFs。

IronPDF for .NET 是一个 .NET 库,只需几行代码即可快速创建、读取和处理 PDF 文件。 您可以从现有的PDF文档存储中导入、移动和索引内容到您的内容管理和性能应用程序中。

2.1.IronPDF 功能

2.1.1. PDF 成像

用户现在可以从PDF制作图片以及从照片制作PDF。包括图像提取、支持各种图像扩展名和PDF打印功能。

2.1.2. PDF 文件输入输出

IronPDF还可以使用128位加密对PDF文件进行加密,对PDF文件进行密码保护,并对PDF文件进行数字签名。

2.1.3. PDF 转换

此功能允许您从多种来源创建PDF,包括HTML、Web表单、HTML字符串、MVC视图和URL。

2.1.4.编辑 PDF

此IronPDF工具允许您通过多种方式格式化PDF,包括添加水印、添加页面、删除页面、更改背景和前景等等。 IronPDF 简而言之,能做您能想象得到的所有与 PDF 相关的事情。

2.1.5.PDF 内容提取

PDF中嵌入的文本通常可以轻松提取。 如果这不起作用,那可能是因为文本被“困”在图片中。 要扫描文档以获取视觉文本而非纯文本,请使用IronOCR库。

2.1.6.页眉和页脚

在创建PDF或向现有PDF添加内容时,可以包括页眉和页脚。 您可以使用打印选项属性为每个文档页面创建页眉和页脚。 这些参数在Chrome PDF渲染器对象上可用。 此示例在 .NET Core 控制台应用程序中运行。

2.1.7.兼容性

IronPDF支持几乎所有与C#兼容的操作系统和框架,例如:

  • Windows, Azure
  • .NET Core 2.1、3.0、3.1、.NET 5
  • 符合 .NET 标准 2.0,实现通用兼容性
  • 天蓝色
  • AWS
  • Docker
  • 利纳克斯

3. PSPDF套件

PSPDFKit Library for .NET 是一个软件开发工具包(SDK)用于编辑、填写表格、编辑和生成 PDF 文件。 它提供了一个强大的API,可迅速将PDF功能添加到任何.NET应用程序中。

PSPDFKit 是最流行的跨平台工具之一,可为您的应用程序或网站添加 PDF 兼容性。对于生产使用,PSPDFKit SDK 需要商业许可证。 PSPDFKit API 的一个主要优势在于它允许您在 PDF 生产工作流中集成各种文档操作方法,例如:

  • 编辑PDF
  • 光学字符识别
  • 水印
  • 文档转换

3.1 PSPDFKit 功能

PSPDFKit 支持所有最流行的注释工具:

  • 文本
  • 墨水
  • 椭圆,折线,多边形,矩形,直线
  • 备注
  • 链接
  • 高亮显示,下划线,删除线,波浪线,涂黑处理

3.1.1. 在 .NET 中的 XFDF 文件

PSPDFKit .NET库支持读写XFDF文件。 Document 类的 ImportXfdf 和 ExportXfdf 方法可用于执行这些任务。

3.1.2 渲染 PDF 页面

PSPDFKit .NET 库可以轻松地将 PDF 转换为图像。 为了保证兼容性和效率,PSPDFKit 使用了原生的 .NET 标准功能。

3.1.3. 合并PDFs

文档编辑器可用于将多个文档合并为一个统一的文档。

3.1.4. PDF编辑

删除敏感、机密或特权信息,通过永久清除PDF文件中的个人信息,以符合GDPR和其他隐私规则。

3.1.5. 即时 JSON

注释和书签存储在使用即时JSON的单独JSON文件中。 这意味着PDF文件只需传输一次,任何修改都将作为覆盖层添加到原始PDF上。

4.在 Visual Studio 中创建新项目

在这篇文章中,我们将使用一个新的控制台应用程序来生成PDF文档。

打开 Visual Studio 软件,进入 "文件 "菜单。 选择 "新项目",然后选择控制台应用程序。

在相应文本框中输入项目名称并选择路径。 然后,单击 "创建 "按钮。 选择所需的 .NET Framework,如下图所示:

IronPDF 与 PSPDFKit 的比较,图 1

Visual Studio 项目现在将生成所选应用程序的结构。

IronPDF 与 PSPDFKit 的比较,图 2

下一节,我们将在项目中添加 IronPDF 和 PSPDFKit 库。

5.安装 IronPDF 库

IronPDF 库可以通过四种不同的方式下载和安装。 它们是

  • 使用 Visual Studio NuGet 软件包管理器
  • 使用 Visual Studio 命令行
  • 从 NuGet 图库直接下载
  • 从 IronPDF 官方网站直接下载

5.1 使用 Visual Studio NuGet 软件包管理器

Visual Studio 软件提供了 NuGet 软件包管理器选项,可直接将软件包安装到解决方案中。 下面的截图显示了如何打开 NuGet 包管理器。

IronPDF 与 PSPDFKit 的比较,图 3

打开软件包管理器图形用户界面后,在浏览部分搜索关键词 "IronPdf",如下截图所示:

IronPDF 与 PSPDFKit 的比较,图 4

我们需要在搜索结果中选择 IronPDF 选项并安装该软件包。

5.2 使用 Visual Studio 命令行

  • 在 Visual Studio 菜单中,转到 工具 > NuGet 包管理器 > 包管理器控制台
  • 在软件包管理器控制台选项卡中输入以下一行:
Install-Package IronPdf

现在,IronPDF 软件包将安装到当前项目中。

IronPDF 与 PSPDFKit 的比较,图 5

5.3 从 NuGet 图库直接下载

第三种方法是直接从以下网站下载 NuGet 软件包IronPDF NuGet Gallery 网页.

  • 从右侧菜单中选择下载软件包选项。
  • 双击下载的软件包; 就会自动安装。
  • 接下来,重新加载解决方案并开始在项目中使用。

5.4 直接从 IronPDF 官方网站下载

访问IronPDF 下载页面直接从网站下载最新软件包。下载完成后,请按照以下步骤将软件包添加到项目中。

  • 右键单击解决方案窗口中的项目。
  • 然后,选择 "添加参考资料 "并浏览下载参考资料的位置。
  • 然后,单击 "确定 "添加引用。

6. 安装 PSPDFKit 库

有四种方法可以获取并安装PSPDFKit库。 具体如下

  • 使用 Visual Studio NuGet 软件包管理器
  • 使用 Visual Studio 命令行
  • 从 NuGet 图库直接下载
  • 使用 VSIX 扩展

6.1 使用 Visual Studio NuGet 软件包管理器

开发者可以通过 NuGet 包管理器轻松集成 PSPDFKit。 以下是如何操作的示例。

IronPDF 与 PSPDFKit 的比较,图 6

点击工具中的 NuGet 包管理器后,会出现一个带有搜索栏的新窗口。 搜索 PSPDFKit。 将出现一个列表。

IronPDF 与 PSPDFKit 的比较,图 7

在上图中,我们可以看到搜索到的相关软件包列表。 接下来,选择所需的 PSPDFKit 选项并安装软件包。

6.2 使用 Visual Studio 命令行

  • 在 Visual Studio 菜单中,转到 工具 > NuGet 包管理器 > 包管理器控制台

    IronPDF 与 PSPDFKit 的比较,图 8

  • 在软件包管理器控制台选项卡中输入以下一行:
Install-Package PSPDFKit.NET -Version 1.4.1

现在,软件包将安装到当前项目中。

IronPDF 与 PSPDFKit 的比较,图 9

6.3 从 NuGet 图库直接下载

第三种方法是直接从以下网站下载 NuGet 软件包PSPDFKit 的 NuGet 图库页面.

  • 从右侧菜单中选择下载软件包的选项。
  • 双击下载的安装包以开始安装过程。
  • 重新加载解决方案并在您的项目中使用。

6.4 使用 VSIX 扩展

使用NuGet您可以使用配置文件在特定位置引用软件包。 这对您在网络上共享资源的机器非常有用。

  • 从以下网址下载 VSIX 扩展PSPDFKit 下载页面然后解压缩。
  • 然后,在与 .NET 应用程序相同的目录下创建一个 nuget.config 文件。
  • 文件应包含以下 XML 代码。
<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <packageSources>
        <add key="PSPDFKitSource" value="path\to\directoryContainingNupkg" />
    </packageSources>
</configuration>
XML
  • 接下来,打开 Visual Studio,在参考选项卡下配置以下软件包。

7.合并 PDF

可能需要在 PDF 文件中附加一些必要的文档。在本主题中,我们将讨论如何使用 .NET 平台合并两个或多个 PDF 文件。

7.1.使用 IronPDF 合并 PDF 文件

IronPDF 的 IronPdf.PdfDocument.Merge 类通过使用简单易懂的代码,可在 C#.NET 中轻松合并两个或多个 PDF 文档。

using IronPdf;

var html_a = @"<p> [PDF_A] </p>
    <p> [PDF_A] 1st Page </p>
    <div style = 'page-break-after: always;' ></div>
    <p> [PDF_A] 2nd Page</p>";

var Renderer = new IronPdf.ChromePdfRenderer();
using var pdfdoc_a = Renderer.RenderHtmlAsPdf(html_a);
using var pdfdoc_b = Renderer.RenderHtmlAsPdf(html_b);
using var merged = IronPdf.PdfDocument.Merge(pdfdoc_a, pdfdoc_b);

merged.SaveAs("Merged.pdf");
using IronPdf;

var html_a = @"<p> [PDF_A] </p>
    <p> [PDF_A] 1st Page </p>
    <div style = 'page-break-after: always;' ></div>
    <p> [PDF_A] 2nd Page</p>";

var Renderer = new IronPdf.ChromePdfRenderer();
using var pdfdoc_a = Renderer.RenderHtmlAsPdf(html_a);
using var pdfdoc_b = Renderer.RenderHtmlAsPdf(html_b);
using var merged = IronPdf.PdfDocument.Merge(pdfdoc_a, pdfdoc_b);

merged.SaveAs("Merged.pdf");
Imports IronPdf

Private html_a = "<p> [PDF_A] </p>
    <p> [PDF_A] 1st Page </p>
    <div style = 'page-break-after: always;' ></div>
    <p> [PDF_A] 2nd Page</p>"

Private Renderer = New IronPdf.ChromePdfRenderer()
Private pdfdoc_a = Renderer.RenderHtmlAsPdf(html_a)
Private pdfdoc_b = Renderer.RenderHtmlAsPdf(html_b)
Private merged = IronPdf.PdfDocument.Merge(pdfdoc_a, pdfdoc_b)

merged.SaveAs("Merged.pdf")
VB   C#

7.2.使用 PSPDFKit GMBH 合并 PDF

随附的代码演示了如何使用 PSPDFKit 文档编辑器合并两个或多个 PDF。

using PSPDFKit;
using PSPDFKit.Providers;

namespace PdfEditing
{
    public sealed class Program
    {
        public static void Main(string [] args)
        {
            var documentEditor = new DocumentEditor();
            documentEditor.ImportDocument(0, DocumentEditor.IndexPosition.BeforeIndex, new FileDataProvider("Assets/dog.pdf"));
            documentEditor.ImportDocument(0, DocumentEditor.IndexPosition.BeforeIndex, new FileDataProvider("Assets/cat.pdf"));

            documentEditor.SaveDocument(new FileDataProvider("dogCatPair.pdf"));
        }
    }
}
using PSPDFKit;
using PSPDFKit.Providers;

namespace PdfEditing
{
    public sealed class Program
    {
        public static void Main(string [] args)
        {
            var documentEditor = new DocumentEditor();
            documentEditor.ImportDocument(0, DocumentEditor.IndexPosition.BeforeIndex, new FileDataProvider("Assets/dog.pdf"));
            documentEditor.ImportDocument(0, DocumentEditor.IndexPosition.BeforeIndex, new FileDataProvider("Assets/cat.pdf"));

            documentEditor.SaveDocument(new FileDataProvider("dogCatPair.pdf"));
        }
    }
}
Imports PSPDFKit
Imports PSPDFKit.Providers

Namespace PdfEditing
	Public NotInheritable Class Program
		Public Shared Sub Main(ByVal args() As String)
			Dim documentEditor As New DocumentEditor()
			documentEditor.ImportDocument(0, DocumentEditor.IndexPosition.BeforeIndex, New FileDataProvider("Assets/dog.pdf"))
			documentEditor.ImportDocument(0, DocumentEditor.IndexPosition.BeforeIndex, New FileDataProvider("Assets/cat.pdf"))

			documentEditor.SaveDocument(New FileDataProvider("dogCatPair.pdf"))
		End Sub
	End Class
End Namespace
VB   C#

8.注释

注释是添加到文本中的评论或注解,用于解释或批评文本的某个特定部分。 在本主题中,我们将讨论如何使用 .NET 在 PDF 中添加注释。

8.1.使用 IronPDF 进行注释

PDF 注释允许您在 PDF 文档中添加 "便笺 "式注释。 IronPDF.PdfDocument.AddTextAnnotation "方法和 "PdfDocument.TextAnnotation "类允许以编程方式添加注释。 所提供的高级文本注释选项包括着色、大小、不透明度、图标和编辑。

// PM> Install-Package IronPdf

using IronPdf;

using PdfDocument Pdf = PdfDocument.FromFile("existing.pdf");
var Annotation = new IronPdf.Annotations.TextAnnotation()
{
    Title = "This is the major title",
    Subject = "This is a subtitle",
    Contents = "This is the long 'sticky note' comment content...",
    Icon = IronPdf.Annotations.TextAnnotation.AnnotationIcon.Help,
    Opacity = 0.9,
    Printable = false,
    Hidden = false,
    OpenByDefault = true,
    ReadOnly = false,
    Rotateable = true
};
Pdf.AddTextAnnotation(Annotation, 1, 150, 250);
Pdf.SaveAs("existing.pdf");
// PM> Install-Package IronPdf

using IronPdf;

using PdfDocument Pdf = PdfDocument.FromFile("existing.pdf");
var Annotation = new IronPdf.Annotations.TextAnnotation()
{
    Title = "This is the major title",
    Subject = "This is a subtitle",
    Contents = "This is the long 'sticky note' comment content...",
    Icon = IronPdf.Annotations.TextAnnotation.AnnotationIcon.Help,
    Opacity = 0.9,
    Printable = false,
    Hidden = false,
    OpenByDefault = true,
    ReadOnly = false,
    Rotateable = true
};
Pdf.AddTextAnnotation(Annotation, 1, 150, 250);
Pdf.SaveAs("existing.pdf");
' PM> Install-Package IronPdf

Imports IronPdf

Private PdfDocument As using
Private Annotation = New IronPdf.Annotations.TextAnnotation() With {
	.Title = "This is the major title",
	.Subject = "This is a subtitle",
	.Contents = "This is the long 'sticky note' comment content...",
	.Icon = IronPdf.Annotations.TextAnnotation.AnnotationIcon.Help,
	.Opacity = 0.9,
	.Printable = False,
	.Hidden = False,
	.OpenByDefault = True,
	.ReadOnly = False,
	.Rotateable = True
}
Pdf.AddTextAnnotation(Annotation, 1, 150, 250)
Pdf.SaveAs("existing.pdf")
VB   C#

8.2.使用 PSPDFKit 进行注释

对于 PDF 注释的描述,PSPDFKit for .NET 提供了基于 JSON 的 API。 这为您处理注释提供了很大的自由度,因为您可能会在代码或 JSON 文件中手工制作注释,并根据需要导入。

using Newtonsoft.Json.Linq;
using PSPDFKit;
using PSPDFKit.Providers;

namespace Annotations
{
    public sealed class Program
    {
        public static void Main(string [] args)
        {
            var Provider = new FileDataProvider("document.pdf");
            var documentpdf = new Document(Provider);
            var aProvider = document.GetAnnotationProvider();
            var textAnJson = new JObject
            {
                { "text", "Hello from PSPDFKit" },
                { "bbox", new JArray(10, 10, 400, 400) },
                { "creatorName", "Will" },
                { "type", "pspdfkit/text" },
                { "updatedAt", "2021-01-01T00:00:00Z" },
                { "v", 1 }
            };

            annotationProvider.AddAnnotationJson(textAnJson);

            document.Save(new DocumentSaveOptions())
        }
    }
}
using Newtonsoft.Json.Linq;
using PSPDFKit;
using PSPDFKit.Providers;

namespace Annotations
{
    public sealed class Program
    {
        public static void Main(string [] args)
        {
            var Provider = new FileDataProvider("document.pdf");
            var documentpdf = new Document(Provider);
            var aProvider = document.GetAnnotationProvider();
            var textAnJson = new JObject
            {
                { "text", "Hello from PSPDFKit" },
                { "bbox", new JArray(10, 10, 400, 400) },
                { "creatorName", "Will" },
                { "type", "pspdfkit/text" },
                { "updatedAt", "2021-01-01T00:00:00Z" },
                { "v", 1 }
            };

            annotationProvider.AddAnnotationJson(textAnJson);

            document.Save(new DocumentSaveOptions())
        }
    }
}
Imports Newtonsoft.Json.Linq
Imports PSPDFKit
Imports PSPDFKit.Providers

Namespace Annotations
	Public NotInheritable Class Program
		Public Shared Sub Main(ByVal args() As String)
			Dim Provider = New FileDataProvider("document.pdf")
			Dim documentpdf = New Document(Provider)
			Dim aProvider = document.GetAnnotationProvider()
			Dim textAnJson = New JObject From {
				{ "text", "Hello from PSPDFKit" },
				{ "bbox", New JArray(10, 10, 400, 400) },
				{ "creatorName", "Will" },
				{ "type", "pspdfkit/text" },
				{ "updatedAt", "2021-01-01T00:00:00Z" },
				{ "v", 1 }
			}

			annotationProvider.AddAnnotationJson(textAnJson)

			document.Save(New DocumentSaveOptions())
		End Sub
	End Class
End Namespace
VB   C#

9.许可

IronPDF 提供免费的开发人员许可证。 IronPDF 还提供独特的定价结构:基本捆绑包的起价为 $749,没有额外费用。 也可以重新分配 SaaS 和 OEM 产品。 所有许可证均包含 30 天退款保证、一年的软件支持和升级、开发/分期/生产有效性以及永久许可证。(一次性购买). 了解 IronPDF 许可证详细信息了解 IronPDF 的可用许可证和定价结构。

PSPDFKit 为其开发的生产力工作流程提供五种类型的许可证。 它提供免费许可,每月最多可翻译 100 份文档; 如需翻译超过上述数量的内容,您需要购买以下套餐之一:

  • 入门包(每月最多 1000 份文件,月费 75 美元或年费 804 美元)
  • 成长包(每月最多 5000 份文件,月费 275 美元或年费 2964 美元)
  • 专业包(每月最多 10000 份文件,月费 445 美元或年费 4788 美元)
  • 企业包(每月超过 10,000 份文件,请联系公司获取报价)

    ThisPSPDFKit 定价页面详细了解 PSPDFKit 的完整价格结构。

10.结论

IronPDF 不会从远程服务器将 HTML 转换为 PDF。 在翻译过程中,译者不能直接使用浏览器,而是要在幕后启动一个真正符合标准的浏览器实例(无需安装任何其他软件). HTML 将以矢量格式呈现,适合按照最高标准进行商业印刷。 因此,您将获得一份清晰、高质量的 PDF。 IronPDF 网站提供许可证和价格信息。

PSPDFKit 是一个功能齐全的 PDF SDK,支持所有平台,包括 PC、MAC、Android 应用程序和 IOS。 它可协助转换、注释、签署、填充、转换和编辑 PDF 文件。 PSPDFKit 是将 PDF 支持集成到应用程序或网站中的最广泛使用的跨平台解决方案。

IronPdf 和 PSPDFKit 都需要商业许可证才能用于生产。 IronPDF 提供终身许可,而 PSPDFKit 则提供包月和包年服务。 IronPDF 许可证以开发人员为中心。 其定价模式根据使用产品的开发人员数量及其工作地点而定。 PSPDFKit 许可证以文档为中心,以每月处理的 PDF 文档数量为基础。 在成本方面,使用 PSPDFKit 会产生经常性费用。 另一方面,IronPdf 提供终身许可,没有经常性费用。

IronPDF 和 PSPDFKit 都是业界领先的框架,基于类似的技术,提供相同的基本 PDF 处理功能。 使用 IronPdf 编写的代码往往更加简洁、紧凑。 使用 PSPDFKit 代码编写的代码同样可以理解,但结构要复杂一些。

Iron Software 提供五种工具的捆绑服务,只需支付两种工具的价格。 提供的工具有

< 前一页
IronPDF 与 PDFNet 之间的比较
下一步 >
QuestPDF与IronPDF的比较

准备开始了吗? 版本: 2024.12 刚刚发布

免费NuGet下载 总下载量: 11,781,565 查看许可证 >