在 C# 中將 SVG 轉換為 PDF

您要將 SVG 圖像轉換為 PDF 文檔嗎?如果是這樣,那麼您來對地方了。本文將向您展示如何通過幾個簡單的步驟在 C# 中將 SVG 轉換為 PDF。

SVG(可縮放矢量圖形)是一種開放標準的文件類型,無論分辨率如何都可以使用。它是一種基於 XML 的格式,使用矢量圖形並支持有限的動畫。 SVG 文件只是 XML 文件,因此任何文本編輯器都可以編輯它們。大多數現代瀏覽器都支持 SVG 文件並且能夠呈現它們的標記。在某些情況下,我們可能需要將 SVG 圖像導出為 PDF 文檔。

PDF 是使用最廣泛的文檔格式。它保持原始格式不變,這就是它如此受歡迎的原因。我們可以通過編程輕鬆地將 SVG 文檔轉換為 PDF 格式。讓我們開始吧!

本文將涵蓋以下主題:

  1. 將 SVG 轉換為 PDF 的 C# API
  2. 將 SVG 轉換為 PDF
  3. 將 SVG 渲染為 PDF

將 SVG 轉換為 PDF 的 C# API

為了將 SVG 轉換為 PDF,我們將使用 Aspose.SVG for .NET API。 API 提供了一種簡單的方法來加載、解析、渲染、創建 SVG 文件並將其轉換為 流行格式,而無需任何軟件依賴性。

API 提供了 SVGDocument 類,它表示 SVG 層次結構的根並包含全部內容。 PdfSaveOptions 類允許指定 PDF 保存選項。我們有 Converter.ConvertSVG(SVGDocument, PdfSaveOptions, string) 方法將 SVG 源轉換為 PDF。 PdfRenderingOptions 類表示 PdfDevice 的呈現選項。 PdfDevice 類允許呈現為 PDF 文檔。

下載 API 的 DLL 或使用 NuGet 安裝它。

PM> Install-Package Aspose.SVG

使用 C# 將 SVG 轉換為 PDF

我們可以按照以下步驟輕鬆地將 SVG 圖像文件轉換為 PDF:

  1. 首先,使用 SVGDocument 類加載 SVG。
  2. 接下來,創建 PdfSaveOptions 類的實例。
  3. 之後,指定 PDF 保存選項,如 BackgroundColor 等。
  4. 最後,調用 Converter.ConvertSVG() 方法。它以 SVGDocument、PdfSaveOptions 和輸出 PDF 文件路徑作為參數。

以下代碼示例顯示瞭如何在 C# 中將 SVG 轉換為 PDF。

// 此代碼示例演示如何將 SVG 轉換為 PDF
// 從文件加載 SVG 文檔
var document = new SVGDocument("C:\\Files\\Fill-Circle.svg");

// 初始化 PdfSaveOptions 類的實例
var saveOptions = new PdfSaveOptions();
saveOptions.BackgroundColor = System.Drawing.Color.DarkBlue;

// 將 SVG 轉換為 PDF
Converter.ConvertSVG(document, saveOptions, "C:\\Files\\Circles_out.pdf");
使用 CSharp 將 SVG 轉換為 PDF

使用 C# 將 SVG 轉換為 PDF。

在 C# 中將 SVG 渲染為 PDF

或者,我們可以按照以下步驟將 SVG 渲染為 PDF:

  1. 首先,使用 SVGDocument 類加載 SVG。
  2. 接下來,創建 PdfRenderingOptions 類的實例。
  3. 然後,指定 PDF 保存選項,例如 PageSetup、JpegQuality 等。
  4. 之後,初始化 PdfDevice 類的一個實例。它以 PdfRenderingOptions 和輸出 PDF 文件路徑作為參數。
  5. 最後,調用 RenderTo() 方法。它以 PdfDevice 作為參數。

以下代碼示例展示瞭如何在 C# 中將 SVG 呈現為 PDF。

// 此代碼示例演示如何將 SVG 呈現為 PDF
// 從文件加載 SVG 文檔
var document = new SVGDocument("C:\\Files\\Fill-Circle.svg");

// 初始化 PdfRenderingOptions 類的實例 
// 設置自定義 PageSetup 和 JpegQuality 屬性
var pdfRenderingOptions = new PdfRenderingOptions();
pdfRenderingOptions.PageSetup.AnyPage = new Page(new Aspose.Svg.Drawing.Size(500, 500), new Margin(10, 10, 10, 10));
pdfRenderingOptions.JpegQuality = 10;

// 初始化 PdfDevice 類的實例
using (IDevice device = new PdfDevice(pdfRenderingOptions, "C:\\Files\\Render_out.pdf"))
{
    // 將 SVG 渲染為 PDF 並將文檔發送到渲染設備
    document.RenderTo(device);
}

獲得免費的臨時許可證

您可以獲得免費的臨時許可證 試用 Aspose.SVG for .NET,沒有評估限制。

結論

在本文中,我們學習瞭如何:

  • 加載現有的 SVG 圖像;
  • 定義 PDF 保存選項;
  • 指定 PDF 呈現選項;
  • 在 C# 中將 SVG 保存為 PDF。

除了在 C# 中將 SVG 轉換為 PDF 之外,您還可以使用 文檔 了解有關 Aspose.SVG for .NET 的更多信息,並探索 API 支持的不同功能。如有任何疑問,請隨時通過我們的免費支持論壇與我們聯繫。

也可以看看