跳至页脚内容
产品比较

IronPDF与Devexpress PDF Viewer之间的比较

由Adobe创建的便携文档格式(PDF)用于分发具有文本和图形格式的文档。 我们需要一个单独的应用程序来打开PDF文件。在当今的文化中,PDF文件绝对是必不可少的。 对于开具发票和文档生成,便携式文档格式文件在各种企业中被使用。 开发人员使用PDF格式创建符合客户需求的文档。 多亏了当今的库,创建PDF比以往任何时候都容易。 在项目中使用这种类型的库时,我们必须考虑诸如构建、读取和转换能力等因素,以确定哪个库是市场上最好的。

我们将在本文中比较两个最常见的.NET组件PDF库。 这两个库是:

  • IronPDF
  • DevExpress PDF Viewer Controls

IronPDF和DevExpress PDF是可以在您的Microsoft .NET应用程序中使用的两个库。 IronPDF可以用来创建、读取和修改PDF,无论是在线还是在桌面应用程序。 然而,DevExpress只能用来查看PDF。

IronPDF特性

IronPDF是一个功能强大的PDF转换器,可以做几乎浏览器可以做的任何事情。 它是一个对开发人员友好的PDF库,可以极大的方便PDF文件的创建、读取和处理。 IronPDF使用Chrome引擎将HTML转换为PDF。IronPDF支持Windows Forms、HTML、ASPX、Razor HTML、.NET Core、ASP.NET、Windows Form、WPF、Xamarin、Blazor、Unity和HoloLens应用程序以及其他Web组件。 Microsoft .NET和.NET core应用程序都支持IronPDF(包括ASP.NET Web应用程序和传统的Windows应用程序)。 IronPDF还可以用于创建视觉上引人注目的PDF。

IronPDF可以将HTML5、JavaScript、CSS和图片转换为PDF文档。 文件中也可以包含页眉和页脚。它也可以使PDF易于阅读。 IronPDF还附带一个强大的HTML到PDF转换器,可以处理PDF文件。 IronPDF拥有强大的PDF转换引擎。IronPDF没有外部依赖性。

  • 可以用来创建PDF的来源包括HTML、HTML5、ASPX和Razor/MVC视图。 我们不仅可以将HTML文件转换为PDF,还可以转换图像文件。
  • 创建交互式PDF文档,填写和提交交互式表单,合并和分割PDF文档,从PDF文档中提取文本和图像,搜索PDF文档中的文本,将PDF页面栅格化为图像,以及转换PDF文档,这只是我们可以使用IronPDF执行的一些操作。
  • 首先,使用IronPDF官方网站创建文档。 它还支持自定义网络登录凭据、用户代理、代理、Cookies、HTTP头文件和表单变量,以便在HTML登录表单后进行登录。
  • 通过指定用户名和密码,IronPDF允许我们打开受保护的文档。
  • IronPDF是一个读取和填写现有PDF文档空白的程序。
  • 它具有从文档中提取图像的能力。
  • 它允许我们自定义文档的页眉、页脚、文本、图像、书签、水印等。
  • 它允许我们在新文档或现有文档中分割和合并页面。
  • 即使没有Acrobat阅读器,我们仍然可以将文档转换为PDF对象。
  • 可以将CSS文件转换成PDF文档。
  • CSS文件媒体类型文件可以转换为文档。
  • 填写现有PDF表单并添加新的表单。

DevExpress PDF功能

DevExpress提供可以在Visual Studio中用于Windows应用程序的WinForms控件。 它提供用于用户访问PDF的WinForms控件列表。 它还提供控件给WPF控件和ASP.NET表单控件。

PDF查看器直接在您的WinForms应用程序中显示PDF文件,无需在PC上安装外部PDF查看器。 Windows Forms中的PDF查看器控件允许您直接从应用程序查看、修改和打印PDF文档。 PDF查看器不仅仅是显示文档——它还允许用户更改表单字段、注释文档和使用剪贴板。 DevExpress适用于所有.NET框架和库。 它还为ASP.NET、MVC、ASP.NET Core等提供控件和扩展。

PDF查看器支持丰富的文档内容类型,包括:

  • JPX / JBIG2 图像
  • 模式
  • 透明组
  • Type 3 字体
  • 交互式表单

是的,DevExpress WinForms PDF控件由DirectX提供支持——具有出色的文本渲染和文本初始化支持。

WinForms的PDF查看器附带完整的用户界面。 它可以用来更改文档的显示方式,如顺时针和逆时针旋转,放大页面内容,以及在最近使用过的页面显示样式之间切换。

PDF查看器控件中有手动工具、框选放大工具和各种键盘和光标交互模式。 在上下文菜单中更改光标模式,或在命令UI中选择工具。

导航窗格让您可以跳转到已保存的页面,使用缩略图图像导航到特定页面,以及整理文件和注释。

DevExpress允许我们提供反馈,并提供持续支持以回应问题。 如果需要更详细的反馈,可以联系支持团队。

2. 在Visual Studio中新建项目

打开Visual Studio软件,转到文件菜单。 选择"新项目"然后选择"控制台应用程序"。 在这篇文章中,我们将使用控制台应用程序生成PDF文档。

class="content-img-align-center">
class="center-image-wrapper"> Devexpress Pdf Viewer Alternatives 1 related to 2. 在Visual Studio中新建项目

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

class="content-img-align-center">
class="center-image-wrapper"> Devexpress Pdf Viewer Alternatives 2 related to 2. 在Visual Studio中新建项目

Visual Studio项目现在将生成所选应用程序的结构,如果您选择了控制台、Windows和Web应用程序,它将打开program.cs文件以便您输入代码并构建/运行应用程序。

class="content-img-align-center">
class="center-image-wrapper"> Devexpress Pdf Viewer Alternatives 3 related to 2. 在Visual Studio中新建项目

接下来,我们可以添加库来测试代码。

3.0 安装IronPDF库

IronPDF库可以通过四种方式下载和安装。

这些是:

  • 使用Visual Studio
  • 使用Visual Studio命令行
  • 从NuGet网站直接下载
  • 从IronPDF网站直接下载

3.1 使用Visual Studio

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

class="content-img-align-center">
class="center-image-wrapper"> Devexpress Pdf Viewer Alternatives 4 related to 3.1 使用Visual Studio

它提供了一个搜索框,可以显示来自NuGet网站的包列表。在包管理器中,我们需要搜索关键字"IronPDF",如下图所示:

class="content-img-align-center">
class="center-image-wrapper"> Devexpress Pdf Viewer Alternatives 5 related to 3.1 使用Visual Studio

在上面的图片中,我们得到了相关搜索项目的列表。 我们需要选择所需的选项将包安装到解决方案中。

3.2 使用Visual Studio命令行

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

在包管理器控制台选项卡中输入以下行:

Install-Package IronPdf

现在,软件包将下载/安装到当前项目中,即可使用。

class="content-img-align-center">
class="center-image-wrapper"> Devexpress Pdf Viewer Alternatives 6 related to 3.2 使用Visual Studio命令行

3.3 从NuGet网站直接下载

第三种方法是直接从网站下载NuGet包。

  • 导航到NuGet包页面
  • 从右手边菜单中选择下载包选项。
  • 双击下载后的包。 它将自动安装。
  • 接下来,重新加载解决方案并开始在项目中使用它。

3.4 从IronPDF网站直接下载

IronPDF网站直接下载最新包。 下载后,按照以下步骤将包添加到项目中。

  • 从解决方案窗口中右键点击项目。
  • 然后,选择选项引用并浏览下载的引用位置。
  • 接着,点击确定以添加引用。

4.0 安装PDF查看器库

PDF查看器库可以通过四种方式下载和安装。

这些是:

  • 使用Visual Studio
  • 使用Visual Studio命令行
  • 从DevExpress网站直接下载

注册DevExpress NuGet

要使用NuGet安装DevExpress包,您必须先将DevExpress NuGet源注册为包源。

  1. 使用NuGet Feed URL或授权密钥,您可以访问DevExpress NuGet包。 有关更多信息或更新,请查看DevExpress文档
  2. 在Visual Studio中,打开选项面板(工具->选项),并将DevExpress NuGet源注册为包源。 在对话框中找到包管理器选项,并如图所示,添加DevExpress源为包源。
    • 如果您使用授权密钥,请使用https://nuget.devexpress.com/api作为包来源。
    • 如果您使用NuGet Feed URL,请指定它作为包来源。
class="content-img-align-center">
class="center-image-wrapper"> Devexpress Pdf Viewer Alternatives 7 related to 注册DevExpress NuGet

4.1 使用Visual Studio

如上文所述,只需转到NuGet包管理器并选择DevExpress NuGet包管理器。 然后,搜索关键字"Win.PdfViewer"。 它将提供所有相关搜索结果如下。

class="content-img-align-center">
class="center-image-wrapper"> Devexpress Pdf Viewer Alternatives 8 related to 4.1 使用Visual Studio

选择第一个结果选项以在项目中安装包。

4.2 使用Visual Studio命令行

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

在包管理器控制台选项卡中输入以下行:

Install-Package DevExpress.Win.PdfViewer

接下来,按下Enter键。 这将提示出现一个登录窗口,如下所示。 我们需要输入用户名为DevExpress,并且可以从DevExpress URL中获取密码。 这将授权DevExpress联系服务器进行下载。

class="content-img-align-center">
class="center-image-wrapper"> Devexpress Pdf Viewer Alternatives 9 related to 4.2 使用Visual Studio命令行

接下来,包将下载/安装到当前项目中并准备好使用。

4.3 从DevExpress网站直接下载

访问DevExpress产品试用页面,它将重定向到网站上可下载最新包的DLL选项列表,用于各种.NET框架环境; 你可以选择所需的包进行下载。 下载后,按照以下步骤将包添加到项目中。

文件下载完成后,双击下载的文件,它将开始安装,如下图所示:

接下来,点击安装按钮,会弹出一个新的窗口。

选择所需的选项进行安装。

class="content-img-align-center">
class="center-image-wrapper"> Devexpress Pdf Viewer Alternatives 10 related to 4.3 从DevExpress网站直接下载

然后,接受许可,安装将在几分钟后完成。

5.0 使用IronPDF创建PDF

我们可以轻松地使用IronPDF生成PDF文档——它将从URL生成HTML文件并转换为PDF。

以下步骤使生成PDF文档变得简单。

using IronPdf;

// Create an instance of the ChromePdfRenderer
ChromePdfRenderer Renderer = new ChromePdfRenderer();

// Render a URL as a PDF and save it
var Pdf = Renderer.RenderUrlAsPdf("https://www.google.co.in/");
Pdf.SaveAs("result.pdf");

// Alternatively, do the above in a single line
new ChromePdfRenderer().RenderUrlAsPdf("https://www.google.co.in/").SaveAs("result.pdf");
using IronPdf;

// Create an instance of the ChromePdfRenderer
ChromePdfRenderer Renderer = new ChromePdfRenderer();

// Render a URL as a PDF and save it
var Pdf = Renderer.RenderUrlAsPdf("https://www.google.co.in/");
Pdf.SaveAs("result.pdf");

// Alternatively, do the above in a single line
new ChromePdfRenderer().RenderUrlAsPdf("https://www.google.co.in/").SaveAs("result.pdf");
Imports IronPdf

' Create an instance of the ChromePdfRenderer
Private Renderer As New ChromePdfRenderer()

' Render a URL as a PDF and save it
Private Pdf = Renderer.RenderUrlAsPdf("https://www.google.co.in/")
Pdf.SaveAs("result.pdf")

' Alternatively, do the above in a single line
Call (New ChromePdfRenderer()).RenderUrlAsPdf("https://www.google.co.in/").SaveAs("result.pdf")
$vbLabelText   $csharpLabel

在上面的例子中,我们可以使用两种方法将链接转换为文档。 一种方法是通过创建IronPDF对象生成文档,另一种方法是为RenderUrlAsPdf创建对象。

上述内容显示,我们可以使用RenderUrlAsPdf将其转换为文档。 我们只需要传递链接和保存位置。 完成PDF转换大约需要3.4秒。

6.0 使用IronPDF从HTML字符串创建PDF

我们可以借助IronPDF将HTML字符串转换为PDF文档。 以下是将HTML字符串转换为文档的示例。 它还具有将任何HTML标记转换为PDF的能力。

using IronPdf;

// Render an HTML string as a PDF and save it
new ChromePdfRenderer().RenderHtmlAsPdf("<h1>Hello world!!</h1>").SaveAs("result.pdf");
using IronPdf;

// Render an HTML string as a PDF and save it
new ChromePdfRenderer().RenderHtmlAsPdf("<h1>Hello world!!</h1>").SaveAs("result.pdf");
Imports IronPdf

' Render an HTML string as a PDF and save it
Call (New ChromePdfRenderer()).RenderHtmlAsPdf("<h1>Hello world!!</h1>").SaveAs("result.pdf")
$vbLabelText   $csharpLabel

前面的示例演示了如何使用RenderHtmlAsPdf转换HTML字符串。 此外,我们可以为将HTML转换为字符串的函数提供任意数量的HTML代码。 我们可以使用"另存为"功能在检索字符串后保存文档。 这个过程大约只需两秒钟即可完成。

Bootstrap功能矩阵

PDF生成工具必须支持现代Web框架以适用于企业应用程序。 这个Bootstrap 5的演示展示了IronPDF使用列表组和状态徽章的全面功能集。

using IronPdf;

var renderer = new ChromePdfRenderer();

string capabilityMatrix = @"
<!DOCTYPE html>
<html>
<head>
    <meta charset='utf-8'>
    <link href='https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css' rel='stylesheet'>
    <style>
        .capability-item { border-left: 4px solid transparent; transition: all 0.2s; }
        .capability-item.supported { border-left-color: #198754; }
        .capability-item.limited { border-left-color: #ffc107; }
        @media print { .list-group-item { page-break-inside: avoid; } }
    </style>
</head>
<body class='bg-light'>
    <div class='container py-4'>
        <div class='card shadow-sm mb-4'>
            <div class='card-header bg-primary text-white'>
                <h3 class='mb-0'>PDF Library Feature Comparison</h3>
            </div>
            <div class='card-body'>
                <div class='row'>
                    <div class='col-md-6'>
                        <h5 class='text-primary mb-3'>Rendering Capabilities</h5>
                        <ul class='list-group list-group-flush'>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>HTML5 Support</strong><br><small class='text-muted'>Modern semantic elements</small></span>
                                <span class='badge bg-success align-self-center'>Full</span>
                            </li>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>CSS3 Layouts</strong><br><small class='text-muted'>Flexbox and Grid</small></span>
                                <span class='badge bg-success align-self-center'>Native</span>
                            </li>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>JavaScript</strong><br><small class='text-muted'>Dynamic content rendering</small></span>
                                <span class='badge bg-success align-self-center'>V8 Engine</span>
                            </li>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>Web Fonts</strong><br><small class='text-muted'>Google Fonts, custom fonts</small></span>
                                <span class='badge bg-success align-self-center'>Complete</span>
                            </li>
                        </ul>
                    </div>

                    <div class='col-md-6'>
                        <h5 class='text-success mb-3'>Document Operations</h5>
                        <ul class='list-group list-group-flush'>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>Merge/Split</strong><br><small class='text-muted'>Combine or extract pages</small></span>
                                <span class='badge bg-success align-self-center'>Available</span>
                            </li>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>Watermarking</strong><br><small class='text-muted'>Text and image stamps</small></span>
                                <span class='badge bg-success align-self-center'>Advanced</span>
                            </li>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>Form Fields</strong><br><small class='text-muted'>Interactive PDF forms</small></span>
                                <span class='badge bg-success align-self-center'>Full Support</span>
                            </li>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>Security</strong><br><small class='text-muted'>Encryption and signatures</small></span>
                                <span class='badge bg-success align-self-center'>AES-256</span>
                            </li>
                        </ul>
                    </div>
                </div>
            </div>
        </div>

        <div class='row g-3'>
            <div class='col-md-6'>
                <div class='card shadow-sm h-100'>
                    <div class='card-body'>
                        <h5 class='card-title text-primary'>✓ IronPDF Strengths</h5>
                        <ul class='mb-0'>
                            <li>Chrome-based rendering for accuracy</li>
                            <li>Complete Bootstrap 5 compatibility</li>
                            <li>Cross-platform deployment ready</li>
                            <li>Intuitive API with extensive docs</li>
                        </ul>
                    </div>
                </div>
            </div>
            <div class='col-md-6'>
                <div class='card shadow-sm h-100 bg-light'>
                    <div class='card-body'>
                        <h5 class='card-title text-warning'>⚠ DevExpress Notes</h5>
                        <ul class='mb-0'>
                            <li>Viewer-focused, not generation</li>
                            <li>Limited HTML-to-PDF conversion</li>
                            <li>Requires UI suite subscription</li>
                            <li>Complex licensing model</li>
                        </ul>
                    </div>
                </div>
            </div>
        </div>
    </div>
</body>
</html>";

var pdf = renderer.RenderHtmlAsPdf(capabilityMatrix);
pdf.SaveAs("capability-matrix.pdf");
using IronPdf;

var renderer = new ChromePdfRenderer();

string capabilityMatrix = @"
<!DOCTYPE html>
<html>
<head>
    <meta charset='utf-8'>
    <link href='https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css' rel='stylesheet'>
    <style>
        .capability-item { border-left: 4px solid transparent; transition: all 0.2s; }
        .capability-item.supported { border-left-color: #198754; }
        .capability-item.limited { border-left-color: #ffc107; }
        @media print { .list-group-item { page-break-inside: avoid; } }
    </style>
</head>
<body class='bg-light'>
    <div class='container py-4'>
        <div class='card shadow-sm mb-4'>
            <div class='card-header bg-primary text-white'>
                <h3 class='mb-0'>PDF Library Feature Comparison</h3>
            </div>
            <div class='card-body'>
                <div class='row'>
                    <div class='col-md-6'>
                        <h5 class='text-primary mb-3'>Rendering Capabilities</h5>
                        <ul class='list-group list-group-flush'>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>HTML5 Support</strong><br><small class='text-muted'>Modern semantic elements</small></span>
                                <span class='badge bg-success align-self-center'>Full</span>
                            </li>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>CSS3 Layouts</strong><br><small class='text-muted'>Flexbox and Grid</small></span>
                                <span class='badge bg-success align-self-center'>Native</span>
                            </li>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>JavaScript</strong><br><small class='text-muted'>Dynamic content rendering</small></span>
                                <span class='badge bg-success align-self-center'>V8 Engine</span>
                            </li>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>Web Fonts</strong><br><small class='text-muted'>Google Fonts, custom fonts</small></span>
                                <span class='badge bg-success align-self-center'>Complete</span>
                            </li>
                        </ul>
                    </div>

                    <div class='col-md-6'>
                        <h5 class='text-success mb-3'>Document Operations</h5>
                        <ul class='list-group list-group-flush'>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>Merge/Split</strong><br><small class='text-muted'>Combine or extract pages</small></span>
                                <span class='badge bg-success align-self-center'>Available</span>
                            </li>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>Watermarking</strong><br><small class='text-muted'>Text and image stamps</small></span>
                                <span class='badge bg-success align-self-center'>Advanced</span>
                            </li>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>Form Fields</strong><br><small class='text-muted'>Interactive PDF forms</small></span>
                                <span class='badge bg-success align-self-center'>Full Support</span>
                            </li>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>Security</strong><br><small class='text-muted'>Encryption and signatures</small></span>
                                <span class='badge bg-success align-self-center'>AES-256</span>
                            </li>
                        </ul>
                    </div>
                </div>
            </div>
        </div>

        <div class='row g-3'>
            <div class='col-md-6'>
                <div class='card shadow-sm h-100'>
                    <div class='card-body'>
                        <h5 class='card-title text-primary'>✓ IronPDF Strengths</h5>
                        <ul class='mb-0'>
                            <li>Chrome-based rendering for accuracy</li>
                            <li>Complete Bootstrap 5 compatibility</li>
                            <li>Cross-platform deployment ready</li>
                            <li>Intuitive API with extensive docs</li>
                        </ul>
                    </div>
                </div>
            </div>
            <div class='col-md-6'>
                <div class='card shadow-sm h-100 bg-light'>
                    <div class='card-body'>
                        <h5 class='card-title text-warning'>⚠ DevExpress Notes</h5>
                        <ul class='mb-0'>
                            <li>Viewer-focused, not generation</li>
                            <li>Limited HTML-to-PDF conversion</li>
                            <li>Requires UI suite subscription</li>
                            <li>Complex licensing model</li>
                        </ul>
                    </div>
                </div>
            </div>
        </div>
    </div>
</body>
</html>";

var pdf = renderer.RenderHtmlAsPdf(capabilityMatrix);
pdf.SaveAs("capability-matrix.pdf");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

输出:包含Bootstrap 5列表组、徽章和卡片布局的全面功能矩阵PDF。 IronPDF完美呈现所有实用程序类、弹性盒调整和响应式网格系统,展示出卓越的Bootstrap框架支持。

有关Bootstrap支持的更多信息,请参阅Bootstrap & Flexbox CSS指南

7.0 使用IronPDF阅读PDF

IronPDF是一个允许我们读取现有PDF文件的程序。 以下是如何使用IronPDF读取现有PDF的示例。

using IronPdf;

// Read an existing PDF file
var pdfDocument = PdfDocument.FromFile("result.pdf");

// Extract all text from the PDF
string AllText = pdfDocument.ExtractAllText();
using IronPdf;

// Read an existing PDF file
var pdfDocument = PdfDocument.FromFile("result.pdf");

// Extract all text from the PDF
string AllText = pdfDocument.ExtractAllText();
Imports IronPdf

' Read an existing PDF file
Private pdfDocument = PdfDocument.FromFile("result.pdf")

' Extract all text from the PDF
Private AllText As String = pdfDocument.ExtractAllText()
$vbLabelText   $csharpLabel

FromFile方法用于从现有文件读取PDF并将其转换为PdfDocument对象,如上面的代码所示。 使用此对象,我们可以读取PDF页面上的文本和图像。 该对象有一个名为ExtractAllText的方法,可以将PDF文档中的所有文本提取为字符串。

8.0 创建一个PDF查看器应用程序

可以通过以下步骤创建一个PDF查看器应用程序:

  1. 在Microsoft®Visual Studio中创建一个新的Windows Forms应用程序项目。
  2. 在表单上,从DX.21.2:常用控件工具箱菜单中拖动PDF查看器项目。
class="content-img-align-center">
class="center-image-wrapper"> Devexpress Pdf Viewer Alternatives 11 related to 8.0 创建一个PDF查看器应用程序
  1. 在PDF查看器控件的任务菜单中,点击PDF查看器的智能标记,并选择在父容器中停靠。 这会导致PDF查看器扩展到表单的大小。
class="content-img-align-center">
class="center-image-wrapper"> Devexpress Pdf Viewer Alternatives 12 related to 8.0 创建一个PDF查看器应用程序
  1. 要使用PDF查看器控件,您必须先加载一个文档。 要访问PDF查看器的活动列表,请点击其智能标记。 点击活动列表中的加载PDF选项。
class="content-img-align-center">
class="center-image-wrapper"> Devexpress Pdf Viewer Alternatives 13 related to 8.0 创建一个PDF查看器应用程序
  1. "打开"对话框显示。 在此对话框中找到要打开的文档并点击打开。

我们可以使用控件执行以下任务:

在PDF中导航

轻松导航和浏览PDF文件。查看器控件带有广泛的文档导航选项,包括:

  • 书签和链接
  • 自定义文档导航UI的导航窗格
  • 所有页面的缩略图
  • 带有带状UI

查看器跟踪所有访问过的页面,并允许用户在需要时在页面之间来回切换。 您还可以使用查找面板来搜索PDF材料,就像在Adobe Reader中(选项包括区分大小写和整个单词搜索)。

检查和评论

用户可以添加、编辑和删除评论。 WinForms查看器拥有完整的注释功能集,包括文本高亮和便签。

  • 轻松协作
  • 附加功能/选项包括:
  • 可以添加回复和评论
  • 配置标记工具的选项(颜色和不透明度)
  • 可以对评论进行排序、筛选和搜索
  • 综合API
  • 使用DevExpress放大和缩小。

您可以填写的PDF表单

AcroForms允许您编辑文档。 在将查看器添加到WinForms项目后,您的用户将能够编辑任何包含表单字段数据的PDF。 查看器中的每个字段根据其所属的表单类型显示,如文本框、单选按钮、带自动填充的组合框、复选框和列表。

如果您的PDF包含AcroForm数据,您可以从以下格式进行导入或导出:FDF、XFDF、XML和TXT。

打开和保存附加的文件

在DevExpress PDF查看器的导航窗格中显示相关文件。 可以打开附加到文件的PDF并将其保存到磁盘。 在打开与PDF连接的文件时,查看器还可以选择显示安全警告。

PDF打印

查看器附带一个带有完整打印选项的打印预览对话框,灵感来自Adobe。 其中包括实时预览、页面范围选择、DPI设置和方向。

9.0 结论

在本文中,我们比较了IronPDF和DevExpress。 两种库中都有大量常见功能。 IronPDF考虑了用户Chrome的设置来渲染HTML,但DevExpress在渲染HTML时运行在一个单独的引擎上,忽略当前用户设置。 IronPDF渲染HTML的速度比DevExpress快。

在性能方面,IronPDF比DevExpress更快。 此外,PDF查看器不能使用IronPDF创建PDF; 它只能查看它们。 IronPDF附带版税免费再分发券的保护,但这在DevExpress中不可用。 与DevExpress PDF控件相比,IronPDF提供的功能显著更多。

总之,我们更喜欢IronPDF,因为它的高性能水平和可供开发人员使用的PDF功能的多样性。 IronPDF还提供良好的支持和文档保证用户能够充分有效地利用提供的功能。

[{i:(Syncfusion Essential PDF, Aspose.PDF, GemBox.Pdf, and PdfiumViewer are registered trademarks of their respective owners. 本网站与Syncfusion Essential PDF, Aspose.PDF, GemBox.Pdf, or PdfiumViewer无关,也未获得其认可或赞助。 所有产品名称、徽标和品牌均为其各自所有者的财产。 比较仅供参考,反映的是撰写时的公开信息。]

常见问题解答

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

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

IronPDF和DevExpress PDF Viewer之间的区别是什么?

IronPDF是一种多功能工具,可跨多个平台创建、读取和修改PDF,具有强大的HTML到PDF转换功能。相比之下,DevExpress PDF Viewer主要专注于查看PDF,并支持文档注释和表单填写。

我可以使用库从现有的PDF中提取文本和图像吗?

是的,IronPDF允许您使用其全面的API从现有PDF文件中提取文本和图像。

哪些平台支持IronPDF进行PDF管理?

IronPDF支持广泛的平台,包括Windows Forms、ASP.NET、.NET Core、WPF、Xamarin、Blazor、Unity和HoloLens应用。

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

可以使用Visual Studio的NuGet包管理器、Visual Studio命令行,或通过从NuGet或IronPDF网站直接下载,在.NET项目中安装IronPDF。

为什么开发人员可能会选择IronPDF而不是DevExpress PDF Viewer?

开发人员可能会更喜欢IronPDF,因为它的功能广泛,包括HTML到PDF转换、交互式PDF创建和强大的性能。它还提供出色的支持和文档,使其在DevExpress之上成为首选。

使用PDF库时一些常见的故障排除场景是什么?

常见的故障排除场景包括确保正确安装库、验证与.NET版本的兼容性,以及处理与文件路径或权限相关的异常在PDF创建或转换期间。

我应该在PDF管理库中寻找哪些功能?

要考虑的主要功能包括HTML到PDF转换、文本和图像提取、交互式表单、文档自定义选项以及对各种平台的支持。IronPDF提供所有这些功能,使其成为PDF管理的全面选择。

Curtis Chau
技术作家

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

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