跳至页脚内容
使用IRONPDF

C#添加图像到PDF(开发者教程)

从开发者的角度来看,由于图像格式的多样性及其操作的复杂性,以编程方式将图像添加到PDF文档中是一项具有挑战性的任务。 因此,推荐使用IronPDF C#库以编程方式将图像添加到PDF文档中。 让我们探讨一下什么是IronPDF以及如何有效地使用它。

class="hsg-featured-snippet">

如何使用C#在PDF中添加图像

  1. 下载并安装IronPDF C#库
  2. 使用ReadAllBytes C#方法导入现有图像
  3. 将添加的图像转换为base-64数字
  4. 将图像数据传递到HTML字符串中的img标签
  5. 使用C#渲染并导出HTML到PDF文档中

探索 IronPDF 用于 PDF 管理 是一个为使用 C# 编程语言的开发人员提供的工具,允许他们在其应用程序内部直接创建、读取和编辑 PDF 文档。

IronPDF C#库是一个用C#编写的PDF库,主要针对PDF对象模型。 该库为开发者提供了一种创建、编辑和保存PDF文件的方法,而无需紧密依赖于特定的API,如Adobe的Acrobat。 在你不想使用Adobe Acrobat或其他单独的软件时,可以使用IronPDF C#库。

该库帮助开发者提供了许多工具用于创建、使用C#编辑PDF文件、保存PDF文件以及其他.NET PDF库无法提供的功能。 许多开发者更喜欢IronPDF C#库,因为它在Windows、Linux和macOS平台上提供了他们在PDF库中所需的一切,并且完全免费! IronPDF不断添加功能并扩展其服务,以使其成为满足您PDF需求的最佳工具。 该库不仅满足浏览、搜索、查找、从PDF文件中提取数据或创建PDF文件的基本要求,并超越这些需求。 让我们来看看如何使用IronPDF将图像添加到PDF文档中。

创建或打开C#项目

要向PDF文档中添加图像,推荐使用最新版本的Visual Studio创建C#项目以获得流畅的体验。

  • 打开Visual Studio。

如何在PDF中使用C#添加图像,图1:Visual Studio启动UI Visual Studio启动UI

  • 点击“创建新项目”按钮。
  • 从项目模板中选择“C#控制台应用程序”,然后点击下一步按钮。 你可以根据你的需要选择一个平台。

如何在PDF中使用C#添加图像,图2:在Visual Studio中创建控制台应用程序 在Visual Studio中创建控制台应用程序

  • 接下来,为你的项目命名并点击下一步按钮。
  • 选择目标.NET框架 >= .NET Core 3.1版本,并点击创建按钮。

按照上述步骤,你就可以轻松创建一个新的C#项目。 你可以使用已经存在的C#项目。 只需打开项目并安装IronPDF库。

安装IronPDF库

IronPDF库可以通过多种方式安装。

  • 使用NuGet包管理器
  • 使用包管理器控制台

使用 NuGet 包管理器

要使用NuGet包管理器安装库,请按照以下步骤操作:

  • 从主菜单选项中转到工具 > NuGet包管理器 > 为解决方案管理NuGet包

如何在PDF中使用C#添加图像,图3:导航到NuGet包管理器 导航到NuGet包管理器

  • 这将打开NuGet包管理器窗口。 转到浏览选项卡并搜索IronPDF。 选择IronPDF库并点击“安装”按钮。

如何在PDF中使用C#添加图像,图4:从NuGet包管理器安装IronPdf包 从NuGet包管理器安装IronPdf包

使用包管理器控制台

以下是使用控制台安装IronPDF库的步骤。

  • 转到包管理器控制台(通常位于Visual Studio的底部)。
  • 编写以下命令以开始安装IronPDF库。
Install-Package IronPdf

它将开始安装,你将能够看到安装的进度。 安装后,你可以很快在项目中使用IronPDF库。

如何在PDF中使用C#添加图像,图5:


库已安装,现在是为PDF文档添加图像编写代码的时候了。 首先导入IronPDF命名空间。 因此,在你的代码文件中写下以下行:

using IronPdf;
using IronPdf;
Imports IronPdf
$vbLabelText   $csharpLabel

将位图和图像添加到PDF文档中

使用IronPDF可以通过多种方式将图像添加到PDF文档中:使用直接图像文件、将图像转换为字节,或使用System.Drawing.Bitmap。 此外,IronPDF库支持多种图像格式。

让我们来看看:

using IronPdf;
using System.IO;
using System.Drawing;

class PDFImageAdder
{
    /* This method demonstrates how to convert an image file to a PDF document in C# */
    static void Main(string[] args)
    {
        // Initialize IronPdf Renderer
        var renderer = new IronPdf.ChromePdfRenderer();

        // Read the PNG image file into binary format
        var pngBinaryData = File.ReadAllBytes("embed_me.png");

        // Convert image binary data to base64 for embedding in HTML
        var ImgDataURI = "data:image/png;base64," + Convert.ToBase64String(pngBinaryData);

        // Embed the image as a base64 data URI in an HTML <img> tag
        var ImgHtml = $"<img src='{ImgDataURI}'>";

        // Render the HTML as a PDF document
        using var pdfdoc = renderer.RenderHtmlAsPdf(ImgHtml);

        // Save the rendered PDF document
        pdfdoc.SaveAs("embedded_example_1.pdf");
    }
}
using IronPdf;
using System.IO;
using System.Drawing;

class PDFImageAdder
{
    /* This method demonstrates how to convert an image file to a PDF document in C# */
    static void Main(string[] args)
    {
        // Initialize IronPdf Renderer
        var renderer = new IronPdf.ChromePdfRenderer();

        // Read the PNG image file into binary format
        var pngBinaryData = File.ReadAllBytes("embed_me.png");

        // Convert image binary data to base64 for embedding in HTML
        var ImgDataURI = "data:image/png;base64," + Convert.ToBase64String(pngBinaryData);

        // Embed the image as a base64 data URI in an HTML <img> tag
        var ImgHtml = $"<img src='{ImgDataURI}'>";

        // Render the HTML as a PDF document
        using var pdfdoc = renderer.RenderHtmlAsPdf(ImgHtml);

        // Save the rendered PDF document
        pdfdoc.SaveAs("embedded_example_1.pdf");
    }
}
Imports IronPdf
Imports System.IO
Imports System.Drawing

Friend Class PDFImageAdder
	' This method demonstrates how to convert an image file to a PDF document in C# 
	Shared Sub Main(ByVal args() As String)
		' Initialize IronPdf Renderer
		Dim renderer = New IronPdf.ChromePdfRenderer()

		' Read the PNG image file into binary format
		Dim pngBinaryData = File.ReadAllBytes("embed_me.png")

		' Convert image binary data to base64 for embedding in HTML
		Dim ImgDataURI = "data:image/png;base64," & Convert.ToBase64String(pngBinaryData)

		' Embed the image as a base64 data URI in an HTML <img> tag
		Dim ImgHtml = $"<img src='{ImgDataURI}'>"

		' Render the HTML as a PDF document
		Dim pdfdoc = renderer.RenderHtmlAsPdf(ImgHtml)

		' Save the rendered PDF document
		pdfdoc.SaveAs("embedded_example_1.pdf")
	End Sub
End Class
$vbLabelText   $csharpLabel

此程序将首先加载图像。在上面的代码中,ReadAllBytes函数将图像转换为字节格式。 之后,图像数据将被编码为base64并作为字符串放入HTML<img>标签中。 然后,使用RenderHtmlAsPdf方法函数将HTML字符串渲染为PDF。 它将在PDF文档中创建一个PDF页面。

下一个示例将展示如何在PDF文档中使用位图图像。 IronPDF具有一个有用的方法,可以将System.Drawing.Image嵌入到HTML文档中,然后可以将其渲染为PDF。 访问以下图像工具API以了解更多信息。 下面的代码将展示它是如何工作的:

using IronPdf;
using System.Drawing;

class PDFImageAdder
{
    static void Main(string[] args)
    {
        // Initialize IronPdf Renderer
        var renderer = new IronPdf.ChromePdfRenderer();

        // Create a Bitmap image
        Bitmap MyImage = new Bitmap("Path-to-Your-Image");

        // Convert the Bitmap image to a Data URI
        string DataURI = IronPdf.Util.ImageToDataUri(MyImage);

        // Embed the image as a Data URI in an HTML <img> tag
        var ImgHtml = $"<img src='{DataURI}'>";

        // Render the HTML to PDF
        using var pdfdoc2 = renderer.RenderHtmlAsPdf(ImgHtml);

        // Save the PDF document
        pdfdoc2.SaveAs("embedded_example_2.pdf");
    }
}
using IronPdf;
using System.Drawing;

class PDFImageAdder
{
    static void Main(string[] args)
    {
        // Initialize IronPdf Renderer
        var renderer = new IronPdf.ChromePdfRenderer();

        // Create a Bitmap image
        Bitmap MyImage = new Bitmap("Path-to-Your-Image");

        // Convert the Bitmap image to a Data URI
        string DataURI = IronPdf.Util.ImageToDataUri(MyImage);

        // Embed the image as a Data URI in an HTML <img> tag
        var ImgHtml = $"<img src='{DataURI}'>";

        // Render the HTML to PDF
        using var pdfdoc2 = renderer.RenderHtmlAsPdf(ImgHtml);

        // Save the PDF document
        pdfdoc2.SaveAs("embedded_example_2.pdf");
    }
}
Imports IronPdf
Imports System.Drawing

Friend Class PDFImageAdder
	Shared Sub Main(ByVal args() As String)
		' Initialize IronPdf Renderer
		Dim renderer = New IronPdf.ChromePdfRenderer()

		' Create a Bitmap image
		Dim MyImage As New Bitmap("Path-to-Your-Image")

		' Convert the Bitmap image to a Data URI
		Dim DataURI As String = IronPdf.Util.ImageToDataUri(MyImage)

		' Embed the image as a Data URI in an HTML <img> tag
		Dim ImgHtml = $"<img src='{DataURI}'>"

		' Render the HTML to PDF
		Dim pdfdoc2 = renderer.RenderHtmlAsPdf(ImgHtml)

		' Save the PDF document
		pdfdoc2.SaveAs("embedded_example_2.pdf")
	End Sub
End Class
$vbLabelText   $csharpLabel

在上面的代码中,ImageToDataUri函数用于将图像转换为URI格式。 然后使用RenderHtmlAsPdf函数在PDF文档中绘制图像。 这适用于多个图像。

Additionally, IronPDF is also capable of rendering charts in PDFs, adding barcodes to PDF documents, enhancing PDF security with passwords and watermarking PDF files, and even handling PDF forms programmatically.

许可

IronPDF是一个出色的PDF库,它帮助你创建和自定义PDF文件,今天就可以购买。 然而,IronPDF完全免费用于开发目的。 你也可以激活免费试用版用于生产而无需提供任何付款信息。 购买IronPDF后,Iron Software会为您提供一个很棒的优惠,只需两个价格即可购买五个Iron Software包。 是的! 你没听错——你可以以两个价格购买五个Iron Software产品套件。 快来购买吧! 访问IronPDF许可页面了解更多详情。

常见问题解答

如何使用 C# 将图像添加到 PDF 中?

您可以通过将图像转换为 base64 格式,嵌入到 HTML  related to 如何使用 C# 将图像添加到 PDF 中? 标签中,并使用 IronPDF 的 RenderHtmlAsPdf 方法将 HTML 转换为 PDF,从而在 C# 中向 PDF 添加图像。

设置一个 C# 项目以添加图像到 PDF 的步骤是什么?

要设置一个 C# 项目以添加图像到 PDF,请打开 Visual Studio,创建一个新的 C# 控制台应用程序,并确保您的项目目标为 .NET Framework 版本 3.1 或更高版本。通过 NuGet 包管理器或包管理器控制台安装 IronPDF 库。

如何在 C# 中将图像转换为 base64 以嵌入 PDF?

在 C# 中,您可以通过将图像文件读取为字节数组,然后使用 Convert.ToBase64String 进行转换,来将图像转换为 base64。此 base64 字符串可以嵌入在 HTML  related to 如何在 C# 中将图像转换为 base64 以嵌入 PDF? 标签中,以便使用 IronPDF 进行 PDF 转换。

PDF 支持哪种图像格式嵌入?

IronPDF 支持多种图像格式,允许您在 PDF 文档中嵌入各种类型的图像,包括 JPEG、PNG 和 BMP。

使用 C# 在 PDF 中嵌入 Bitmap 图像的方法是什么?

要使用 C# 在 PDF 中嵌入 Bitmap 图像,请使用 ImageToDataUri 函数将 Bitmap 转换为数据 URI,嵌入到 HTML  related to 使用 C# 在 PDF 中嵌入 Bitmap 图像的方法是什么? 标签中,然后使用 IronPDF 的 RenderHtmlAsPdf 方法将其渲染为 PDF。

如何在嵌入图像的同时增强 PDF 的安全性?

IronPDF 提供了增强 PDF 安全性的功能,例如添加密码和权限。这可以在嵌入图像的同时通过在 PDF 创建过程中设置安全选项来完成。

我可以在与图像同时将图表和条形码添加到 PDF 吗?

可以,IronPDF 允许您将图表和条形码添加到 PDF 中,除了图像之外。这些元素可以使用 HTML 和 CSS 创建和渲染,然后使用 IronPDF 转换为 PDF。

IronPDF的许可选项是什么?

IronPDF 提供免费试用版本供开发使用,并有成本效益的许可选项可供更广泛使用。更多信息可在 IronPDF 授权页面上找到。

如何使用包管理器控制台安装 IronPDF?

要使用包管理器控制台安装 IronPDF,请使用命令 Install-Package IronPdf

IronPDF 与 .NET 10 兼容吗?

是的——IronPDF 完全兼容 .NET 10,以及更早的版本,包括 .NET 9、8、7、6、.NET Core、.NET Standard 和 .NET Framework。

Curtis Chau
技术作家

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

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