在 C# 中保存 SVG

了解如何使用 Aspose.SVG for .NET 以编程方式保存 SVG。

如何用 C# 保存 SVG

Aspose.SVG for .NET 库提供了重载的 Save() 方法,允许将 SVG 文档保存到本地文件、流、Zip 存档或 URL,支持基本和高级方案。您可以使用文件路径或 Url 对象直接保存文档。可选参数可用于指定输出格式(如SVG、SVGZ等)和SVGSaveOptions,以便对保存过程进行更详细的控制。此外,Aspose.SVG for .NET API 还支持通过 ResourceHandler 对象进行保存,这些对象支持自定义的资源存储机制,如内存流或 Zip 档案。


让我们来看看如何以编程方式保存 SVG 文档。但首先要确保在项目中安装了 Aspose.SVG for .NET。安装 API 非常简单–使用 NuGet 软件包管理器控制台并运行以下命令:


安装 Aspose.SVG for .NET

Install-Package Aspose.SVG



将 SVG 保存到文件

这里有一个将 SVG 文档保存到文件的简单方法。此示例加载一个现有的 SVG 文件,允许您根据需要对其进行修改,然后将更新后的版本保存到一个新文件中:

  1. 使用 SVGDocument() 构造函数加载 SVG 文档。处理文档
  2. 使用 Save(path) 方法保存 SVG 文件。

保存 SVG 文档的 C# 代码

using Aspose.Svg;
...

    // Load the SVG document from a file
    using (SVGDocument document = new SVGDocument("document.svg"))
    {
        // Work with the document

        // Save SVG to the file
        document.Save("document-edited.svg");
    }



将 SVG 转换并保存为 SVGZ

SVGZ 文件是用 GZIP 压缩的标准 SVG 文档。它们保留了原始 SVG 文件的全部保真度和可扩展性,同时大大减小了文件大小,通常减小 60-80%。下面的 C# 代码段加载 SVG 文件,并以压缩的 SVGZ 格式将其保存到 Url:


将 SVG 保存为 SVGZ 的 C# 代码

using System.IO;
using Aspose.Svg;
...

    // Set a full path to save an SVG document
    Url url = new Url(Path.Combine(OutputUrl, "shapes_out.svgz"), Directory.GetCurrentDirectory());

    //  Load the SVG document from a file
    using (SVGDocument document = new SVGDocument(Path.Combine(DataDir, "shapes.svg")))
    {
        // Work with the document

        // Save the document as SVGZ to a Url
        document.Save(url, SVGSaveFormat.SVGZ);
    }





  1. Url 对象指定保存压缩文件的目标路径。它结合了输出目录和文件名。
  2. SVGDocument 将原始 SVG 文件加载到内存中,允许您解析或编辑其结构。
  3. Save(url, saveFormat) 方法通过指定 SVGSaveFormat.SVGZ,以 SVGZ格式导出文档。输出将是原始 SVG 的 GZIP 压缩版本。

有用的资源

  • 如果您想进一步了解如何使用 Aspose.SVG for .NET 库将 SVG 文档保存到文件、内存流、ZIP 压缩包或 Url,我们建议您访问文章 保存 SVG 文档 。
  • 文章 在 C# 中将 SVG 转换为 SVGZ – 了解 SVGZ 格式 介绍了什么是 SVGZ 格式,以及如何使用 Aspose.SVG for .NET 将 SVG 保存为 SVGZ。


  • 其他支持的功能

    使用 Aspose.SVG for .NET 库可以转换、合并、编辑 SVG 文档、转换颜色代码、矢量化图像等!