产品比较

IronPDF 和 SautinSoft PDF Focus 的比较

发布 2022年九月26日
分享:

1.导言

PDF 是便携式文档格式的缩写。 最简单的概括方法是想象一个文件夹,其中包含从图形到文本等一系列文件。 这些元素构成了现代 PDF,也是创建 PDF 的基本构件。 这种文件格式是在 20 世纪 90 年代 "发现/发明 "的,用于在计算机设置不同的用户之间交换信息。

在本文中,我们将比较两种流行的 .NET 组件 PDF 库。 这两个图书馆是

  • IronPDF
  • SautinSoft PDF Focus .NET

    IronPDF 和 SautinSoft PDF Focus .NET 都专注于创建可在 Microsoft .NET 应用程序(包括 ASP.NET 网络应用程序和传统 Windows 应用程序)中阅读或编辑的 PDF 文件。 现在,我们可以对这两个库进行比较,以决定在应用程序中使用哪个库最好。 首先,我们将比较这两个库的功能,然后介绍它们在转换和处理 PDF 文件时的性能水平。

    这两个库都由 Microsoft .NET Framework 支持。

1.1 SautinSoft PDF Focus .NET - 功能

SautinSoft PDF Focus .NET 旨在帮助您开发需要将文件转换为 PDF 文档的应用程序。 如果您希望在 WinForms 或 WPF/XAML 应用程序中提供将 PDF 转换为 Word 的方法,您只需添加对 "SautinSoft.PdfFocus.dll "的引用并编写 3-4 行 C# 代码即可。

以下是 SautinSoft PDF Focus .NET 的功能:

  • 使用 .NET Framework 转换 PDF 文档。
  • 能够分析和处理使用 Adobe 和其他第三方 PDF 创建产品生成的 PDF 文档
  • 包括内置 PDF 解析器。
  • 生成 HTML5 格式的文档。

    • HTML 固定格式最适合渲染,因为它可以完全复制 PDF 的布局和页面结构。 这些文档的标记非常复杂,有许多标记的样式使用了(x,y)坐标。
  • 当生成的 PDF 需要额外的实践处理(即编辑和合并)时,HTML Flowing 是最佳选择。
  • 生成的 PDF 文档的标记结构非常简单易懂。
  • 能够使用 base64 算法生成带有图像的 HTML 文档。 这样,您就可以完全在内存中将 PDF 转换为 HTML,而无需硬盘驱动器。
  • 提供转换 PDF 的 API。

1.2 IronPDF 功能

Iron Software 的 IronPDF 是专为 .NET 开发人员设计的强大工具。 它提供了一种简单、智能的方法,可将任何形式的 HTML 网页转换为 PDF 格式,而不会出现只用一些代码字符串就能生成任何形式 PDF 文档的问题。

此外,IronPDF 还能以编程方式在 PDF 文档中包含多种元素,包括页眉、页脚、水印和书签。

以下是 IronPDF 的功能:

  • 轻松将图像转换为 PDF,反之亦然
  • 从现有 PDF 文件中提取图像和文本
  • 无需使用 Adobe 软件即可通过编程将 PDF 发送到打印机
  • 从文件、二进制数据和内存中保存 PDF
  • 支持流和 128 位加密
  • 支持 PDF 数字签名
  • 轻松添加、编辑和删除 PDF 大纲和书签
  • 以编程方式在任何 PDF 页面上添加便笺
  • 旋转页面
  • 添加和删除页面
  • 添加水印并改变其不透明度
  • 将 HTML 内容合并到现有的 PDF 文档中
  • 以合理的方式创建和自定义页眉和页脚

2.安装

2.1 直接下载 (IronPDF)

IronPDF.dll 可直接从以下网站下载IronPDF NuGet 软件包在.NET项目中用作参考。 可使用 IronPdf 命名空间访问 IronPDF 类。

2.2 直接下载 (SautinSoft PDF Focus .NET)

SautinSoft.PdfFocus 软件包可直接从官方网站下载,并在 .NET 项目中用作参考。 SautinSoft.PdfFocus 对象可用于转换文档。

2.3 Visual Studio 安装步骤

2.3.1 SautinSoft 安装步骤

  • 启动 Visual Studio
  • 创建新项目(在这种情况下)
  • 使用管理 NuGet 软件包安装 SautinSoft.PdfFocus,如下所示:
    Sautinsoft Pdf Focus Alternatives 1 related to 2.3.1 SautinSoft 安装步骤
Sautinsoft Pdf Focus Alternatives 2 related to 2.3.1 SautinSoft 安装步骤
  • 单击 "安装 "安装最新版本; 一旦完成,SautinSoft.PdfFocus.dll 将自动添加到您的项目中,如下所示:
    Sautinsoft Pdf Focus Alternatives 3 related to 2.3.1 SautinSoft 安装步骤

2.3.2 IronPDF 安装步骤

按照上述相同步骤,但搜索 IronPDF 而不是 SautinSoft.PdfFocus。

Sautinsoft Pdf Focus Alternatives 4 related to 2.3.2 IronPDF 安装步骤

添加 IronPDF 库作为项目参考,如下图所示:

Sautinsoft Pdf Focus Alternatives 5 related to 2.3.2 IronPDF 安装步骤

3.定价

3.1 IronPDF

  • 开发人员可以无限制地使用该库进行开发。 就一般许可而言,费率非常经济实惠。
  • 一年无限期免费支持
  • 也可提供免费试用版,用于许可目的
    Sautinsoft Pdf Focus Alternatives 6 related to 3.1 IronPDF
  • 所有许可证均提供 30 天退款保证。
  • 适用于所有环境(开发、暂存、生产等)
  • 一年的无条件支持
  • 一次性购买

3.2 SautinSoft PDF Focus .NET

该库以合理的价格为开发人员提供最高质量的转换。 主要关注点是 PDF Focus .NET 的价格低于所有同类竞争产品。 例如,PDF Focus .NET - HTML 版的一个许可证价值为 $749 美元(美元)目前,".NET"、"Java"、"Python "或 "Node.js "和 "Total Edition "版本的起价为 778 美元。

  • 仅限一次性购买; 提供终身许可
  • 一年无限期支持
  • "全面" - 将 PDF 转换为所有支持的格式。 起价 778 美元
  • "Office" - 将 PDF 转换为 Word、Excel 和文本(文本). 起价 599 美元
  • "毕加索" - 将 PDF 转换为图像。 起价 599 美元
  • "HTML" - 将 PDF 转换为 HTML/XML。 从 $749 开始

4.IronPDF 支持和设置

4.1 支持 HTML 转 PDF

  • 完整、高保真的 HTML4 和 HTML5 渲染
  • CSS3
  • JavaScript
  • 支持 Angular 和 React
  • 图片资产
  • SVG 资产
  • 图标字体(Fontello、Bootstrap、Font Awesome、条形码字体)
  • 响应式布局
  • 外部样式表和资产(HTTP、HTTPS 或文件系统)
  • 静态和多线程渲染
  • 使用自定义 CSS 加载 URL
  • 使用凭证进行网络登录
  • 用户代理
  • 代理
  • 饼干
  • HTTP 标头
  • 表单变量(允许在 HTML 登录表单后登录)

4.2 HTML 到 PDF 的设置

  • 设置自定义的 "基本 URL "或文件路径,以便从文件系统或网络上轻松加载资产文件
  • 虚拟视口(宽度和高度)允许使用响应式布局
  • 屏幕或打印 CSS 媒体类型
  • .NET程序集,提供以最少代码执行流程的功能
  • 将 HTML 表单转换为 PDF 表单
  • 只读或可编辑
  • 以编程方式加载自定义样式表
  • 以 DPI 为单位设置输出 PDF 的分辨率
  • 设置 JPEG 图像质量
  • 启用 JavaScript 支持,包括可选的呈现延迟
  • 自定义页码
  • 自动缩放 HTML 内容以适应纸张尺寸
  • 保持文本渲染质量
  • 全彩和灰度 PDF
  • 接受任何主要文件编码的 HTML; 默认为 UTF-8
  • 设置 PDF 纸张页边距
  • 以毫米或英寸为单位
  • 支持零边距 PDF
  • 使用任何国际标准纸张尺寸创建 PDF
  • 支持以毫米或英寸为单位的自定义尺寸
  • 纸张方向为横向或纵向
  • 启用或禁用在 PDF 中显示 HTML 背景
  • 自定义缩放
  • GPU 加速:Linux 上的 WebGL

5.SautinSoft PDF Focus 支持

5.1 将 PDF 转换为文本

如果您需要能从 PDF 文档中提取文本数据的 .NET 库,那么您找对地方了。

PDF Focus .NET 可帮助您从任何 PDF 文档中提取文本。 文本可以从整个文档或单个页面中提取。 该库可提取高质量文本,字与字之间不留不必要的空格,还支持 Unicode 字符。 此外,文本的布局要与 RTF 格式相同,换行和分栏要正确。 它还提供了转换 PDF 文档的 API。

5.2 将 PDF 转换为 DOCX

SautinSoft PDF Focus 拥有自己的 PDF 阅读器和 DOCX 渲染器。 您的 .NET 应用程序将能够将任何 PDF 文档即时转换为 DOCX,而无需依赖 Microsoft Office 或 Adobe Acrobat。 几乎支持这两个应用程序的所有功能。 翻译后的 DOCX 文档将包含段落、列、表格、超链接、图像、分页符等。

另一个值得关注的问题是,PDF Focus .NET 具有人工智能功能,可以理解和重新创建带行和单元格的真实表格。(PDF 文档没有真正的表格......如果你在 PDF 文档中看到一个表格,它实际上只是一组线条,给人的感觉就像一个真正的表格。).

6.兼容性(技术信息)

6.1 IronPDF 兼容性

  • .NET Framework 4.0、4.5 和 4.6.1
  • .NET Core 2.1、3.0、3.1、.NET 5 和 .NET 6
  • 与 macOS、Linux 和 Windows 完全兼容
  • 符合 .NET 标准 2.0,实现通用兼容性
  • 包括对云主机的支持:Windows Azure、亚马逊网络服务(AWS)等等
  • Docker

6.2 SautinSoft PDF Focus 兼容性

  • 要求使用 .NET Framework 4.0 或更高版本。 该产品兼容所有 .NET 语言。
  • 可使用 .NET Framework 和 .NET Core 2.0。 请注意,PDF Focus .NET 完全是用托管 C# 编写的,因此是一个绝对独立的库。
  • 支持多平台组件,与云平台和服务完全兼容,如

    • AWS

    • 多克

    • SharePoint

    • 谷歌云平台

7.源代码示例

7.1 IronPDF

HTML 转 PDF:

// PM> Install-Package IronPdf

using IronPdf;

var Renderer = new IronPdf.ChromePdfRenderer();
Renderer.RenderHtmlAsPdf("<h1>Test HTML with images</h1>").SaveAs("test_image.pdf");

/****** Advanced ******/

// Load external html assets: images, css and javascript.
// An optional BasePath 'C:\site\assets\' is set as the file location to load assets from 
var PDF = Renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
PDF.SaveAs("html-with-assets.pdf")
// PM> Install-Package IronPdf

using IronPdf;

var Renderer = new IronPdf.ChromePdfRenderer();
Renderer.RenderHtmlAsPdf("<h1>Test HTML with images</h1>").SaveAs("test_image.pdf");

/****** Advanced ******/

// Load external html assets: images, css and javascript.
// An optional BasePath 'C:\site\assets\' is set as the file location to load assets from 
var PDF = Renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
PDF.SaveAs("html-with-assets.pdf")
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

URL 转 PDF:

// PM> Install-Package IronPdf

using IronPdf;

IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
var Pdf = Renderer.RenderUrlAsPdf("https://www.google.com/");

Pdf.SaveAs("url.pdf");  
// see also Pdf.Stream
// PM> Install-Package IronPdf

using IronPdf;

IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
var Pdf = Renderer.RenderUrlAsPdf("https://www.google.com/");

Pdf.SaveAs("url.pdf");  
// see also Pdf.Stream
' PM> Install-Package IronPdf

Imports IronPdf

Private Renderer As New IronPdf.ChromePdfRenderer()
Private Pdf = Renderer.RenderUrlAsPdf("https://www.google.com/")

Pdf.SaveAs("url.pdf")
' see also Pdf.Stream
VB   C#

图像到 PDF:

// PM> Install-Package IronPdf
using IronPdf;
using System.IO;
using System.Linq;

// Get all images(.jpg) from folder
var ImageFiles = System.IO.Directory.EnumerateFiles(@"C:\project\test").Where(f => f.EndsWith(".jpg") 
 f.EndsWith(".jpeg"));

// Convert the images to a PDF and save it.
ImageToPdfConverter.ImageToPdf(ImageFiles).SaveAs(@"C:\project\testing.pdf");

//Also see PdfDocument.RasterizeToImageFiles() method to flatten a PDF to images or thumbnails
// PM> Install-Package IronPdf
using IronPdf;
using System.IO;
using System.Linq;

// Get all images(.jpg) from folder
var ImageFiles = System.IO.Directory.EnumerateFiles(@"C:\project\test").Where(f => f.EndsWith(".jpg") 
 f.EndsWith(".jpeg"));

// Convert the images to a PDF and save it.
ImageToPdfConverter.ImageToPdf(ImageFiles).SaveAs(@"C:\project\testing.pdf");

//Also see PdfDocument.RasterizeToImageFiles() method to flatten a PDF to images or thumbnails
' PM> Install-Package IronPdf
Imports IronPdf
Imports System.IO
Imports System.Linq

' Get all images(.jpg) from folder
Private ImageFiles = System.IO.Directory.EnumerateFiles("C:\project\test").Where(Function(f) f.EndsWith(".jpg") f.EndsWith(".jpeg"))

' Convert the images to a PDF and save it.
ImageToPdfConverter.ImageToPdf(ImageFiles).SaveAs("C:\project\testing.pdf")

'Also see PdfDocument.RasterizeToImageFiles() method to flatten a PDF to images or thumbnails
VB   C#

7.2 SautinSoft PDF Focus

将 PDF 转换为 WORD 存入 C&num 内存;

string pdfFile = @"c:\test.pdf";
MemoryStream docxStream = new MemoryStream();

SautinSoft.PdfFocus f = new SautinSoft.PdfFocus();

// Assume that we already have a PDF document as stream.
using (FileStream pdfStream = new FileStream(pdfFile, FileMode.Open, FileAccess.Read))
{
    f.OpenPdf(pdfStream);

    if (f.PageCount > 0)
    {
        int res = f.ToWord(docxStream);

        // Save docxStream to a file for demonstration purposes.
        if (res == 0)
        {
            string docxFile = Path.ChangeExtension(pdfFile, ".docx");
            File.WriteAllBytes(docxFile, docxStream.ToArray());
            System.Diagnostics.Process.Start(docxFile);
        }
    }
}
string pdfFile = @"c:\test.pdf";
MemoryStream docxStream = new MemoryStream();

SautinSoft.PdfFocus f = new SautinSoft.PdfFocus();

// Assume that we already have a PDF document as stream.
using (FileStream pdfStream = new FileStream(pdfFile, FileMode.Open, FileAccess.Read))
{
    f.OpenPdf(pdfStream);

    if (f.PageCount > 0)
    {
        int res = f.ToWord(docxStream);

        // Save docxStream to a file for demonstration purposes.
        if (res == 0)
        {
            string docxFile = Path.ChangeExtension(pdfFile, ".docx");
            File.WriteAllBytes(docxFile, docxStream.ToArray());
            System.Diagnostics.Process.Start(docxFile);
        }
    }
}
Dim pdfFile As String = "c:\test.pdf"
Dim docxStream As New MemoryStream()

Dim f As New SautinSoft.PdfFocus()

' Assume that we already have a PDF document as stream.
Using pdfStream As New FileStream(pdfFile, FileMode.Open, FileAccess.Read)
	f.OpenPdf(pdfStream)

	If f.PageCount > 0 Then
		Dim res As Integer = f.ToWord(docxStream)

		' Save docxStream to a file for demonstration purposes.
		If res = 0 Then
			Dim docxFile As String = Path.ChangeExtension(pdfFile, ".docx")
			File.WriteAllBytes(docxFile, docxStream.ToArray())
			System.Diagnostics.Process.Start(docxFile)
		End If
	End If
End Using
VB   C#

PDF 转图像

SautinSoft.PdfFocus f = new SautinSoft.PdfFocus();

f.OpenPdf(@"C:\Computer\testpdf");

if (f.PageCount > 0)
{
    //Set image properties: Jpeg, 200 dpi
    f.ImageOptions.ImageFormat = System.Drawing.Imaging.ImageFormat.Jpeg;
    f.ImageOptions.Dpi = 200;

    //Save all PDF pages as page1.jpg, page2.jpg ... pageN.jpg
    f.ToImage(@"C:\Pictures\, "page");
}
SautinSoft.PdfFocus f = new SautinSoft.PdfFocus();

f.OpenPdf(@"C:\Computer\testpdf");

if (f.PageCount > 0)
{
    //Set image properties: Jpeg, 200 dpi
    f.ImageOptions.ImageFormat = System.Drawing.Imaging.ImageFormat.Jpeg;
    f.ImageOptions.Dpi = 200;

    //Save all PDF pages as page1.jpg, page2.jpg ... pageN.jpg
    f.ToImage(@"C:\Pictures\, "page");
}
Dim f As New SautinSoft.PdfFocus()

f.OpenPdf("C:\Computer\testpdf")

If f.PageCount > 0 Then
	'Set image properties: Jpeg, 200 dpi
	f.ImageOptions.ImageFormat = System.Drawing.Imaging.ImageFormat.Jpeg
	f.ImageOptions.Dpi = 200

	'Save all PDF pages as page1.jpg, page2.jpg ... pageN.jpg
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'	f.ToImage("C:\Pictures\, "page"); }
VB   C#

PDF 转 HTML:

SautinSoft.PdfFocus f = new SautinSoft.PdfFocus();
f.OpenPdf(@"c:\test.pdf");

if (f.PageCount > 0)
{
    int result = f.ToHtml(@"c:\output.html");

    //Open HTML document
    if (result==0)
    {
        System.Diagnostics.Process.Start(@"c:\output.html");
    }
}
SautinSoft.PdfFocus f = new SautinSoft.PdfFocus();
f.OpenPdf(@"c:\test.pdf");

if (f.PageCount > 0)
{
    int result = f.ToHtml(@"c:\output.html");

    //Open HTML document
    if (result==0)
    {
        System.Diagnostics.Process.Start(@"c:\output.html");
    }
}
Dim f As New SautinSoft.PdfFocus()
f.OpenPdf("c:\test.pdf")

If f.PageCount > 0 Then
	Dim result As Integer = f.ToHtml("c:\output.html")

	'Open HTML document
	If result=0 Then
		System.Diagnostics.Process.Start("c:\output.html")
	End If
End If
VB   C#

8.优势

8.1 IronPDF

  • 只需 2-3 行代码即可完成转换,节省大量时间
  • 开发人员可以无限制地使用该库进行测试
  • 可轻松添加、编辑和删除 PDF 大纲/书签
  • 只需几行代码即可添加文本注释(便利贴)以编程方式添加到任何 PDF 页面
  • 可从 HTML 或 PDF 资产中添加前景或背景覆盖层
  • 可在任何 PDF 文件中轻松添加不透明水印
  • 印章还可以添加到任何现有 PDF 页面的新 HTML 内容中
  • 逻辑或 HTML 页眉和页脚可与任何 PDF 文件一起使用。
  • 合并 PDF 页面并将其添加到现有页面中
  • 复制、添加和删除页面
  • 旋转页面和多平台组件运行
  • 编辑元数据、用户权限和 PDF 密码

8.2 SautinSoft PDF Focus

  • 为产品开发节省大量时间和成本。 用 C# 编写自己的 PDF 转换器需要很多天的努力,而且需要大约。 100,000-1,500,000 行 C# 代码。 PDF Focus .NET 节省了大量时间,您只需添加 "SautinSoft.PdfFocus.dll "的引用并编写 3-4 行 C# 代码即可。 无需聘请昂贵的开发人员,从而减少开发预算
  • 它还提供了一套 API,可一次性将 PDF 转换为各种格式:Word、DOCX、RTF、Excel、HTML、文本、多页 TIFF、JPEG 和 PNG
  • 这是一个独立的 PDF 库; 客户环境无需安装 Adobe Acrobat、MS Word、Excel 或任何其他软件
  • 只需一次性付款,之后您就可以终身使用该库。
  • 它可以轻松处理多页 TIFF 文件。
  • 此外,还提供全年免费的无限技术支持。

9.与 SautinSoft 相比使用 IronPDF 的优势

SautinSoft 库的主要缺点是会打印试用通知 "由未授权版本的 PDF Focus .NET 创建",并随机添加 "试用 "一词。IronPDF 则没有这种情况。

使用 IronPdf 的基本价格几乎是 SautinSoft 的一半。

当我们比较这两个库时,我们可以清楚地看到 IronPDF 更可靠,性价比更高,价格几乎是 SautinSoft 的一半,而且能提供更好的支持和功能。

10.结论

在本文中,我们比较了 IronPDF 和 SautinSoft PDF Focus .NET。 我们发现,IronPDF 用于将网页表单、本地 HTML 网页和其他网页转换为.NET 的 PDF,而 SautinSoft PDF Focus 则用于将 PDF 转换为 DOCX、图像、HTML 等任何格式。通过试用,我们发现 IronPdf 提供了无限制的试用功能,并且在输出产品中不添加任何产品标签。

总之,我们更倾向于 IronPDF,因为它的性能更好,而且为使用便携式文档格式的开发人员提供了众多功能。 他们还提供良好的支持和文档,以确保最佳使用所有令人印象深刻的功能。

< 前一页
IronPDF与PDFShift的对比
下一步 >
IronPDF和XFINIUM.PDF的比较

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

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