如何在 C# 中将图像添加到 PDF

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

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronPDF 通过将包含图像标记的 HTML 转换为 PDF 文档,实现了将图像直接嵌入 PDF 的功能,从而创建了无需外部依赖性或互联网连接即可显示图像的独立文件。

快速入门:轻松将图像嵌入PDF

使用 IronPDF for .NET C# 开始在 PDF 文件中嵌入图像。 将图像转换为 Base64 字符串并嵌入 HTML <img> 标记,生成无需外部文件的自包含 PDF。 这种方法可确保您的图像在没有互联网接入的情况下也能显示。

Nuget Icon立即开始使用 NuGet 创建 PDF 文件:

  1. 使用 NuGet 包管理器安装 IronPDF

    PM > Install-Package IronPdf

  2. 复制并运行这段代码。

    new IronPdf.ChromePdfRenderer()
         .RenderHtmlAsPdf("<img src='data:image/png;base64," + Convert.ToBase64String(File.ReadAllBytes("logo.png")) + "'>")
         .SaveAs("image-embedded.pdf");
  3. 部署到您的生产环境中进行测试

    立即开始在您的项目中使用 IronPDF,免费试用!
    arrow pointer


如何在 PDF 中嵌入图片? <!--说明:说明代码概念的图表或截图 --> 要在 PDF 中嵌入图片,首先要使用 ` related to 如何使用 IronPDF 在 C## 中为 PDF 添加图像。` 标记将图片包含在 HTML 中。 然后使用 `RenderHtmlAsPdf` 方法将 HTML 转换为 PDF。 如果您已有 PDF 文档,请使用 [图像标注器或 HTML 标注器教程](/how-to/自定义水印/)将图像标注到 PDF 文档上。 这种方法可与 IronPdf 的[Chrome 渲染引擎](https://ironpdf.com/how-to/ironpdf-2021-chrome-rendering-engine-eap/)配合使用。

为什么 RenderHtmlAsPdf 方法效果最好? `RenderHtmlAsPdf` 方法利用 IronPDF 的 Chrome 渲染引擎将 HTML 内容(包括图片)转换为 PDF 格式,同时保留布局和样式。 这种方法支持[响应式 CSS 布局](https://ironpdf.com/how-to/html-to-pdf-responsive-css/),并确保图片能像在网络浏览器中显示的那样呈现。 对于复杂的布局,请参阅我们的[像素完美的 HTML 格式化](https://ironpdf.com/tutorials/pixel-perfect-html-to-pdf/)指南。

支持哪些图像格式? 通过 HTML 转换嵌入时,IronPDF 支持所有主流图像格式,包括 PNG、JPG、SVG、GIF 和 BMP。 该库可有效处理 [SVG 图形](https://ironpdf.com/how-to/SVGs/),用于可缩放的矢量插图。 在使用不同格式时,请确保您的 HTML 在 `src` 属性或 Base64 数据 URI 中正确指定了图像类型。

何时应使用直接 URL 与 Base64 编码? 如果图片是在线托管的,且文件大小是个问题,请使用直接 URL。 对于不需要互联网访问的独立 PDF,请选择 Base64 编码。 对于存储在云服务中的图像,请参阅我们的[从 Azure Blob Storage 嵌入图像](https://ironpdf.com/how-to/images-azure-blob-storage/)指南。 这一决定会影响生成 PDF 的文件大小和可移植性。 ```csharp :path=/static-assets/pdf/content-code-examples/how-to/add-images-to-pdfs-embed-image.cs ```
--> <!--说明:说明代码概念的图表或截图 -->

如何使用 Base64 嵌入图片? 要使用 Base64 在 HTML 中嵌入图像,首先要通过读取图像文件或通过网络请求接收图像来获取图像的二进制数据。使用 .NET 中的 `Convert.ToBase64String` 方法将二进制数据转换为 Base64。在 Base64 数据前使用 "data:image/svg+xml;base64 "来构建 HTML 中的图像标记。 请注意,图像类型是在 Base64 数据之前指定的。 访问[MDN Web文档上的图像格式类型](https://developer.mozilla.org/en-US/docs/Web/Media/Formats/Image_types)以获取有关图像格式类型的更多信息。

为什么对图像使用 Base64 编码? Base64 编码可创建不依赖外部资源的独立 PDF,确保在没有互联网连接或原始图像文件被移动或删除的情况下始终显示图像。 当[在 Blazor Server 应用程序中创建 PDF](https://ironpdf.com/how-to/blazor-tutorial/) 或[部署到外部文件访问可能受限的 Azure](https://ironpdf.com/how-to/azure/) 时,此技术非常有用。 编码后的图像成为 HTML 字符串的一部分,因此非常适合 [HTML 字符串到 PDF 的转换](https://ironpdf.com/how-to/html-string-to-pdf/)。

性能考虑因素有哪些? Base64 编码会使文件大小增加约 33%,但消除了外部依赖性,因此非常适合存档或受限制的网络环境。 当性能至关重要时,可考虑使用 [async PDF 生成](https://ironpdf.com/how-to/async/)来并发处理多个图像转换。 对于大规模操作,请参阅我们的[性能优化指南](https://ironpdf.com/tutorials/pdf-assets-and-performance-csharp/),以最大限度地提高吞吐量。

如何处理大型图像文件? <!--说明:说明代码概念的图表或截图 --> 对于大型图片,请在进行 Base64 编码之前对其进行压缩,以尽量减小 PDF 文件的大小,如果文件大小至关重要,则使用外部 URL。 IronPDF 提供[PDF压缩](https://ironpdf.com/how-to/pdf-compression/)功能,可将文件大小缩小 75%。 在处理多张图片时,[请优化您的渲染设置](https://ironpdf.com/how-to/rendering-options/),以实现质量和文件大小之间的最佳平衡。 ```csharp :path=/static-assets/pdf/content-code-examples/how-to/add-images-to-pdfs-base64-image.cs ``` 准备好看看您还能做些什么吗? 点击此处查看我们的教程页面:[附加功能](https://ironpdf.com/tutorials/pdf-assets-and-performance-csharp/)。

常见问题解答

如何用 C# 在 PDF 文档中添加图像?

使用 IronPDF,您可以通过使用  related to 如何用 C# 在 PDF 文档中添加图像? 标签将图片包含在 HTML 中,然后使用 RenderHtmlAsPdf 方法将 HTML 转换为 PDF,从而将图片添加到 PDF 中。这种方法利用了 IronPDF 的 Chrome 渲染引擎,可以准确地渲染 PDF 文档中的图片。

我可以在 PDF 中嵌入哪些图片格式?

通过 HTML 转换嵌入时,IronPDF 支持所有主流图像格式,包括 PNG、JPG、SVG、GIF 和 BMP。对于可缩放的矢量插图,该库能很好地处理 SVG 图形,确保您的图像能在生成的 PDF 中正确呈现。

图片应该使用直接 URL 还是 Base64 编码?

如果图片是在线托管的,且文件大小是个问题,请使用直接 URL。在创建不需要互联网访问的独立 PDF 时,选择 IronPDF 的 Base64 编码。Base64 编码可确保您的 PDF 显示图像而无需外部依赖性。

能否在现有 PDF 文件中添加图像?

是的,IronPDF 允许您使用图像标注器或 HTML 标注器为现有 PDF 添加图像。此功能可让您将图像覆盖到现有 PDF 文档中的特定页面或位置。

如何将图像转换为 Base64 以便嵌入 PDF?

将图片转换为 Base64 字符串,并使用数据 URI 直接嵌入 HTML  related to 如何将图像转换为 Base64 以便嵌入 PDF? 标签。然后,IronPDF 的 RenderHtmlAsPdf 方法将处理该 Base64 编码图像,并将其嵌入到您的 PDF 中,创建一个自包含的文档。

图片嵌入是否保留 CSS 样式和布局?

是的,IronPdf 的 Chrome 渲染引擎在将带图片的 HTML 转换为 PDF 时会保留 CSS 布局和样式。该库支持响应式 CSS 布局,可确保图片完全按照在网页浏览器中的显示效果呈现。

Curtis Chau
技术作家

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

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

审核者
Jeff Fritz
Jeffrey T. Fritz
首席项目经理 - .NET 社区团队
Jeff 也是 .NET 和 Visual Studio 团队的首席项目经理。他是 .NET Conf 虚拟会议系列的执行制片人,并主持“Fritz and Friends”直播节目,每周两次与观众一起谈论技术并编写代码。Jeff 撰写研讨会、演示文稿并计划包括 Microsoft Build、Microsoft Ignite、.NET Conf 和 Microsoft MVP 峰会在内的最大型微软开发者活动的内容。
准备开始了吗?
Nuget 下载 17,012,929 | 版本: 2025.12 刚刚发布