IRONSOFTWAREHOME

將SVG轉換為C#中的PDF

Curtis Chau
Curtis Chau
Updated: 2026年6月4日

IronPDF使用HTML到PDF的方法將SVG圖形轉換為PDF文件 - 將您的SVG嵌入到height樣式以確保正確呈現。

IronPDF支援通過HTML到PDF的方法將SVG圖形渲染到PDF文件中。 SVG(可縮放矢量圖形)文件因其可縮放性和在任何大小下清晰的渲染而被廣泛用於標誌、圖標、插圖和圖表。將SVG轉換為PDF對於建立列印就緒文件、存檔目的以及確保在不同平台上的一致顯示很重要。

注意:在嵌入SVG時設定height樣式屬性,否則它可能會縮小到零大小並不會在渲染的PDF中出現。

快速入門:輕鬆將SVG轉換為PDF

使用IronPDF在C#中將SVG文件轉換為PDF。 此程式碼片段展示了通過HTML img 標籤嵌入SVG的指定尺寸,這是成功渲染的關鍵步驟。 遵循本指導以快速實現,確保您的SVG被準確渲染並保存為PDF。

  1. 1Install IronPDF with NuGet Package Manager

    PM > Install-Package IronPdf

  2. 2複製並運行這段程式碼片段。

    new IronPdf.ChromePdfRenderer { RenderingOptions = { WaitFor = IronPdf.Rendering.WaitFor.RenderDelay(1000) } }
        .RenderHtmlAsPdf("<img src='https://example.com/logo.svg' style='width:100px;height:100px;'>")
        .SaveAs("svgToPdf.pdf");
    C#
  3. 3部署以在您的實時環境中測試

    今天就開始在您的專案中使用IronPDF,透過免費試用
    arrow pointer

如何以正確的大小將SVG渲染為PDF?

許多瀏覽器容忍沒有大小規格的SVG; 然而,我們的渲染引擎需要它們。 IronPDF使用的Chrome渲染引擎需要有明確的尺寸以正確渲染SVG元素。 如果未指定尺寸,則SVG可能不會出現在最終的PDF中,或者可能會以預期之外的尺寸渲染。

在IronPDF中處理SVG時,您有多種選擇以確保正確渲染:

  1. 具有樣式屬性的內聯SVG:直接在樣式屬性中新增height
  2. 外部SVG文件:通過URL或本地文件路徑參考SVG文件
  3. Base64編碼的SVG:將SVG直接作為Base64字串嵌入在HTML中

欲了解更多高級HTML渲染選項,請參閱我們的渲染選項綜合指南。

using IronPdf;

string html = "<img src='https://ironsoftware.com/img/svgs/new-banner-svg.svg' style='width:100px'>";

ChromePdfRenderer renderer = new ChromePdfRenderer();
renderer.RenderingOptions.WaitFor.RenderDelay(1000);

PdfDocument pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("svgToPdf.pdf");

生成的PDF長什麼樣?

此外,或作為替代方案,SVG節點可能已分配明確的height屬性。 另見CodePen上的SVG樣式範例

將SVG渲染到PDF範例

使用本地SVG文件

在將本地SVG文件轉換為PDF時,請使用文件路徑方法。 此方法適用於儲存在您項目中的SVG資產:

using IronPdf;
using System.IO;

// Load SVG file content
string svgPath = @"C:\assets\company-logo.svg";
string svgContent = File.ReadAllText(svgPath);

// Create HTML with embedded SVG
string html = $@"
<html>
<head>
    <style>
        body {{ margin: 20px; }}
        .logo {{ width: 200px; height: 100px; }}
    </style>
</head>
<body>
    <h1>Company Report</h1>
    <img src='file:///{svgPath}' class='logo' />
    <p>Annual financial summary with vector graphics.</p>
</body>
</html>";

// Configure renderer with custom settings
ChromePdfRenderer renderer = new ChromePdfRenderer();
renderer.RenderingOptions.MarginTop = 10;
renderer.RenderingOptions.MarginBottom = 10;
renderer.RenderingOptions.PrintHtmlBackgrounds = true;

// Generate PDF
PdfDocument pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("report-with-svg.pdf");

嵌入式SVG的Base64編碼

針對需要直接在HTML中嵌入SVG資料而無需外部文件引用的情景,Base64編碼提供了可靠的解決方案。 在我們的嵌入圖像指南中詳細介紹了這種方法:

using IronPdf;
using System;

// SVG content as string
string svgContent = @"<svg xmlns='http://www.w3.org/2000/svg' width='100' height='100'>
    <circle cx='50' cy='50' r='40' stroke='black' stroke-width='2' fill='red' />
</svg>";

// Convert to Base64
byte[] svgBytes = System.Text.Encoding.UTF8.GetBytes(svgContent);
string base64Svg = Convert.ToBase64String(svgBytes);

// Create HTML with Base64 embedded SVG
string html = $@"
<html>
<body>
    <h2>Embedded SVG Example</h2>
    <img src='data:image/svg+xml;base64,{base64Svg}' style='width:150px;height:150px;' />
</body>
</html>";

// Render to PDF
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("embedded-svg.pdf");

SVG到PDF轉換的最佳做法

1. 始終指定尺寸

將SVG轉換為PDF時最常見的問題是缺少或零尺寸。 始終確保您的SVG元素具有清晰的height值。 對於響應式設計,考慮使用視口設置來控制PDF佈局。

2. 使用渲染延遲處理複雜的SVG

具有動畫或JavaScript的複雜SVG文件可能需要額外的渲染時間。使用RenderDelay選項以確保完整渲染:

renderer.RenderingOptions.WaitFor.RenderDelay(2000); // Wait 2 seconds

對於高級JavaScript處理,請探索我們的JavaScript渲染指南

3. 優化SVG文件

在轉換之前,優化您的SVG文件:

  • 去除不必要的元資料
  • 簡化路徑
  • 將文字轉換為路徑以確保一致的渲染
  • 使用適當的壓縮

4. 測試跨平台相容性

SVG渲染可能因不同操作系統而有所不同。 在以下平台上測試您的轉換:

我最喜歡的程式庫是IronPDF。它允許快速高效地操作PDF文件。它還有許多有價值的功能,例如導出到PDF/A格式和數位簽署PDF文件。

Milan Jovanovic

Microsoft MVP

查看案例研究

IronOCR意味著我們每年可以從手動處理中節省$40,000,同時提高生產力,釋放資源以進行高影響的任務。我會強烈推薦它。

Brent Matzelle

首席技術官,OPYN

查看案例研究

IronSuite在我們的運營中扮演著至關重要的角色。這些工具增加了包括建立平面圖和改善庫存管理在內的業務效率。

David Jones

首席軟體工程師,Agorus Build

查看案例研究

常見SVG問題的故障排除

SVG未出現在PDF中

如果您的SVG沒有出現在生成的PDF中:

  1. 驗證尺寸是否設置正確
  2. 檢查文件路徑或URL是否可存取
  3. 確保SVG文件的MIME型別正確
  4. 查看我們的像素完美渲染指南

縮放和解析度問題

針對不同縮放比例的高品質SVG渲染:

// Set custom DPI for better quality
renderer.RenderingOptions.DPI = 300;

// Use CSS transforms for scaling
string html = @"
<img src='logo.svg' style='width:200px;height:200px;transform:scale(1.5);' />";

SVG中的字體渲染

當SVG包含文字元素時,確保字體正確嵌入。 了解更多有關字體管理網頁字體支持的資訊。

高級SVG轉換技術

批量處理多個SVGs

要將多個SVG文件轉換為單個PDF文件:

using IronPdf;
using System.Collections.Generic;
using System.Text;

List<string> svgFiles = new List<string> 
{
    "chart1.svg",
    "chart2.svg",
    "diagram.svg"
};

StringBuilder htmlBuilder = new StringBuilder();
htmlBuilder.Append("<html><body>");

foreach(string svgFile in svgFiles)
{
    htmlBuilder.Append($@"
        <div style='page-break-after:always;'>
            <img src='{svgFile}' style='width:600px;height:400px;' />
        </div>");
}

htmlBuilder.Append("</body></html>");

ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf(htmlBuilder.ToString());
pdf.SaveAs("multiple-svgs.pdf");

有關處理多個頁面的更多資訊,請參閱我們的合併或分割PDF指南

準備好看看您還能做什麼嗎? 查看我們的教程頁面:額外功能。 您還可以探索如何將頁眉和頁腳新增到包含SVG的PDF中,或者學習有關自定義水印以品牌化您的文件。

  • 使用AddTextAnnotation

常見問題

我如何在C#中將SVG轉換為PDF?

IronPDF 使用 HTML 到 PDF 方法將 SVG 轉換為 PDF。只需將您的SVG嵌入HTML的img標籤中,並使用明確的寬度和高度樣式,然後使用IronPDF的ChromePdfRenderer來將HTML呈現為PDF。關鍵是確保在img元素上設置適當的大小屬性。

為什麼我的SVG沒有出現在PDF中?

如果SVG缺少明確的寬度和高度規範,IronPDF生成的PDF中可能不會顯示SVG。IronPDF使用的Chrome呈現引擎需要通過樣式屬性或img標籤上的寬度/高度屬性設置尺寸。如果沒有這些,SVG可能會縮小到零大小。

有哪些不同的方法將SVG嵌入PDF轉換中?

IronPDF支持三種主要的SVG嵌入方法:1) 帶有寬度和高度樣式屬性的內嵌SVG,2) 通過URL或本地文件路徑引用的外部SVG文件,和3) 在HTML中直接嵌入的Base64編碼SVG。所有方法都需要正確的大小規範。

我可以轉換本地SVG文件為PDF嗎?

可以,IronPDF可以將本地SVG文件轉換為PDF。使用文件路徑方法,通過img標籤的src屬性引用儲存在您專案中的SVG資產。請記得包含寬度和高度規範以確保正確呈現。

我應該使用哪些呈現選項進行SVG到PDF的轉換?

使用IronPDF將SVG轉換為PDF時,使用ChromePdfRenderer搭配適當的RenderingOptions。一種常見的方法是使用WaitFor.RenderDelay(1000)新增RenderDelay,以確保在轉換前SVG完全載入。這有助於處理複雜的SVG或載入外部資源時。

如何將轉換後的SVG保存為PDF檔案?

在使用IronPDF的ChromePdfRenderer呈現包含SVG的HTML後,使用SaveAs方法保存PDF檔案。只需在呈現的PDF物件上呼叫SaveAs('filename.pdf')以將其保存到您指定的位置。

How does IronPDF handle font rendering in SVGs?

IronPDF requires that fonts used within SVGs are properly embedded or referenced to ensure correct text rendering. You can manage fonts through IronPDF's font management features to guarantee consistency.

What are best practices for converting SVGs to PDF?

Best practices include specifying SVG dimensions, optimizing SVG files by simplifying paths and removing unnecessary metadata, and testing across different platforms to ensure consistent rendering with IronPDF.

How can I convert multiple SVG files into a single PDF using IronPDF?

To convert multiple SVGs into a single PDF, use IronPDF to embed each SVG in a separate HTML element with a page-break style for continuous PDF generation. This facilitates batch processing of SVGs.

Does IronPDF support responsive design for SVG to PDF conversion?

Yes, IronPDF supports responsive design elements by using viewport settings and CSS transformations. This allows for scalable and dynamically adjusted PDF layouts based on the SVG content you are converting.

Curtis Chau
技術作家

Curtis Chau擁有Carleton大學的電腦科學學士學位,專精於前端開發,擁有Node.js、TypeScript、JavaScript和React的專業知識。Curtis熱衷於建立直觀且美觀的使用者介面,喜愛使用現代框架並建立結構良好、視覺吸引力的手冊。

...
閱讀更多

準備開始了嗎?

Nuget Downloads 20,878,335版本:2026.9剛剛發布

立即獲取免費

立即獲取 30天試用金鑰

bullet_checked無需信用卡或註冊帳號
bullet_test在生產
環境中進行測試,且不顯示浮水印
bullet_calendar30 天全
功能產品
bullet_support試用期間提供 24/5 技術
支援
立即獲取您的免費30天試用密鑰
不需要信用卡或建立賬戶
C# 用於PDF的NuGet程式庫
使用NuGet安裝

版本: 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. 在解決方案資源管理器,右鍵點選參考,管理NuGet包
  2. 選擇瀏覽並搜尋"IronPdf"
  3. 選擇套件並安裝
C# PDF DLL
下載DLL

版本: 2026.9

或者點擊此處下載Windows安裝程式。

  1. 下載並解壓IronPDF到類似~/Libs的位置,位於您的解決方案目錄中
  2. 在Visual Studio解決方案資源管理器,右鍵點選參考。選擇瀏覽,"IronPdf.dll"

授權從$999

有問題嗎?聯絡我們的開發團隊。

Key in blue circle

立即免費取得 30 天試用金鑰

Your trial license will be sent to your email address

無任何限制。100% 解鎖。無需信用卡。

bullet_checked無需信用卡或建立帳號無任何限制。100% 解鎖。無需信用卡。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
預訂您的免費現場演示
Booking Badge

受到全球數百萬工程師的信任

Iron Software的客戶標誌
獲取您的無義務諮詢
填寫以下表格或電子郵件sales@ironsoftware.com
您的詳細資訊將始終保密
受到全球數百萬工程師的信任
Iron Software的客戶標誌
立即獲取您的30天試用金鑰
無需信用卡或帳戶建立