在实际环境中测试
在生产中测试无水印。
随时随地为您服务。
使用编程语言操作PDF对开发者来说相当困难,尤其是在.NET平台上。 在这篇文章中,我们将讨论如何使用几种工具在C#.NET中管理PDF文件,这将帮助您节省大量的生产时间和精力。 在从PDF文件显示材料以及从其他格式转换内容到PDF时,有几个需要考虑的要素。 我们将讨论的工具是业界开发人员和财富500强公司或组织使用的顶级产品。 以下.NET 工具可立即为您的 PDF 问题提供解决方案:
PSPDFKit
IronPDF是将HTML网站转换为.NET和.NET core开发的理想解决方案。 它不仅仅是转换HTML,还提供了多种额外功能。 IronPDF允许开发人员在.NET Core和框架项目中创建、修改和提取PDF文档。 使用IronPDF包,开发人员可以轻松地从HTML页面生成或转换PDFs。
IronPDF for .NET 是一个 .NET 库,只需几行代码即可快速创建、读取和处理 PDF 文件。 您可以从现有的PDF文档存储中导入、移动和索引内容到您的内容管理和性能应用程序中。
用户现在可以从PDF制作图片以及从照片制作PDF。包括图像提取、支持各种图像扩展名和PDF打印功能。
IronPDF还可以使用128位加密对PDF文件进行加密,对PDF文件进行密码保护,并对PDF文件进行数字签名。
此功能允许您从多种来源创建PDF,包括HTML、Web表单、HTML字符串、MVC视图和URL。
此IronPDF工具允许您通过多种方式格式化PDF,包括添加水印、添加页面、删除页面、更改背景和前景等等。 IronPDF 简而言之,能做您能想象得到的所有与 PDF 相关的事情。
PDF中嵌入的文本通常可以轻松提取。 如果这不起作用,那可能是因为文本被“困”在图片中。 要扫描文档以获取视觉文本而非纯文本,请使用IronOCR库。
在创建PDF或向现有PDF添加内容时,可以包括页眉和页脚。 您可以使用打印选项属性为每个文档页面创建页眉和页脚。 这些参数在Chrome PDF渲染器对象上可用。 此示例在 .NET Core 控制台应用程序中运行。
IronPDF支持几乎所有与C#兼容的操作系统和框架,例如:
PSPDFKit Library for .NET 是一个软件开发工具包(SDK)用于编辑、填写表格、编辑和生成 PDF 文件。 它提供了一个强大的API,可迅速将PDF功能添加到任何.NET应用程序中。
PSPDFKit 是最流行的跨平台工具之一,可为您的应用程序或网站添加 PDF 兼容性。对于生产使用,PSPDFKit SDK 需要商业许可证。 PSPDFKit API 的一个主要优势在于它允许您在 PDF 生产工作流中集成各种文档操作方法,例如:
PSPDFKit 支持所有最流行的注释工具:
PSPDFKit .NET库支持读写XFDF文件。 Document 类的 ImportXfdf 和 ExportXfdf 方法可用于执行这些任务。
PSPDFKit .NET 库可以轻松地将 PDF 转换为图像。 为了保证兼容性和效率,PSPDFKit 使用了原生的 .NET 标准功能。
文档编辑器可用于将多个文档合并为一个统一的文档。
删除敏感、机密或特权信息,通过永久清除PDF文件中的个人信息,以符合GDPR和其他隐私规则。
注释和书签存储在使用即时JSON的单独JSON文件中。 这意味着PDF文件只需传输一次,任何修改都将作为覆盖层添加到原始PDF上。
在这篇文章中,我们将使用一个新的控制台应用程序来生成PDF文档。
打开 Visual Studio 软件,进入 "文件 "菜单。 选择 "新项目",然后选择控制台应用程序。
在相应文本框中输入项目名称并选择路径。 然后,单击 "创建 "按钮。 选择所需的 .NET Framework,如下图所示:
Visual Studio 项目现在将生成所选应用程序的结构。
下一节,我们将在项目中添加 IronPDF 和 PSPDFKit 库。
IronPDF 库可以通过四种不同的方式下载和安装。 它们是
Visual Studio 软件提供了 NuGet 软件包管理器选项,可直接将软件包安装到解决方案中。 下面的截图显示了如何打开 NuGet 包管理器。
打开软件包管理器图形用户界面后,在浏览部分搜索关键词 "IronPdf",如下截图所示:
我们需要在搜索结果中选择 IronPDF 选项并安装该软件包。
Install-Package IronPdf
现在,IronPDF 软件包将安装到当前项目中。
第三种方法是直接从以下网站下载 NuGet 软件包IronPDF NuGet Gallery 网页.
访问IronPDF 下载页面直接从网站下载最新软件包。下载完成后,请按照以下步骤将软件包添加到项目中。
有四种方法可以获取并安装PSPDFKit库。 具体如下
开发者可以通过 NuGet 包管理器轻松集成 PSPDFKit。 以下是如何操作的示例。
点击工具中的 NuGet 包管理器后,会出现一个带有搜索栏的新窗口。 搜索 PSPDFKit。 将出现一个列表。
在上图中,我们可以看到搜索到的相关软件包列表。 接下来,选择所需的 PSPDFKit 选项并安装软件包。
在 Visual Studio 菜单中,转到 工具 > NuGet 包管理器 > 包管理器控制台
Install-Package PSPDFKit.NET -Version 1.4.1
现在,软件包将安装到当前项目中。
第三种方法是直接从以下网站下载 NuGet 软件包PSPDFKit 的 NuGet 图库页面.
使用NuGet您可以使用配置文件在特定位置引用软件包。 这对您在网络上共享资源的机器非常有用。
nuget.config
文件。<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<add key="PSPDFKitSource" value="path\to\directoryContainingNupkg" />
</packageSources>
</configuration>
可能需要在 PDF 文件中附加一些必要的文档。在本主题中,我们将讨论如何使用 .NET 平台合并两个或多个 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")
随附的代码演示了如何使用 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
注释是添加到文本中的评论或注解,用于解释或批评文本的某个特定部分。 在本主题中,我们将讨论如何使用 .NET 在 PDF 中添加注释。
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")
对于 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
IronPDF 提供免费的开发人员许可证。 IronPDF 还提供独特的定价结构:基本捆绑包的起价为 $749,没有额外费用。 也可以重新分配 SaaS 和 OEM 产品。 所有许可证均包含 30 天退款保证、一年的软件支持和升级、开发/分期/生产有效性以及永久许可证。(一次性购买). 了解 IronPDF 许可证详细信息了解 IronPDF 的可用许可证和定价结构。
PSPDFKit 为其开发的生产力工作流程提供五种类型的许可证。 它提供免费许可,每月最多可翻译 100 份文档; 如需翻译超过上述数量的内容,您需要购买以下套餐之一:
企业包(每月超过 10,000 份文件,请联系公司获取报价)
ThisPSPDFKit 定价页面详细了解 PSPDFKit 的完整价格结构。
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 提供五种工具的捆绑服务,只需支付两种工具的价格。 提供的工具有
要了解有关捆绑工具的更多信息,请访问IronSuite 官方网页.