通過 C# 將 SVG 轉換為 PNG
使用原生 .NET API 將 SVG 轉換為 PNG,無需任何圖像編輯器或第 3 方庫。
如何使用 C# 將 SVG 轉換為 PNG
轉換文件格式似乎是圖形設計師遇到的例行任務。然而,低估其重要性將是一個錯誤。對您工作的評估可能取決於您處理這項任務的速度和效率。通常,原始圖像需要轉換為更適合打印或在線出版的格式。如果原始圖像來自圖形編輯器,則它可能是矢量格式。在這種情況下,必須對其進行柵格化並轉換為柵格格式以用於發布目的。您可以選擇以未壓縮格式保存圖像以獲得最佳質量,或將其轉換為無損壓縮格式以減小文件大小。在某些情況下,例如網絡發布,您可以選擇有損壓縮格式。專門設計的圖像數據壓縮算法可以顯著減小文件大小,同時保持可接受的圖像質量。這有利於從互聯網上快速下載圖像文件。為了將 SVG 轉換為 PNG,我們將使用 Aspose.Imaging for .NET API 是一個功能豐富、功能強大且易於使用的 C# 平台圖像處理和轉換 API。打開 NuGet 包管理器,搜索 Aspose.Imaging 並安裝。您也可以從包管理器控制台使用以下命令。
包管理器控制台命令
PM> Install-Package Aspose.Imaging
通過 C# 將 SVG 轉換為 PNG 的步驟
開發人員只需幾行代碼即可輕鬆加載 SVG 文件並將其轉換為 PNG。
- 使用 Image.Load 方法加載 SVG 文件
- 創建和設置 ImageOptionsBase 所需子類的實例(例如 BmpOptions、PngOptions 等)
- 調用 Image.Save 方法
- 傳遞帶有 PNG 擴展名的文件路徑和 ImageOptionsBase 類的對象
系統要求
在運行轉換示例代碼之前,請確保您具有以下先決條件。
- 作業系統:Windows 或Linux。
- 開發環境:支援.NET Core 7及更高版本,例如Microsoft Visual Studio。
將 SVG 轉換為 PNG 的免費應用程序
查看我們的 將 SVG 轉換為 PNG 的現場演示
將 SVG 轉換為 PNG - .NET
using Aspose.Imaging; | |
using System; | |
using System.IO; | |
using System.Text; | |
using System.Collections.Generic; | |
//You can get all image templates from https://github.com/aspose-imaging/Aspose.Imaging-for-.NET/blob/master/Examples/Data/Templates.zip | |
//After download archive please unpack it and replace templatesFolder variable path with your path to unpacked archive folder | |
string templatesFolder = @"c:\Users\USER\Downloads\templates\"; | |
// Load the svg file in an instance of Image | |
using (var image = Aspose.Imaging.Image.Load(Path.Combine(templatesFolder, @"template.svg"))) | |
{ | |
// Create an instance of PngOptions | |
var exportOptions = new Aspose.Imaging.ImageOptions.PngOptions(){ ColorType = Aspose.Imaging.FileFormats.Png.PngColorType.TruecolorWithAlpha}; | |
Aspose.Imaging.ImageOptions.VectorRasterizationOptions rasterizationOptions = new Aspose.Imaging.ImageOptions.SvgRasterizationOptions(); | |
rasterizationOptions.PageWidth = image.Width; | |
rasterizationOptions.PageHeight = image.Height; | |
exportOptions.VectorRasterizationOptions = rasterizationOptions; | |
// Save svg to png | |
image.Save(Path.Combine(templatesFolder, "output.png"), exportOptions); | |
File.Delete(Path.Combine(templatesFolder, "output.png")); | |
} |
SVG 什麼是 SVG 文件格式
SVG 文件是使用基於 XML 的文本格式來描述圖像外觀的可縮放矢量圖形文件。 Scalable 這個詞指的是 SVG 可以縮放到不同的大小而不會損失任何質量。此類文件的基於文本的描述使它們獨立於分辨率。它是用於構建網站和打印圖形以實現可擴展性的最常用格式之一。該格式只能用於二維圖形。 SVG 文件可以在幾乎所有現代瀏覽器中查看/打開,包括 Chrome、Internet Explorer、Firefox 和 Safari。
閱讀更多 | SVGPNG 什麼是 PNG 文件格式
PNG,便攜式網絡圖形,是指一種使用無損壓縮的光柵圖像文件格式。此文件格式是作為圖形交換格式 (GIF) 的替代品而創建的,沒有版權限制。但是,PNG 文件格式不支持動畫。 PNG文件格式支持無損圖像壓縮,使其在用戶中很受歡迎。隨著時間的推移,PNG 已經發展成為最常用的圖像文件格式之一。幾乎所有操作系統都支持打開 PNG 文件。例如,Microsoft Windows 查看器能夠打開 PNG 文件,因為操作系統默認支持作為安裝的一部分。
閱讀更多 | PNG其他支持的轉換
使用 C#,可以輕鬆轉換不同的格式,包括。