跳至页脚内容
产品比较

IronPDF与PSPDFKit之间的比较

1.简介

使用编程语言操作PDF对于开发人员来说可能相当具有挑战性,尤其是在.NET平台上。 在本文中,我们将讨论如何使用几种工具在C#.NET中管理PDF,帮助您节省大量的生产力时间和精力。 在展示PDF文件中的内容时需要考虑几个因素,尤其是在从其他格式转移内容到PDF时更是如此。 我们将讨论的工具是被开发人员和财富500强公司或组织使用的顶级产品。 .NET工具可以瞬间为您的PDF问题提供解决方案,它们是:

  • PSPDFKit
  • IronPDF

2. IronPDF

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

IronPDF是一个.NET库,使您能够只用少量代码就可以快速创建、读取和操作PDF文件。 您可以从现有的PDF文档存储中导入、移动和索引内容到您的内容管理和性能应用程序中。

2.1. IronPDF功能

2.1.1. PDF图像

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

2.1.2. PDF文件IO

IronPDF还可以使用128位加密技术加密PDF,为PDF设置密码保护,并对PDF进行数字签名。

2.1.3. PDF转换

这一功能允许您从各种来源创建PDF,包括HTML、Web Forms、HTML字符串、MVC视图和URL。

2.1.4. 编辑 PDF

这个IronPDF工具允许您以多种方式格式化PDF,包括添加水印、添加页面、删除页面、更改背景和前景等。 简而言之,IronPDF可以做任何您能想到的关于PDF的事情。

2.1.5. PDF 内容提取

嵌入的PDF文本通常可以轻松提取。 然而,如果这不行,这很可能因为文本被“困”在图片中。 要扫描识别视觉文本而不仅仅是普通文本,可以使用IronOCR库。

2.1.6. 页眉和页脚

在创建PDF或添加到现有PDF时,可以包含页眉和页脚。 您可以使用打印选项属性为每个文档页面创建页眉和页脚。 这些参数可在Chrome PDF Renderer对象上获得。 本例在.NET Core控制台应用程序中运行。

2.1.7. 兼容性

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

  • Windows, Azure
  • .NET Core 2.1, 3.0, 3.1, .NET 5
  • 符合 .NET 标准 2.0,实现通用兼容性
  • Azure
  • AWS
  • Docker
  • Linux

3. PSPDFKit

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

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

  • 编辑PDF
  • OCR
  • 打水印
  • 文档转换

3.1. PSPDFKit功能

PSPDFKit支持所有最受欢迎的注释工具:

  • 文本
  • 墨水
  • 椭圆、折线、多边形、矩形、线条
  • 备注
  • 链接
  • 高亮、下划线、删除线、波浪线、编辑痕迹

3.1.1. 在.NET中的XFDF文件

PSPDFKit .NET库支持XFDF文件的读取和写入。 Document类的ImportXfdfExportXfdf方法可以执行这些任务。

3.1.2. 渲染PDF页面

PSPDFKit .NET库使转换PDF为图像变得容易。 为了确保兼容性和效率,PSPDFKit使用了标准的.NET特性。

3.1.3. 合并PDF

Document Editor可以用于将多个文档合并为一个统一的文档。

3.1.4. PDF编辑痕迹

按照GDPR和其他隐私法规的规定,通过永久消除个人信息,从PDF文档中去除敏感、机密或特权信息。

3.1.5. Instant JSON

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

4. 在 Visual Studio 中创建一个新项目

在本文中,我们将使用新的控制台应用程序生成PDF文档。

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

在适当的文本框中输入项目名称并选择路径。 然后,点击创建按钮。 根据下面的截图选择所需的 .NET 框架:

class="content-img-align-center">
class="center-image-wrapper">IronPDF与PSPDFKit比较,图1

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

class="content-img-align-center">
class="center-image-wrapper">IronPDF与PSPDFKit比较,图2

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

5. 安装 IronPDF 库

IronPDF库有四种不同的下载和安装方式。 这些是:

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

5.1 使用 Visual Studio NuGet 包管理器

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

class="content-img-align-center">
class="center-image-wrapper">IronPDF与PSPDFKit比较,图3

一旦Package Manager GUI打开,在浏览部分搜索关键字“IronPDF”,如下面的截图中所示:

class="content-img-align-center">
class="center-image-wrapper">IronPDF与PSPDFKit比较,图4

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

5.2 使用 Visual Studio 命令行

  • 在Visual Studio菜单中,转到工具 > NuGet包管理器 > 包管理器控制台
  • 在包管理器控制台标签中输入以下行:
Install-Package IronPdf

IronPDF包将会现在安装在当前项目中。

class="content-img-align-center">
class="center-image-wrapper">IronPDF与PSPDFKit比较,图5

5.3 从NuGet Gallery直接下载

第三种方式是直接从IronPDF NuGet画廊网页下载NuGet包

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

5.4 从IronPDF官方网站直接下载

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

  • 从解决方案窗口右键点击项目。
  • 然后,选择“添加引用”并浏览已下载引用的位置。
  • 然后,单击确定以添加参考。

6. 安装PSPDFKit库

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

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

6.1 使用Visual Studio NuGet包管理器

开发人员可以轻松地使用NuGet包管理器集成PSPDFKit。 如何做到这一点的一个示例如下所示。

class="content-img-align-center">
class="center-image-wrapper">IronPDF与PSPDFKit比较,图6

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

class="content-img-align-center">
class="center-image-wrapper">IronPDF与PSPDFKit比较,图7

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

6.2 使用Visual Studio命令行

  • 在Visual Studio菜单中,转到工具 > NuGet包管理器 > 包管理器控制台
class="content-img-align-center">
class="center-image-wrapper">IronPDF与PSPDFKit比较,图8

  • 在包管理器控制台标签中输入以下行:
Install-Package PSPDFKit.NET -Version 1.4.1

该包将会现在安装在当前项目中。

class="content-img-align-center">
class="center-image-wrapper">IronPDF与PSPDFKit比较,图9

6.3 从NuGet Gallery直接下载

第三种方式是直接从PSPDFKit的NuGet Gallery页面下载NuGet包

  • 选择从右侧菜单下载包的选项。
  • 双击已下载的包以启动安装过程。
  • 重新加载解决方案并在项目中使用它。

6.4 使用VSIX扩展

而不是使用NuGet本地下载包,您可以使用配置文件在特定位置引用该包。 这在您的机器共享网络资源时很有用。

  • PSPDFKit下载页面下载VSIX扩展并提取zip文件。
  • 然后,在与.NET应用程序相同的目录中创建一个nuget.config文件。
  • 文件应包含这个XML代码。
<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <packageSources>
        <add key="PSPDFKitSource" value="path\to\directoryContainingNupkg" />
    </packageSources>
</configuration>
<?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;

// Example HTML content for PDF_A
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>";

// Example HTML content for PDF_B
var html_b = @"<p> [PDF_B] </p>
    <p> [PDF_B] 1st Page </p>
    <div style='page-break-after: always;'></div>
    <p> [PDF_B] 2nd Page</p>";

// Initialize renderer
var Renderer = new IronPdf.ChromePdfRenderer();

// Render HTML to PDFs
using var pdfdoc_a = Renderer.RenderHtmlAsPdf(html_a);
using var pdfdoc_b = Renderer.RenderHtmlAsPdf(html_b);

// Merge PDFs
using var merged = IronPdf.PdfDocument.Merge(pdfdoc_a, pdfdoc_b);

// Save merged PDF to file
merged.SaveAs("Merged.pdf");
using IronPdf;

// Example HTML content for PDF_A
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>";

// Example HTML content for PDF_B
var html_b = @"<p> [PDF_B] </p>
    <p> [PDF_B] 1st Page </p>
    <div style='page-break-after: always;'></div>
    <p> [PDF_B] 2nd Page</p>";

// Initialize renderer
var Renderer = new IronPdf.ChromePdfRenderer();

// Render HTML to PDFs
using var pdfdoc_a = Renderer.RenderHtmlAsPdf(html_a);
using var pdfdoc_b = Renderer.RenderHtmlAsPdf(html_b);

// Merge PDFs
using var merged = IronPdf.PdfDocument.Merge(pdfdoc_a, pdfdoc_b);

// Save merged PDF to file
merged.SaveAs("Merged.pdf");
Imports IronPdf

' Example HTML content for PDF_A
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>"

' Example HTML content for PDF_B
Private html_b = "<p> [PDF_B] </p>
    <p> [PDF_B] 1st Page </p>
    <div style='page-break-after: always;'></div>
    <p> [PDF_B] 2nd Page</p>"

' Initialize renderer
Private Renderer = New IronPdf.ChromePdfRenderer()

' Render HTML to PDFs
Private pdfdoc_a = Renderer.RenderHtmlAsPdf(html_a)
Private pdfdoc_b = Renderer.RenderHtmlAsPdf(html_b)

' Merge PDFs
Private merged = IronPdf.PdfDocument.Merge(pdfdoc_a, pdfdoc_b)

' Save merged PDF to file
merged.SaveAs("Merged.pdf")
$vbLabelText   $csharpLabel

7.2. 使用PSPDFKit GMBH合并PDF

这些附带代码演示了如何使用PSPDFKit Document Editor合并两个或更多PDF。

using PSPDFKit;
using PSPDFKit.Providers;

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

            // Save the merged document to a new file
            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();
            // Import the first document to merge
            documentEditor.ImportDocument(0, DocumentEditor.IndexPosition.BeforeIndex, new FileDataProvider("Assets/dog.pdf"));
            // Import the second document to merge
            documentEditor.ImportDocument(0, DocumentEditor.IndexPosition.BeforeIndex, new FileDataProvider("Assets/cat.pdf"));

            // Save the merged document to a new file
            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()
			' Import the first document to merge
			documentEditor.ImportDocument(0, DocumentEditor.IndexPosition.BeforeIndex, New FileDataProvider("Assets/dog.pdf"))
			' Import the second document to merge
			documentEditor.ImportDocument(0, DocumentEditor.IndexPosition.BeforeIndex, New FileDataProvider("Assets/cat.pdf"))

			' Save the merged document to a new file
			documentEditor.SaveDocument(New FileDataProvider("dogCatPair.pdf"))
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

8. 注释

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

8.1. 使用IronPDF的注释

PDF注释允许您在PDF文档中添加“便利贴”风格的评论。 IronPdf.PdfDocument.AddTextAnnotation方法和PdfDocument.TextAnnotation类允许以编程方式添加注释。 着色、大小、不透明度、图标和编辑是提供的高级文本注释选项之一。

// Install-Package IronPdf

using IronPdf;

var 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
};

// Add annotation to a specific page at given coordinates
pdf.AddTextAnnotation(annotation, pageIndex: 1, xPosition: 150, yPosition: 250);

// Save the updated PDF
pdf.SaveAs("updated_existing.pdf");
// Install-Package IronPdf

using IronPdf;

var 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
};

// Add annotation to a specific page at given coordinates
pdf.AddTextAnnotation(annotation, pageIndex: 1, xPosition: 150, yPosition: 250);

// Save the updated PDF
pdf.SaveAs("updated_existing.pdf");
' Install-Package IronPdf

Imports IronPdf

Private pdf = PdfDocument.FromFile("existing.pdf")
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
}

' Add annotation to a specific page at given coordinates
pdf.AddTextAnnotation(annotation, pageIndex:= 1, xPosition:= 150, yPosition:= 250)

' Save the updated PDF
pdf.SaveAs("updated_existing.pdf")
$vbLabelText   $csharpLabel

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 document = new Document(provider);
            var annotationProvider = document.GetAnnotationProvider();

            // JSON structure for a text annotation
            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 }
            };

            // Add the annotation to the document
            annotationProvider.AddAnnotationJson(textAnJson);

            // Save the updated document
            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 document = new Document(provider);
            var annotationProvider = document.GetAnnotationProvider();

            // JSON structure for a text annotation
            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 }
            };

            // Add the annotation to the document
            annotationProvider.AddAnnotationJson(textAnJson);

            // Save the updated document
            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 document As New Document(provider)
			Dim annotationProvider = document.GetAnnotationProvider()

			' JSON structure for a text annotation
			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 }
			}

			' Add the annotation to the document
			annotationProvider.AddAnnotationJson(textAnJson)

			' Save the updated document
			document.Save(New DocumentSaveOptions())
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

支持 Bootstrap 和现代 CSS 框架

在使用Bootstrap和现代CSS框架的Web应用程序中生成PDF时,完整的框架支持对于保持设计一致性至关重要,无需创建并行的“PDF安全”布局。

IronPDF:完整的 Bootstrap 框架支持

IronPDF的基于Chromium的渲染引擎提供全面支持:

  • Bootstrap 5:完整的Flexbox布局,CSS Grid,实用程序类和所有组件
  • Bootstrap 4:完整的卡片系统、导航、flex 实用程序、响应式设计
  • Tailwind CSS:准确呈现所有实用工具类
  • Foundation:完整的网格系统和组件库
  • 现代CSS3:Flexbox,CSS Grid,自定义属性,动画

Real-world validation: IronPDF renders the Bootstrap homepage and all official examples with pixel-perfect accuracy.

PSPDFKit:无HTML到PDF转换

PSPDFKit专注于PDF查看、注释和操作,而不是HTML到PDF的转换:

  • 无HTML渲染引擎:PSPDFKit不将HTML转换为PDF
  • 以观看为主:设计用于PDF的显示和互动,而非生成
  • 需要外部转换:HTML到PDF必须由单独工具处理
  • JavaScript SDK:客户端PDF查看,不是服务器端生成库

开发影响:需要HTML-to-PDF转换的团队必须将额外工具与PSPDFKit集成,从而增加复杂性和维护要求。

全面的Bootstrap框架指导和现代CSS渲染功能,请参阅Bootstrap & Flexbox CSS指南

9. 许可

IronPDF提供免费的开发者许可。 IronPDF还提供了一种独特的定价结构:基本包从特定价格开始,没有额外费用。 也可以重新分发SaaS和OEM产品。 所有许可证(一次性购买)都包括30天退款保证、一年的软件支持和升级、开发/测试/生产有效性和永久许可证。 了解IronPDF的许可详情,探索IronPDF的可用许可证和定价结构。

PSPDFKit为其开发的生产率工作流提供了五种类型的许可证。 它为每月最多100个文档提供免费许可证; 如果超过此数量,您需要购买以下包中的一种:

  • 初学者包(每月最多1000个文档,75美元/月或804美元/年)
  • 成长包(每月最多5000个文档,275美元/月或2964美元/年)
  • 专业包(每月最多10000个文档,445美元/月或4788美元/年)
  • 企业包(每月超过10000个文档,联系公司获取报价)

这个PSPDFKit定价页面详细介绍了PSPDFKit的完整价格结构。

10. 结论

IronPDF不从远程服务器将HTML转换为PDF。 相反,它在幕后启动一个真正标准兼容的浏览器实例(无需安装任何额外软件)。 HTML以适合商业印刷的矢量格式呈现,达到最高标准。 结果,您获得了清晰的高质量PDF。 IronPDF网站提供许可证和价格信息。

PSPDFKit是一个支持所有平台的全面PDF SDK,包括PC,Mac,安卓应用和iOS。 它提供过渡、注释、签名、填写、转换和编辑PDF文件的协助。 PSPDFKit是集成PDF支持到您的应用程序或网站中最广泛使用的跨平台解决方案。

IronPDF和PSPDFKit都需要商业许可证用于生产使用。 IronPDF提供终身许可证,而PSPDFKit则提供每月和每年套餐。 IronPDF的许可证以开发者为中心。 其定价模型是基于使用产品的开发者人数和他们的工作地点。 PSPDFKit的许可证是以文档为中心的,基于每月处理的PDF文档数量结构。 在成本方面,使用PSPDFKit会产生经常性费用。 另一方面,IronPDF提供终身特许的许可证,无经常性费用。

IronPDF和PSPDFKit都是基于相似技术的行业领先框架,提供相同的基本PDF处理功能。 使用IronPDF编写的代码往往更简洁紧凑。 使用PSPDFKit编写的代码同样易于理解,但结构稍复杂。

Iron Software提供五个工具捆绑包,仅售两个价格。 提供的工具有:

要了解更多关于捆绑工具的信息,请访问Iron Suite的官方网站

[{i:(PSPDFKit是其各自所有者的注册商标。 本网站与PSPDFKit无关、未获批准或赞助。 所有产品名称、徽标和品牌均为其各自所有者的财产。 比较仅供参考,反映的是撰写时的公开信息。]

常见问题解答

如何在C#中将HTML转换为PDF?

你可以使用IronPDF的RenderHtmlAsPdf方法将HTML字符串转换为PDF。你还可以使用RenderHtmlFileAsPdf将HTML文件转换为PDF。

IronPDF 的主要功能是什么?

IronPDF 提供诸如 PDF 图像、加密、转换、编辑,以及包括 Windows、Azure 和 Linux 在内的多平台兼容性等功能。它还通过 Visual Studio NuGet 包管理器提供简便的集成。

PSPDFKit 如何支持 PDF 功能?

PSPDFKit 支持广泛的 PDF 功能,包括编辑、OCR、水印和文档转换。它还提供丰富的注释功能和有效的文档合并与编辑。

我如何在.NET项目中安装IronPDF?

IronPDF 可以使用 Visual Studio NuGet 包管理器、Visual Studio 命令行安装,或直接从 NuGet Gallery 或 IronPDF 的官方网站下载。

IronPDF的许可选项是什么?

IronPDF 提供终身许可证,无需支付经常性费用。它包含免费的开发者许可证,以及独特的定价结构,提供 30 天退款保证、软件支持和一年更新服务。

IronPDF 和 PSPDFKit 的定价有什么不同?

IronPDF 提供终身许可证,无需支付经常性费用,而 PSPDFKit 提供按月和按年计算的套餐,有经常性开支。IronPDF 专注于基于用户数量和位置的以开发者为中心的许可,而 PSPDFKit 的许可以文件为中心,基于每月的文件处理量。

Iron Software 捆绑包中提供哪些附加工具?

Iron Software 提供五个工具的捆绑包,包括 IronBarcode、IronXL、IronOCR、IronPDF 和 IronWebscraper。这些工具为 .NET 应用程序提供全面的开发解决方案。

Curtis Chau
技术作家

Curtis Chau 拥有卡尔顿大学的计算机科学学士学位,专注于前端开发,精通 Node.js、TypeScript、JavaScript 和 React。他热衷于打造直观且美观的用户界面,喜欢使用现代框架并创建结构良好、视觉吸引力强的手册。

除了开发之外,Curtis 对物联网 (IoT) 有浓厚的兴趣,探索将硬件和软件集成的新方法。在空闲时间,他喜欢玩游戏和构建 Discord 机器人,将他对技术的热爱与创造力相结合。