产品比较

IronPDF与PDFCrowd的比较

发布 2021年十二月13日
分享:

IronPDF 和 PDFCrowd - 综合比较

不断改进的技术意味着为每个人,尤其是开发人员提供更智能、更省时的解决方案。现在,自动化已成为软件开发流程的关键。多年来,在 C&num 中处理 PDF 文件一直是开发人员面临的难题。从 PDF 文件渲染内容时需要考虑多种因素,而将不同格式的内容转换为 PDF 时更是如此。现在,随着大量用于从不同格式读取、写入、创建和转换为 PDF 的库的完成,这些问题已经迎刃而解。

本文将对 .NET 和 .NET Core 开发人员最常用的两个 PDF 库进行比较。这两个库是

  • IronPDF
  • PDFCrowd

IronPDF 和 PDFCrowd 这两个库都提供了创建、操作和使用 PDFCrowd 的方法。 打印 PDF 在 .NET 和 .NET Core 中。下一个问题是要决定 C# PDF库 最适合您的 .NET 项目?在阅读以下两个库的比较及其各自在转换和处理 PDF 方面的突出功能时,您可以权衡自己的决定。

让我们先看看这两个库都有哪些功能,然后再进行比较。

IronPDF 及其主要功能

IronPDF .NET PDF Library 解决方案是开发人员,尤其是使用 C&num 的软件工程师的梦想。有了这款出色的工具,你就可以轻松创建.NET的核心PDF库。

IronPDF 使用 .NET Chromium 引擎将 HTML 页面渲染为 PDF 文件。使用 HTML to PDF,无需使用复杂的 API 来定位或设计 PDF。IronPDF 支持标准 Web 文档:HTML、ASPX、JS、CSS 和图像。

它还能让你使用 HTML5、CSS、JavaScript 和图像创建 .NET PDF 库。您可以毫不费力地对 PDF 进行编辑、盖章、添加页眉和页脚。此外,它还能轻松 阅读 PDF 文本和提取图像。

IronPDF C# Library - 突出功能

一些重要功能包括

创建 PDF 文件 (Html 转 PDF_)

  • 利用 HTML 4 和 5、CSS 和 JavaScript 创建 PDF 文档
  • 从 URL 生成 PDF 文档
  • 使用自定义网络登录凭证、用户代理、代理服务器、Cookie、HTTP 标头、表单变量加载 URL,允许在 HTML 登录表单后登录

无需 Adobe Acrobat 即可编辑现有 PDF 文档

  • 读取和填写表格字段数据
  • 从 PDF 中提取图像和文本
  • 在任何现有 PDF 页面上添加新的 HTML 内容
  • 添加逻辑或 HTML 页眉和页脚

修改现有 PDF 文档

  • 加载和解析现有 PDF 文档
  • 合并和拆分 PDF 文档中的内容
  • 添加页眉、页脚、注释、书签、水印、文本和图像资产

从多种格式转换

  • ASPX WebForms - 只需 3 行代码即可将 ASP.NET 网络表格转换为可在浏览器中查看的可下载 PDF 文件
  • HTML 文档--将 HTML 转换为 PDF
  • 自定义 "基本 URL",允许在网络上访问资产文件
  • 通过虚拟视口实现响应式布局 (宽度和高度)
  • 接受以任何主要文件编码方式编码的 HTML (默认为 UTF-8)

保存并打印

  • 保存和加载文件、二进制数据或内存流
  • 屏幕或打印 CSS 媒体类型
  • 将 PDF 文件转化为 PrintDocument 对象,无需 Adobe 即可打印 (代码最少)
  • 在源代码中导出官方日志文件,其中包含有关 API 成功和调试错误的详细信息

PDFCrowd 库 - 突出功能

Pdfcrowd.com API 是一种专业解决方案,用于从网页和 HTML 文档创建 PDF 和屏幕截图图像。它是一项在线网络服务,允许您将任何网页转换为 PDF。API 是一项网络服务,您的输入将在 PDFCrowd 服务器上进行转换。

它质量高、速度快,从而节省了您的时间。它安全可靠,还能压缩文件。

PDFCrowd API 功能

以下是一些最重要的 PDFCrowd 功能:

HTML 至 PDF API

  • 易于使用的 API 客户端 SDK 库
  • 支持最新的网络标准
  • 集成设置只需几分钟,无需第三方库
  • 几乎可用于任何平台--Windows、Linux、macOS、BSD、类 Unix 系统等。
  • 可靠、广泛可用,支持最新的 HTML5、CSS3 和 JavaScript 规范

应用程序接口游乐场

  • 交互式探索 API 设置
  • PDF 预览,自动生成代码
  • 转换网页、HTML 文件或 HTML 代码

注: PDFCrowd 不提供可离线使用的独立 SDK。

本文其余部分将介绍以下主题:

1.创建项目

2.IronPDF C#库安装

3.PDFCrowd API 安装

4.从现有 URL 创建 PDF

5.根据 HTML 输入字符串创建 PDF

6.将 ASPX 页面转换为 PDF

7.将 XML 转换为 PDF

8.将图像转换为 PDF

9.授权许可

10.摘要和结论

1.创建 ASP.NET 项目

使用以下步骤创建 ASP.NET 网站:

  • 打开 Visual Studio 2019
  • 点击菜单中的 "文件",然后点击 "新建项目 "创建新项目
  • 在项目类型列表框中选择 "Visual C&num "下的 "Web
  • 选择 ASP.NET Web 应用程序 (.NET框架) 然后点击确定,如下图所示

图 1 - 新建项目对话框

  • 在下一个屏幕中,选择 "Web 表单",如下图所示。

图 2 - 网络表格

  • 全部选中后,单击 "确定"。

现在项目已经创建,我们几乎可以测试库了。不过,我们仍需安装这些库并将其集成到项目中。让我们先安装 IronPDF。

2.IronPDF C# 库安装

下载和安装 IronPDF 库有四种方法。具体如下:

1.使用 Visual Studio

2.开发人员命令提示符

3.直接下载 NuGet 软件包

4.下载 IronPDF .DLL 库

让我们逐一详细了解。

2.1 使用 Visual Studio

Visual Studio 提供了 NuGet 包管理器,用于在项目中安装 NuGet 包。你可以通过 "项目菜单 "或右键单击 "解决方案资源管理器 "中的项目来访问它。这两个选项的截图如图 3 和图 4 所示。

图 3 - 项目菜单 > 管理 NuGet 软件包

图 4 - 右键单击解决方案资源管理器

选择后,浏览 IronPDF 软件包并安装,如下图所示。

图 5 - 从 NuGet 软件包安装 IronPDF

2.2 使用开发人员命令提示符

下载和安装 IronPDF C# 库的另一种方法是使用以下步骤,通过开发人员命令提示符安装 IronPDF NuGet 包

  • 打开开发人员命令提示符(通常位于 Visual Studio 文件夹下
  • 键入以下命令
  :ProductInstall
  • 按回车键
  • 这将下载并安装软件包
  • 重新加载 Visual Studio 项目并开始使用它

2.3.直接下载 NuGet 软件包

下载和安装 IronPDF 的第三种方法是按照以下步骤操作。可以直接访问 NuGet 网站并下载软件包。步骤如下

2.4.通过下载库安装 IronPDF

你可以直接从网站下载 IronPDF .DLL 文件。可以直接从 IronPDF DLL 下载.

图 6 - 直接下载 IronPDF C# 库

通过以下步骤在项目中引用库:

  • 右键单击解决方案资源管理器中的解决方案
  • 选择引用
  • 浏览 IronPDF.dll 库
  • 点击确定

全部完成! IronPDF 已下载、安装并准备就绪。不过,在此之前,我们应该先安装 PDFCrowd API。

3.PDFCrowd API 安装

验证

使用Pdfcrowd API客户端需要进行身份验证。用于访问API的凭证是你的Pdfcrowd用户名和API密钥。

适用于.NET的Pdfcrowd API客户端库

Pdfcrowd API 客户端库允许您在 HTML、PDF 和各种图像格式之间进行转换。.NET应用程序接口客户端库可以轻松实现 Pdfcrowd API 在您的 .NET 应用程序中。

有三种方法可以安装 PDFCrowd API Client Library for .NET:

1.以压缩包形式直接下载Pdfcrowd客户端

2.通过NuGet软件包管理器获取Pdfcrowd官方客户端软件包

3.通过 Pdfcrowd GitHub 存储库

让我们来仔细看看每一个。

3.1 直接下载

下载 pdfcrowd-5.2.0-dotnet.zip解压缩,并在项目中添加对 pdfcrowd.dll 的引用。

按以下步骤在项目中引用该库:

  • 右键单击解决方案资源管理器中的解决方案
  • 选择引用
  • 浏览 pdfcrowd.dll 库
  • 点击确定

3.2 通过开发人员命令提示符使用 NuGet 软件包管理器

下载和安装 PDFCrowd API 的另一种方法是使用以下步骤,使用开发人员命令提示符安装 PDFCrowd API Client NuGet 包

  • 打开开发人员命令提示符--通常可在Visual Studio文件夹下找到
  • 键入以下命令PM > Install-Package Pdfcrowd.official -Version 5.2.0
  • 按回车键
  • 这将下载并安装软件包
  • 重新加载 Visual Studio 项目并开始使用它

3.3 GitHub 存储库

要安装 PDFCrowd,您可以克隆 pdfcrowd-dotnet 并构建该库。该客户端库采用 MIT 许可授权。

使用以下命令构建 PDFCrowd API 客户端库:

现在我们已经创建了项目并安装了必要的库,让我们开始比较 IronPDF 和 PDFCrowd 库的代码。

4.从现有 URL 创建 PDF

这两个库都提供将 HTML 网页转换为 PDF 的功能。让我们逐一看看每个库的代码。

4.1.使用 IronPDF 将现有 URL 转换为 PDF

IronPDF 可以将现有 URL 中的 HTML 直接渲染为 PDF 文档。对 JavaScript、图像、表单和 CSS 的支持程度非常高。

以下代码使用 IronPDF 直接从网站地址创建 PDF 文档。

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

Pdf.SaveAs("url.pdf");
IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
using var Pdf = Renderer.RenderUrlAsPdf("https://ironpdf.com/");

Pdf.SaveAs("url.pdf");
Dim Renderer As New IronPdf.ChromePdfRenderer()
Dim Pdf = Renderer.RenderUrlAsPdf("https://ironpdf.com/")

Pdf.SaveAs("url.pdf")
VB   C#

4.2 使用 PDFCrowd 将现有 URL 转换为 PDF

使用 PDFCrowd 将 URL 转换为 PDF 文档也非常简单。以下代码使用 PDFCrowd 直接从网站地址生成 PDF 文档。

// create the API client instance
pdfcrowd.HtmlToPdfClient client = new pdfcrowd.HtmlToPdfClient("demo", "ce544b6ea52a5621fb9d55f8b542d14d");

// run the conversion and write the result to a file
client.convertUrlToFile("http://www.pdfcrowd.com", "example.pdf");
// create the API client instance
pdfcrowd.HtmlToPdfClient client = new pdfcrowd.HtmlToPdfClient("demo", "ce544b6ea52a5621fb9d55f8b542d14d");

// run the conversion and write the result to a file
client.convertUrlToFile("http://www.pdfcrowd.com", "example.pdf");
' create the API client instance
Dim client As New pdfcrowd.HtmlToPdfClient("demo", "ce544b6ea52a5621fb9d55f8b542d14d")

' run the conversion and write the result to a file
client.convertUrlToFile("http://www.pdfcrowd.com", "example.pdf")
VB   C#

5.从 HTML 输入字符串创建 PDF

IronPDF 和 PDFCrowd 都提供了从包含 HTML 的字符串生成 PDF 的功能。两者都只需两行代码即可完成这一任务。

5.1.使用 IronPDF 输入 HTML 字符串

以下代码展示了如何使用 HTML 输入字符串渲染 PDF 文档。您可以选择简单的 HTML,也可以使用 CSS、图像和 JavaScript。

var Renderer = new IronPdf.ChromePdfRenderer();
using var PDF = Renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>");
PDF.SaveAs("pixel-perfect.pdf");

// Load external html assets: images, css and javascript.
// An optional BasePath 'C:\site\assets\' is set as the file location to load assets from 
using var AdvancedPDF = Renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
AdvancedPDF.SaveAs("html-with-assets.pdf");
var Renderer = new IronPdf.ChromePdfRenderer();
using var PDF = Renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>");
PDF.SaveAs("pixel-perfect.pdf");

// Load external html assets: images, css and javascript.
// An optional BasePath 'C:\site\assets\' is set as the file location to load assets from 
using var AdvancedPDF = Renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
AdvancedPDF.SaveAs("html-with-assets.pdf");
Dim Renderer = New IronPdf.ChromePdfRenderer()
Dim PDF = Renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>")
PDF.SaveAs("pixel-perfect.pdf")

' Load external html assets: images, css and javascript.
' An optional BasePath 'C:\site\assets\' is set as the file location to load assets from 
Dim AdvancedPDF = Renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", "C:\site\assets\")
AdvancedPDF.SaveAs("html-with-assets.pdf")
VB   C#

5.2.使用 PDFCrowd 输入 HTML 字符串

下面的代码显示,可以使用包含 HTML 的字符串生成 PDF 文档。HTML 输入字符串还可用于转换为内存 PDF,并将生成的 PDF 写入输出流。

// create the API client instance
pdfcrowd.HtmlToPdfClient client = new pdfcrowd.HtmlToPdfClient("demo", "ce544b6ea52a5621fb9d55f8b542d14d");

// run the conversion and write the result to a file
client.convertStringToFile("<html><body><h1>Hello World!</h1></body></html>", "HelloWorld.pdf");

// run the conversion and store the result into the "pdf" variable
byte [] pdf = client.convertString("<html><body><h1>Hello World!</h1></body></html>");
// at this point the "pdf" variable contains PDF raw data and
// can be sent in an HTTP response, saved to a file, etc.

// create an output stream for the conversion result
FileStream outputStream = new FileStream("HelloWorld.pdf", FileMode.CreateNew);

// run the conversion and write the result into the output stream
client.convertStringToStream("<html><body><h1>Hello World!</h1></body></html>", outputStream);

// close the output stream
outputStream.Close();
// create the API client instance
pdfcrowd.HtmlToPdfClient client = new pdfcrowd.HtmlToPdfClient("demo", "ce544b6ea52a5621fb9d55f8b542d14d");

// run the conversion and write the result to a file
client.convertStringToFile("<html><body><h1>Hello World!</h1></body></html>", "HelloWorld.pdf");

// run the conversion and store the result into the "pdf" variable
byte [] pdf = client.convertString("<html><body><h1>Hello World!</h1></body></html>");
// at this point the "pdf" variable contains PDF raw data and
// can be sent in an HTTP response, saved to a file, etc.

// create an output stream for the conversion result
FileStream outputStream = new FileStream("HelloWorld.pdf", FileMode.CreateNew);

// run the conversion and write the result into the output stream
client.convertStringToStream("<html><body><h1>Hello World!</h1></body></html>", outputStream);

// close the output stream
outputStream.Close();
' create the API client instance
Dim client As New pdfcrowd.HtmlToPdfClient("demo", "ce544b6ea52a5621fb9d55f8b542d14d")

' run the conversion and write the result to a file
client.convertStringToFile("<html><body><h1>Hello World!</h1></body></html>", "HelloWorld.pdf")

' run the conversion and store the result into the "pdf" variable
Dim pdf() As Byte = client.convertString("<html><body><h1>Hello World!</h1></body></html>")
' at this point the "pdf" variable contains PDF raw data and
' can be sent in an HTTP response, saved to a file, etc.

' create an output stream for the conversion result
Dim outputStream As New FileStream("HelloWorld.pdf", FileMode.CreateNew)

' run the conversion and write the result into the output stream
client.convertStringToStream("<html><body><h1>Hello World!</h1></body></html>", outputStream)

' close the output stream
outputStream.Close()
VB   C#

将 ASPX 页面转换为 PDF

IronPDF 和 PDFCrowd 的下一步代码都是从 ASP.NET 网页创建 PDF 文档。

6.1.使用 IronPDF 将 ASPX 页面转换为 PDF

以下代码使用 IronPDF 将 ASPX 网页文件渲染为 PDF。这是一段单行代码,非常容易使用。在渲染的同时,还可以在 PDF 设置中添加更多选项。

protected void Page_Load(object sender, EventArgs e)
{
    IronPdf.AspxToPdf.RenderThisPageAsPdf();
}
protected void Page_Load(object sender, EventArgs e)
{
    IronPdf.AspxToPdf.RenderThisPageAsPdf();
}
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
	IronPdf.AspxToPdf.RenderThisPageAsPdf()
End Sub
VB   C#

6.2.使用 PDFCrowd 将 ASPX 页面转换为 PDF

以下代码使用 PDFCrowd 将 ASPX 网页文件渲染为 PDF。这样,您就可以设置完整的 HTTP 响应头,并在 HTTP 响应中发送结果,以便在网络浏览器中以 PDF 格式查看。

// create the API client instance
pdfcrowd.HtmlToPdfClient client = new pdfcrowd.HtmlToPdfClient("demo", "ce544b6ea52a5621fb9d55f8b542d14d");

// run the conversion and store the result into the "pdf" variable
byte [] pdf = client.convertUrl("https://en.wikipedia.org");

// set HTTP response headers
Response.ContentType = "application/pdf";
Response.Headers.Add("Cache-Control", "max-age=0");
Response.Headers.Add("Accept-Ranges", "none");
Response.Headers.Add("Content-Disposition", "attachment; filename*=UTF-8''" + Uri.EscapeUriString("result.pdf"));

// send the result in the HTTP response
Response.OutputStream.Write(pdf, 0, pdf.Length);
Response.Flush();
// create the API client instance
pdfcrowd.HtmlToPdfClient client = new pdfcrowd.HtmlToPdfClient("demo", "ce544b6ea52a5621fb9d55f8b542d14d");

// run the conversion and store the result into the "pdf" variable
byte [] pdf = client.convertUrl("https://en.wikipedia.org");

// set HTTP response headers
Response.ContentType = "application/pdf";
Response.Headers.Add("Cache-Control", "max-age=0");
Response.Headers.Add("Accept-Ranges", "none");
Response.Headers.Add("Content-Disposition", "attachment; filename*=UTF-8''" + Uri.EscapeUriString("result.pdf"));

// send the result in the HTTP response
Response.OutputStream.Write(pdf, 0, pdf.Length);
Response.Flush();
' create the API client instance
Dim client As New pdfcrowd.HtmlToPdfClient("demo", "ce544b6ea52a5621fb9d55f8b542d14d")

' run the conversion and store the result into the "pdf" variable
Dim pdf() As Byte = client.convertUrl("https://en.wikipedia.org")

' set HTTP response headers
Response.ContentType = "application/pdf"
Response.Headers.Add("Cache-Control", "max-age=0")
Response.Headers.Add("Accept-Ranges", "none")
Response.Headers.Add("Content-Disposition", "attachment; filename*=UTF-8''" & Uri.EscapeUriString("result.pdf"))

' send the result in the HTTP response
Response.OutputStream.Write(pdf, 0, pdf.Length)
Response.Flush()
VB   C#

7.将 XML 转换为 PDF

以下代码将 XML 转换为 PDF,用于 IronPDF 和 PDFCrowd API。

7.1.使用 IronPDF 将 XML 转换为 PDF

将 C# XML 直接转换为 PDF 是一项复杂的挑战。我们发现,在用 C# 将 XML 转换为 PDF 时,最好从 XSLT 开始。可通过 HTML 将 XML 呈现为 PDF(5) 使用 XLST 转换。

private void XMLtoPDF(string XSLT, string XML)
{
    XslCompiledTransform transform = new XslCompiledTransform();
    using(XmlReader reader = XmlReader.Create(new StringReader(XSLT)))  
    {
        transform.Load(reader);
    }
    StringWriter results = new StringWriter();
    using(XmlReader reader = XmlReader.Create(new StringReader(XML))) 
    {
        transform.Transform(reader, null, results);
    }
    IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
    // options, headers, and footers may be set there
    // Render our XML as a PDF via XSLT
    using var PDF = Renderer.RenderHtmlAsPdf(results.ToString())l
    PDF.SaveAs("XMLtoPDF.pdf");
}
private void XMLtoPDF(string XSLT, string XML)
{
    XslCompiledTransform transform = new XslCompiledTransform();
    using(XmlReader reader = XmlReader.Create(new StringReader(XSLT)))  
    {
        transform.Load(reader);
    }
    StringWriter results = new StringWriter();
    using(XmlReader reader = XmlReader.Create(new StringReader(XML))) 
    {
        transform.Transform(reader, null, results);
    }
    IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
    // options, headers, and footers may be set there
    // Render our XML as a PDF via XSLT
    using var PDF = Renderer.RenderHtmlAsPdf(results.ToString())l
    PDF.SaveAs("XMLtoPDF.pdf");
}
Private Sub XMLtoPDF(ByVal XSLT As String, ByVal XML As String)
	Dim transform As New XslCompiledTransform()
	Using reader As XmlReader = XmlReader.Create(New StringReader(XSLT))
		transform.Load(reader)
	End Using
	Dim results As New StringWriter()
	Using reader As XmlReader = XmlReader.Create(New StringReader(XML))
		transform.Transform(reader, Nothing, results)
	End Using
	Dim Renderer As New IronPdf.ChromePdfRenderer()
	' options, headers, and footers may be set there
	' Render our XML as a PDF via XSLT
	Dim PDF = Renderer.RenderHtmlAsPdf(results.ToString())l PDF.SaveAs("XMLtoPDF.pdf")
End Sub
VB   C#

XSLT 文件的结构如下:

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
  <html>
  <body>
    <h2>My CD Collection</h2>
    <p>Titles:
    <xsl:for-each select="catalog/cd">
      <xsl:value-of select="title"/>
      <xsl:if test="position() < last()-1">
        <xsl:text>, </xsl:text>
      </xsl:if>
      <xsl:if test="position()=last()-1">
        <xsl:text>, and </xsl:text>
      </xsl:if>
      <xsl:if test="position()=last()">
        <xsl:text>!</xsl:text>
      </xsl:if>
    </xsl:for-each>
    </p>
  </body>
  </html>
</xsl:template>
</xsl:stylesheet>
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
  <html>
  <body>
    <h2>My CD Collection</h2>
    <p>Titles:
    <xsl:for-each select="catalog/cd">
      <xsl:value-of select="title"/>
      <xsl:if test="position() < last()-1">
        <xsl:text>, </xsl:text>
      </xsl:if>
      <xsl:if test="position()=last()-1">
        <xsl:text>, and </xsl:text>
      </xsl:if>
      <xsl:if test="position()=last()">
        <xsl:text>!</xsl:text>
      </xsl:if>
    </xsl:for-each>
    </p>
  </body>
  </html>
</xsl:template>
</xsl:stylesheet>
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'<?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="/"> <html> <body> <h2> My CD Collection</h2> <p> Titles: <xsl:for-@each @select="catalog/cd"> <xsl:value-@of @select="title"/> <xsl:if test="position() < last()-1"> <xsl:text>, </xsl:text> </xsl:if> <xsl:if test="position()=last()-1"> <xsl:text>, @and </xsl:text> </xsl:if> <xsl:if test="position()=last()"> <xsl:text>!</xsl:text> </xsl:if> </xsl:for-@each> </p> </body> </html> </xsl:template> </xsl:stylesheet>
VB   C#

7.2.使用 PDFCrowd 将 XML 转换为 PDF

PDFCrowd API 客户端可渲染 HTML 模板。模板语法基于 Jinja 模板渲染引擎。PDFCrowd API Client 也支持 XML 格式,并可与该语法一起使用。

// create the API client instance
pdfcrowd.HtmlToPdfClient client = new pdfcrowd.HtmlToPdfClient("{{ user_name }}", "{{ api_key }}");

// configure the conversion
client.setDataString(@"<?xml version=""1.0"" encoding=""UTF-8""?>
        <data>
          <name>World</name>
          <product>Pdfcrowd API</product>
        </data>");

// run the conversion and write the result to a file
client.convertStringToFile("Hello {{ data.name }} from {{ data.product }}", "output.pdf");
// create the API client instance
pdfcrowd.HtmlToPdfClient client = new pdfcrowd.HtmlToPdfClient("{{ user_name }}", "{{ api_key }}");

// configure the conversion
client.setDataString(@"<?xml version=""1.0"" encoding=""UTF-8""?>
        <data>
          <name>World</name>
          <product>Pdfcrowd API</product>
        </data>");

// run the conversion and write the result to a file
client.convertStringToFile("Hello {{ data.name }} from {{ data.product }}", "output.pdf");
' create the API client instance
Dim client As New pdfcrowd.HtmlToPdfClient("{{ user_name }}", "{{ api_key }}")

' configure the conversion
client.setDataString("<?xml version=""1.0"" encoding=""UTF-8""?>
        <data>
          <name>World</name>
          <product>Pdfcrowd API</product>
        </data>")

' run the conversion and write the result to a file
client.convertStringToFile("Hello {{ data.name }} from {{ data.product }}", "output.pdf")
VB   C#

8.将图像转换为 PDF

8.1.使用 IronPDF 将图像转换为 PDF

在 IronPDF 库中,使用 IronPdf.ImageToPdfConverter 类可以轻松地从一个或多个图像文件构建 PDF 文档。

// One or more images as IEnumerable.  This example selects all JPEG images in a specific folder.
var ImageFiles = System.IO.Directory.EnumerateFiles(@"C:\project\assets").Where(f => f.EndsWith(".jpg") 
 f.EndsWith(".jpeg"));

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

//Also see PdfDocument.RasterizeToImageFiles() method to flatten a PDF to images or thumbnails
// One or more images as IEnumerable.  This example selects all JPEG images in a specific folder.
var ImageFiles = System.IO.Directory.EnumerateFiles(@"C:\project\assets").Where(f => f.EndsWith(".jpg") 
 f.EndsWith(".jpeg"));

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

//Also see PdfDocument.RasterizeToImageFiles() method to flatten a PDF to images or thumbnails
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

8.2.使用 PDFCrowd 将图像转换为 PDF

PDFCrowd 还提供将图像转换为 PDF 的各种选项。它还提供了从 URL 转换图像的选项。以下代码展示了如何从本地存储将图像转换为 PDF。

// create the API client instance
pdfcrowd.ImageToPdfClient client = new pdfcrowd.ImageToPdfClient("your_username", "your_apikey");

// run the conversion and write the result to a file
client.convertFileToFile("/path/to/logo.png", "logo.pdf");
// create the API client instance
pdfcrowd.ImageToPdfClient client = new pdfcrowd.ImageToPdfClient("your_username", "your_apikey");

// run the conversion and write the result to a file
client.convertFileToFile("/path/to/logo.png", "logo.pdf");
' create the API client instance
Dim client As New pdfcrowd.ImageToPdfClient("your_username", "your_apikey")

' run the conversion and write the result to a file
client.convertFileToFile("/path/to/logo.png", "logo.pdf")
VB   C#

9.许可证发放

PDFCrowd 是一种在线从其他格式创建 PDF 文件的网络服务。它有不同的价格结构,最低价格为每月 11 美元,上限为 200 个信用点,其中 1 个信用点等于 0.5Mb 的输出数据。你也可以注册免费试用。详细价格可在这里查看 PDFCrowd 的定价页面.

另一方面,IronPDF 是一个 C# PDF 库。它可以免费用于开发,也可以随时授权用于商业部署。 提供许可证 适用于单个项目使用、单个开发人员、机构和跨国公司,以及 SaaS 和 OEM 再分发。所有许可证均包括:30 天退款保证、一年产品支持和更新、开发/分期/生产有效期以及永久许可证。 (一次性购买).精简版软件包的起价为 $749。IrondPDF 软件包是永久性的,没有持续性费用,而 PDFCrowd 则有持续性费用。

10.总结和结论

摘要

IronPDF 不会从远程服务器将 HTML 转换为 PDF。它实际上是在幕后启动一个真正符合标准的网络浏览器实例 (无需安装任何其他软件).HTML 的渲染是完全准确的,而且是矢量格式,适合最高标准的商业印刷。输出结果是干净、高质量的 PDF。它是公开的商业软件,许可和定价详情均在网站上公布。

PDFCrowd 还能将任何给定格式的 HTML 转换为 PDF,准确度极高,而且绝对不会停机,因为它在多个地点的云服务器上运行。PDFCrowd 是一个基于 Web 的 API,提供转换为 PDF 的在线服务。服务器端 API 客户端库使您可以轻松使用 Pdfcrowd HTML 至 PDF API。这些库可用于各种流行的服务器端编程语言。价格详情请见网站。

结论

与 PDFCrowd 相比,IronPDF 稍胜一筹,因为它安装后可以离线工作。强烈推荐务实的编码人员使用 IronPDF,以提高工作效率。最重要的是,它可以节省时间。PDFCrowd 在处理不同服务器端语言的 PDF 文件时非常有用。此外,IronPDF 软件包提供终身许可,没有持续成本,而 PDFCrowd 则有持续成本。

< 前一页
Accusoft Prizmdoc PDF 查看器教程和比较
下一步 >
IronPDF与Docraptor——全面比较

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

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