更改 SVG 颜色 csharp

SVG 图像因其可扩展性和质量特性而越来越受欢迎。在某些情况下,您可能需要更改 SVG 图像的颜色以使其更具吸引力。本文介绍如何在 C# 中以编程方式更改不同 SVG 元素的颜色。

使用 SVG 元素的颜色 – C# .NET API 安装

您可以使用 Aspose.SVG for .NET API 操作不同 SVG 元素的颜色,如 Circle、Line 等。只需从 New Releases 下载 DLL 文件,或使用以下 NuGet 安装命令:

PM> Install-Package Aspose.SVG

在 C# 中更改 SVG 的圆形元素的颜色

您可以通过以下步骤在 C# 中更改 SVG 的圆形元素的颜色:

  1. 创建一个 SVGDocument 类的实例来加载输入的 SVG 文件。
  2. 获取文档的根和圆形 SVG 元素。
  3. 设置 SVG 元素的属性和颜色。
  4. 保存输出的 SVG 图像。

下面的代码片段详细说明了如何在 C# 中更改 SVG 的圆形元素的颜色:

// 从文件加载 SVG 文档
SVGDocument document = new SVGDocument("shapes.svg");

// 获取文档的根 svg 元素
SVGElement svgElement = document.RootElement;

// 获取圆形元素改变颜色
SVGCircleElement circleElement = svgElement.QuerySelector("circle") as SVGCircleElement;

// 为圆形元素设置一个新的“填充”属性值
circleElement.SetAttribute("fill", "blue");

// 保存 SVG 文档
document.Save("circle-color.svg");

在 C# 中更改 SVG 线元素的颜色

请按照以下步骤在 C# 中更改 SVG 图像中 Line 元素的颜色:

  • 初始化 SVGDocument 类的对象以加载源 SVG 图像。
  • 获取根和线元素来修改颜色。
  • 使用 Save 方法保存输出的 SVG 文件。

以下代码片段显示了如何在 C# 中以编程方式更改 SVG 文件中的线条颜色:

// 从文件加载 SVG 文档
SVGDocument document = new SVGDocument("basic-shapes.svg");

// 获取文档的根 svg 元素
SVGSVGElement svgElement = document.RootElement;

// 获取线元素改变颜色
SVGLineElement lineElement = svgElement.QuerySelector("line") as SVGLineElement;

// 为线条元素设置一个新的“stroke”属性值
lineElement.SetAttribute("stroke", "blue");

// 保存 SVG 文档
document.Save("line-color.svg");

在 C# 中设置 SVG 图像的背景颜色

您可以通过以下步骤设置 SVG 图像的背景颜色来增强 SVG 图像的外观:

  • 设置 SVG 命名空间并加载输入文件。
  • 创建一个矩形元素并设置不同的属性。
  • 添加矩形元素作为第一个子元素并保存输出文件。

下面的代码片段演示了如何在 C# 中以编程方式设置 SVG 图像的背景颜色:

// 设置 SVG 命名空间 URL
string SvgNamespace = "http://www.w3.org/2000/svg";

// 从文件加载 SVG 文档
SVGDocument document = new SVGDocument("basic-shapes.svg");

// 获取文档的根 svg 元素
SVGSVGElement svgElement = document.RootElement;

// 创建一个矩形元素并设置“填充”属性值来改变背景颜色
SVGRectElement rectElement = (SVGRectElement)document.CreateElementNS(SvgNamespace, "rect");
rectElement.X.BaseVal.Value = 3;
rectElement.Y.BaseVal.Value = 3;
rectElement.Width.BaseVal.Value = 400;
rectElement.Height.BaseVal.Value = 400;
rectElement.SetAttribute("fill", "Salmon");

// 将矩形元素作为第一个子元素添加到 SVG 元素
svgElement.InsertBefore(rectElement, svgElement.FirstChild);

// 保存 SVG 文档
document.Save("background-color.svg");

获得免费评估许可证

您可以通过获得 免费评估许可证 来评估 API,而不受任何评估限制。

结论

在本文中,您学习了如何更改 SVG 图像中不同元素的颜色。同样,这里也讨论了有关设置 SVG 图像背景颜色的细节。此外,您可以在 documentation 部分查看 API 的其他功能。如有任何疑问,请在 论坛 上给我们写信。

也可以看看

使用 C# 在 Linux 上将 SVG 转换为 HTML