产品比较

探索在.NET中将图像添加到PDF的最佳替代方案

雷根·彭
雷根·彭
2025年三月27日
分享:

在.NET环境中处理PDF文件时,向文档中添加图像是许多应用程序的常见要求。 无论您是在生成发票、报告,还是自定义文档,将图片嵌入PDF的功能都是必不可少的。 C#中最流行的两个PDF库是IronPDFiTextSharp。 在本文中,我们将比较这两个库在将图像添加到PDF方面的能力,考虑易用性、性能、许可和功能。

IronPDF和iTextSharp之间的主要区别

与添加图像相关的功能

  • IronPDF:IronPDF 使向 PDF 添加图像变得容易,内置支持嵌入本地和远程图像。 其API允许对图像在文档中的位置、原始宽度和缩放进行精细控制。

    iTextSharp:iTextSharp 还提供嵌入图像的功能。 它提供了一个灵活而强大的 API,可以处理各种图像类型,包括 JPG 和 PNG。 然而,这可能需要更多的代码行来进行自定义,特别是在定位或调整图像大小时。

性能考虑事项

  • IronPDF: 以高效著称,IronPDF 能够流畅地处理大型 PDF 和图像。 在生成或修改嵌入图形的PDF文件时,其性能尤为突出,这使得它成为需要高性能的服务器应用程序的理想选择。

    iTextSharp:虽然iTextSharp是一个可靠的库,但在某些情况下,它可能会比较慢,特别是在处理大文件或复杂图像操作时。 然而,它仍然适用于大多数应用程序。

许可和定价模式

  • IronPDF: IronPDF 提供永久许可证,这意味着一次性购买即可无限期使用。 这对于想要避免重复订阅费用的开发人员来说是理想的。

    iTextSharp:iTextSharp 在开源使用下根据 AGPL(Affero通用公共许可证)运作,这意味着如果您在项目中使用它,必须发布您的源代码,或者您可以选择商业许可证以避免这种情况。

使用IronPDF将图像添加到PDF

在您的 C# 项目中设置 IronPdf

在添加图像之前,您需要在最新版本的 C# 或 Visual Basic 项目中安装 IronPDF。 您可以通过 NuGet 完成这项工作:

Install-Package IronPdf
Install-Package IronPdf

安装后,您可以开始将图像添加到您的PDF文档中。

使用 IronPDF 向 PDF 中添加图像:代码示例

以下代码示例演示了如何使用IronPDF将图像添加到PDF:

using IronPdf;
using IronPdf.Editing;
class Program
{
    public static void Main(string[] args)
    {
        ChromePdfRenderer renderer = new ChromePdfRenderer();
        PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
        ImageStamper stamper = new ImageStamper(new Uri("https://ironpdf.com/img/svgs/iron-pdf-logo.svg"));
        pdf.ApplyStamp(stamper);
        pdf.SaveAs("output.pdf");
    }
}
using IronPdf;
using IronPdf.Editing;
class Program
{
    public static void Main(string[] args)
    {
        ChromePdfRenderer renderer = new ChromePdfRenderer();
        PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
        ImageStamper stamper = new ImageStamper(new Uri("https://ironpdf.com/img/svgs/iron-pdf-logo.svg"));
        pdf.ApplyStamp(stamper);
        pdf.SaveAs("output.pdf");
    }
}

探索在.NET中将图像添加到PDF的最佳替代方案:图1

在此示例中,我们首先使用 ChromePdfRenderer 类从 HTML 字符串中渲染一个新的 DOC。 然后,使用IronPDF的图像盖章工具,我们从提供的字符串URL创建一个新图像并将其应用到PDF。 此示例演示了如何使用IronPDF仅用几行代码就能将图像添加到PDF页面中。

自定义图像位置和大小

IronPDF在图像放置方面提供了广泛的自定义选项。 您可以通过加盖工具的定位功能设置图像的对齐和偏移来指定您希望图像在页面上的位置。

使用iTextSharp将图像添加到PDF中

在您的 C# 项目中设置 iTextSharp

要开始使用iTextSharp,您需要通过NuGet安装该库:

Install-Package itext7
Install-Package itext7

设置完成后,您可以继续向PDF添加图像。

使用 iTextSharp 将图像添加到 PDF:代码示例

下面是如何使用iTextSharp插入图像的示例:

using iText.Kernel.Pdf;
using iText.Layout;
using iText.Layout.Element;
using iText.IO.Image;
class Program
{
    public static void Main(string[] args)
    {
        var pdfWriter = new PdfWriter("output.pdf");
        var pdfDocument = new iText.Kernel.Pdf.PdfDocument(pdfWriter);
        var document = new Document(pdfDocument);
        ImageData imageData = ImageDataFactory.Create("iText.png");
        Image image = new Image(imageData);
        image.SetFixedPosition(50, 100);  // x, y coordinates
        image.ScaleToFit(200, 200);  // Width, Height
        document.Add(image);
        document.Close();
    }
}
using iText.Kernel.Pdf;
using iText.Layout;
using iText.Layout.Element;
using iText.IO.Image;
class Program
{
    public static void Main(string[] args)
    {
        var pdfWriter = new PdfWriter("output.pdf");
        var pdfDocument = new iText.Kernel.Pdf.PdfDocument(pdfWriter);
        var document = new Document(pdfDocument);
        ImageData imageData = ImageDataFactory.Create("iText.png");
        Image image = new Image(imageData);
        image.SetFixedPosition(50, 100);  // x, y coordinates
        image.ScaleToFit(200, 200);  // Width, Height
        document.Add(image);
        document.Close();
    }
}

探索在.NET中向PDF添加图像的最佳替代方案:图2

在此示例中,图像被添加在坐标(50, 100),并缩放以适应200x200像素区域内。 PdfWriter用于创建输出文件,使得可以操作pdfwriter编写器功能以处理图像。

自定义图像位置和大小

iTextSharp 提供了对图像定位和大小的更多控制。您可以在保持纵横比的同时缩放图像,或将其拉伸到特定尺寸。 SetFixedPosition 方法提供了对位置的精确控制,您还可以调整图像的对齐和旋转。

性能比较:IronPDF与iTextSharp

在性能方面,这两个库都可以处理将图像添加到PDF的任务,但它们有一些不同之处:

  • IronPDF 已针对性能进行了优化,可以有效处理包含多张图像的大型文档。 它在渲染 PDF 时更快,特别是对于需要大量图形内容的文档。
  • iTextSharp 提供了良好的性能,但在处理非常大的PDF或大量高分辨率图像时可能会遇到困难。 尽管它仍然相当高效,但一些开发人员报告说,与IronPDF相比,在更复杂的使用场景中渲染时间更长。

许可和定价模式

  • IronPDF:IronPDF 提供简单的永久许可证,只需一次性购买。 这对不想处理持续成本或开源许可要求的开发人员有利。
  • iTextSharp:iTextSharp 遵循 AGPL 许可证,对于开源项目是免费使用的,但要求如果该库用于 web 应用程序,则必须公开源代码。 针对商业用途,iTextSharp提供付费商业许可证以避免AGPL限制。

结论

探索在.NET中将图像添加到PDF的最佳替代方案:图3 - 比较总结表

IronPDF和iTextSharp都提供用于在C#中向PDF添加图像的强大工具,但它们各有不同的优势。 IronPDF 以其易用性、性能和许可的灵活性而脱颖而出,使其成为开发人员想要用更少的代码处理复杂 PDF 和图像的理想选择。 它还为大型PDF提供更好的可扩展性,并提供一次性购买的许可模式,避免了重复成本或复杂的开源许可限制。

另一方面,iTextSharp 可能是开源项目的不错选择,尽管它可能需要更多代码才能达到相同的效果,并且在处理较大PDF文件时可能面临性能问题。

准备简化您的PDF图像处理吗? IronPDF 提供了一种无缝且高效的体验,只需几行代码即可将图像添加到您的PDF中。 尝试IronPDF,看看将图像支持集成到您的C#项目中有多么容易。 使用IronPDF,您将节省时间,降低复杂性,并增强您的PDF生成工作流程。

雷根·彭
软件工程师
Regan毕业于雷丁大学,拥有电子工程学士学位。在加入Iron Software之前,他的前工作职位要求他专注于单一任务;他在Iron Software最喜欢的是能进行多种工作,无论是增加销售价值、技术支持、产品开发还是营销。他喜欢了解开发人员如何使用Iron Software的库,并利用这些知识不断改进文档和开发产品。
< 前一页
探索为 PDFsharp 添加水印到 PDF 的最佳替代方案
下一步 >
探索 PDFsharp 的最佳 PDF 转图像替代方案