如何使用IronPDF在 C# 中為 PDF 新增圖像(圖片轉PDF)
IronPDF透過將包含圖像標籤的 HTML 轉換為 PDF 文檔,實現圖片轉PDF功能,將圖像直接嵌入到 PDF 中,創建無需外部依賴或互聯網連接即可顯示圖像的獨立文件。
快速入門:輕鬆將圖像嵌入 PDF 文件
開始使用IronPDF在.NET C# 中將影像嵌入 PDF 檔案。 將圖片轉換為 Base64 字串,並將其嵌入 HTML <img> 標籤中,即可產生無需外部文件的獨立 PDF。 此方法可確保您的圖片無需連網即可顯示。
-
使用NuGet套件管理器安裝https://www.nuget.org/packages/IronPdf
PM > Install-Package IronPdf -
複製並運行這段程式碼。
new IronPdf.ChromePdfRenderer() .RenderHtmlAsPdf("<img src='data:image/png;base64," + Convert.ToBase64String(File.ReadAllBytes("logo.png")) + "'>") .SaveAs("image-embedded.pdf"); -
部署到您的生產環境進行測試
今天就在您的專案中開始使用免費試用IronPDF
最簡工作流程(5個步驟)
- 下載IronPDF C# 庫
- 準備要嵌入的圖像文件
- 使用`img`標籤在 HTML 中嵌入圖像。
- 使用`RenderHtmlAsPdf`方法將 HTML 渲染為 PDF
- 使用 Base64 編碼嵌入影像
如何在PDF中嵌入圖片?
若要將影像嵌入 PDF 中,請先使用 <img> 標籤將影像包含在 HTML 中。 然後使用 RenderHtmlAsPdf 方法將 HTML 轉換為 PDF。 如果您已有 PDF 文件,可以使用圖像蓋印工具或 HTML 蓋印工具教學將圖像蓋印到 PDF 文件上。 此方法適用於 IronPDF 的Chrome 渲染引擎。
為什麼 RenderHtmlAsPdf 方法效果最佳?
RenderHtmlAsPdf 方法利用 IronPDF 的 Chrome 渲染引擎將 HTML 內容(包括圖像)轉換為 PDF 格式,同時保留佈局和樣式。 此方法支援響應式 CSS 佈局,並確保圖像在 Web 瀏覽器中呈現效果與實際顯示效果一致。 對於複雜的佈局,請參閱我們的像素級完美 HTML 格式指南。
支援哪些圖像格式?
IronPDF支援所有主流影像格式,包括 PNG、JPG、SVG、GIF 和 BMP,可透過 HTML 轉換嵌入。 該函式庫能夠有效地處理SVG 圖形,實現可縮放的向量插圖。 使用不同格式時,請確保 HTML 在 src 屬性或 Base64 資料 URI 中正確指定影像類型。
何時應該使用直接URL,何時應該使用Base64編碼?
當圖片託管在網路上且檔案大小是考慮因素時,請使用直接 URL。 對於不需要網路存取的獨立 PDF 文件,請選擇 Base64 編碼。 儲存在雲端服務中的映像,請參閱我們關於嵌入 Azure Blob 儲存影像的指南。 此決定會影響所產生 PDF 檔案的大小和便攜性。
:path=/static-assets/pdf/content-code-examples/how-to/add-images-to-pdfs-embed-image.cs
using IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
string html = @"<img src='https://ironsoftware.com/img/products/ironpdf-logo-text-dotnet.svg'>";
// Render HTML to PDF
PdfDocument pdf = renderer.RenderHtmlAsPdf(html);
// Export PDF
pdf.SaveAs("embedImage.pdf");
Imports IronPdf
Private renderer As New ChromePdfRenderer()
Private html As String = "<img src='https://ironsoftware.com/img/products/ironpdf-logo-text-dotnet.svg'>"
' Render HTML to PDF
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf(html)
' Export PDF
pdf.SaveAs("embedImage.pdf")
如何使用 Base64 嵌入圖片?
要在 HTML 中使用 Base64 編碼嵌入圖像,首先需要讀取圖像檔案或透過網路請求來獲取圖像的二進位資料。然後,使用.NET中的 Convert.ToBase64String 方法將二進位資料轉換為 Base64 編碼。最後,在 HTML 中,使用 data:image/svg+xml;base64 來建構圖像標籤,並將 Base64 資料放在標籤之前。 請注意,影像類型是在 Base64 資料之前指定的。 請造訪MDN Web Docs 上的"影像格式"頁面,以了解更多關於影像格式類型的資訊。
為什麼影像要使用 Base64 編碼?
Base64 編碼建立獨立的 PDF 文件,不依賴外部資源,確保影像在沒有網路連線或原始影像檔案被移動或刪除時也能始終顯示。 在Blazor Server 應用程式中建立 PDF或部署到 Azure (外部文件存取可能受到限制)時,此技術非常有用。 編碼後的圖像成為 HTML 字串的一部分,因此非常適合將HTML 字串轉換為 PDF 。
性能方面需要考慮哪些因素?
Base64 編碼會使檔案大小增加約 33%,但消除了外部依賴項,因此非常適合用於歸檔或受限的網路環境。 當效能至關重要時,可以考慮使用非同步 PDF 生成來同時處理多個影像轉換。 對於大規模操作,請參閱我們的效能最佳化指南,以最大限度地提高吞吐量。
如何處理大型影像檔案?
對於較大的圖像,在進行 Base64 編碼之前對其進行壓縮,以最大限度地減小 PDF 文件大小;或者,如果文件大小至關重要,則使用外部 URL。 IronPDF提供PDF 壓縮功能,可將檔案大小減少高達 75%。 處理多張影像時,請優化渲染設置,以在品質和檔案大小之間取得最佳平衡。
:path=/static-assets/pdf/content-code-examples/how-to/add-images-to-pdfs-base64-image.cs
using IronPdf;
using System;
using System.IO;
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Import image file binary data
byte[] binaryData = File.ReadAllBytes("ironpdf-logo-text-dotnet.svg");
// Convert the binary data to base 64
string imgDataUri = Convert.ToBase64String(binaryData);
// Embed in HTML
string html = $"<img src='data:image/svg+xml;base64,{imgDataUri}'>";
// Convert HTML to PDF
PdfDocument pdf = renderer.RenderHtmlAsPdf(html);
// Export the PDF
pdf.SaveAs("embedImageBase64.pdf");
Imports IronPdf
Imports System
Imports System.IO
Private renderer As New ChromePdfRenderer()
' Import image file binary data
Private binaryData() As Byte = File.ReadAllBytes("ironpdf-logo-text-dotnet.svg")
' Convert the binary data to base 64
Private imgDataUri As String = Convert.ToBase64String(binaryData)
' Embed in HTML
Private html As String = $"<img src='data:image/svg+xml;base64,{imgDataUri}'>"
' Convert HTML to PDF
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf(html)
' Export the PDF
pdf.SaveAs("embedImageBase64.pdf")
準備好要看看你還能做什麼了嗎? 請造訪我們的教學頁面:附加功能
常見問題解答
如何在 C# 中將影像新增至 PDF 文件?
使用 IronPDF,您可以在 PDF 中添加圖片,方法是使用 標籤將圖片包含在 HTML 中,然後再使用 RenderHtmlAsPdf 方法將 HTML 轉換為 PDF。這種方法利用了 IronPDF 的 Chrome 渲染引擎來精確地渲染 PDF 文件中的圖像。
我可以在 PDF 中嵌入哪些圖片格式?
透過 HTML 轉換嵌入時,IronPDF 支援所有主要的圖像格式,包括 PNG、JPG、SVG、GIF 和 BMP。對於可縮放的向量插圖,該圖庫對 SVG 圖形的處理尤其出色,可確保您的圖像在生成的 PDF 中正確呈現。
圖片應該使用直接 URL 還是 Base64 編碼?
當圖片在線上託管且檔案大小是一個考量時,請使用直接 URL。使用 IronPDF 創建不需要網際網路存取的獨立 PDF 時,請選擇 Base64 編碼。Base64 編碼可確保您的 PDF 能夠顯示影像,而無需外部依賴。
我可以在現有的 PDF 檔案中加入圖片嗎?
是的,IronPDF 允許您使用圖片疊印器或 HTML 疊印器將圖片添加到現有的 PDF 中。此功能可讓您在現有 PDF 文件中的特定頁面或位置覆蓋圖片。
如何將影像轉換為 Base64 以嵌入 PDF?
將您的圖片轉換成 Base64 字串,並使用資料 URI 直接嵌入 HTML 標籤中。然後 IronPDF 的 RenderHtmlAsPdf 方法會處理這個 Base64 編碼的圖片,並將其嵌入您的 PDF 中,建立一個自成一格的文件。
圖片嵌入是否會保留 CSS 的樣式與版面設計?
是的,IronPDF 的 Chrome 渲染引擎可在將帶有圖片的 HTML 轉換為 PDF 時保留 CSS 布局和樣式。該函式庫支援回應式 CSS 佈局,可確保圖片呈現的效果與在網頁瀏覽器中顯示的一模一樣。

