在生产环境中测试,无水印。
随时随地满足您的需求。
获得30天的全功能产品。
几分钟内就能启动并运行。
在您的产品试用期间,全面访问我们的支持工程团队。
在.NET环境中处理PDF文件时,向文档中添加图像是许多应用程序的常见要求。 无论您是在生成发票、报告,还是自定义文档,将图片嵌入PDF的功能都是必不可少的。 C#中最流行的两个PDF库是IronPDF和iTextSharp。 在本文中,我们将比较这两个库在将图像添加到PDF方面的能力,考虑易用性、性能、许可和功能。
IronPDF:IronPDF 使向 PDF 添加图像变得容易,内置支持嵌入本地和远程图像。 其API允许对图像在文档中的位置、原始宽度和缩放进行精细控制。
iTextSharp:iTextSharp 还提供嵌入图像的功能。 它提供了一个灵活而强大的 API,可以处理各种图像类型,包括 JPG 和 PNG。 然而,这可能需要更多的代码行来进行自定义,特别是在定位或调整图像大小时。
IronPDF: 以高效著称,IronPDF 能够流畅地处理大型 PDF 和图像。 在生成或修改嵌入图形的PDF文件时,其性能尤为突出,这使得它成为需要高性能的服务器应用程序的理想选择。
iTextSharp:虽然iTextSharp是一个可靠的库,但在某些情况下,它可能会比较慢,特别是在处理大文件或复杂图像操作时。 然而,它仍然适用于大多数应用程序。
IronPDF: IronPDF 提供永久许可证,这意味着一次性购买即可无限期使用。 这对于想要避免重复订阅费用的开发人员来说是理想的。
iTextSharp:iTextSharp 在开源使用下根据 AGPL(Affero通用公共许可证)运作,这意味着如果您在项目中使用它,必须发布您的源代码,或者您可以选择商业许可证以避免这种情况。
在添加图像之前,您需要在最新版本的 C# 或 Visual Basic 项目中安装 IronPDF。 您可以通过 NuGet 完成这项工作:
Install-Package IronPdf
Install-Package 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");
}
}
在此示例中,我们首先使用 ChromePdfRenderer 类从 HTML 字符串中渲染一个新的 DOC。 然后,使用IronPDF的图像盖章工具,我们从提供的字符串URL创建一个新图像并将其应用到PDF。 此示例演示了如何使用IronPDF仅用几行代码就能将图像添加到PDF页面中。
IronPDF在图像放置方面提供了广泛的自定义选项。 您可以通过加盖工具的定位功能设置图像的对齐和偏移来指定您希望图像在页面上的位置。
要开始使用iTextSharp,您需要通过NuGet安装该库:
Install-Package itext7
Install-Package itext7
设置完成后,您可以继续向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();
}
}
在此示例中,图像被添加在坐标(50, 100),并缩放以适应200x200像素区域内。 PdfWriter用于创建输出文件,使得可以操作pdfwriter编写器功能以处理图像。
iTextSharp 提供了对图像定位和大小的更多控制。您可以在保持纵横比的同时缩放图像,或将其拉伸到特定尺寸。 SetFixedPosition 方法提供了对位置的精确控制,您还可以调整图像的对齐和旋转。
在性能方面,这两个库都可以处理将图像添加到PDF的任务,但它们有一些不同之处:
IronPDF和iTextSharp都提供用于在C#中向PDF添加图像的强大工具,但它们各有不同的优势。 IronPDF 以其易用性、性能和许可的灵活性而脱颖而出,使其成为开发人员想要用更少的代码处理复杂 PDF 和图像的理想选择。 它还为大型PDF提供更好的可扩展性,并提供一次性购买的许可模式,避免了重复成本或复杂的开源许可限制。
另一方面,iTextSharp 可能是开源项目的不错选择,尽管它可能需要更多代码才能达到相同的效果,并且在处理较大PDF文件时可能面临性能问题。
准备简化您的PDF图像处理吗? IronPDF 提供了一种无缝且高效的体验,只需几行代码即可将图像添加到您的PDF中。 尝试IronPDF,看看将图像支持集成到您的C#项目中有多么容易。 使用IronPDF,您将节省时间,降低复杂性,并增强您的PDF生成工作流程。