检查导航svg

SVG 图像在网络上广泛使用,尤其是在图像的可扩展性和质量很重要的情况下。您可以使用 C# 以编程方式检查、提取或导航 SVG 图像元素。让我们探索以下部分以获取更多详细信息:

C# 中的 SVG 检查或导航 - API 安装

Aspose.SVG for .NET API 支持创建、编辑或转换 SVG 文件。您可以从 下载 部分以 ZIP 格式下载 DLL 文件。您还可以通过 Microsoft Visual Studio 中的 NuGet 包管理器对其进行配置。可以使用以下 NuGet 安装命令对其进行配置:

PM> Install-Package Aspose.SVG

检查 SVG 文档及其元素

Aspose.SVG for .NET API 中的几种方法基于 W3C 的元素遍历规范。您可以通过以下步骤详细检查 SVG 文件:

  1. 加载输入的 SVG 文件。
  2. 使用 DocumentElement 对象加载不同的元素。
  3. 访问任何属性的值。

下面的代码解释了如何使用 C# 以编程方式检查 SVG 文档及其不同元素:

// 加载文档
string documentPath = Path.Combine(DataDir, "shapes.svg");
    
using (var document = new SVGDocument(documentPath))
{
    var element = document.DocumentElement;
    Console.WriteLine(element.TagName); // svg
        
    element = element.LastElementChild;
    Console.WriteLine(element.TagName); // g
    
    element = element.FirstElementChild;
    Console.WriteLine(element.TagName); // rect
}

提取有关特定 SVG 元素的信息

SVG 图像文件由根元素下的几个元素组成。 SVGDocument 类公开了不同的方法来提取有关特定 SVG 元素的信息,例如 ParentElementGetElementsByClassName。让我们按照以下步骤提取有关特定 SVG 元素的信息:

  1. 加载输入 SVG 图像。
  2. 访问 DocumentElement 属性。
  3. 阅读任何特定元素。

以下代码展示了如何使用 C# 以编程方式提取有关特定 SVG 元素的信息:

//从文件加载文档
string documentPath = Path.Combine(DataDir, "shapes.svg");
    
using (var document = new SVGDocument(documentPath))
{
    // 获取文档的根 svg 元素
    var svg = document.DocumentElement;
    	
    // 查找具有给定标签名称的第一个子元素
    var g = svg.GetElementsByTagName("g").First() as SVGGElement;
    			
    var rect = g.FirstElementChild as SVGRectElement;
    
    Console.WriteLine("Height: {0}", rect.Height);// 90
    Console.WriteLine("Width: {0}", rect.Width); // 100
}

对于这个演示,我们考虑使用 shapes.svg 文件。

使用 XPath 查询导航 SVG

XPath 查询语言用于从基于 XML 的文档中选择节点。以下步骤详细说明了如何使用 XPath Query 导航 SVG 图像文件节点:

  • 加载源 SVG 文件。
  • 评估 XPath expression.
  • 评估并获得下一个节点。

下面的代码演示了这些步骤如何让您使用 C# 语言以编程方式导航 SVG 节点:

using Aspose.Svg;
using System.IO;
using Aspose.Svg.Dom;
using Aspose.Svg.Collections;
...     

using (var document = new SVGDocument(Path.Combine(DataDir, "shapes.svg")))
{
    //  评估 XPath 表达式
    var xpathResult = document.Evaluate("//rect[@x='120']", document, null, (Dom.XPath.XPathResultType)XPathResultType.Any, null);

    //  获取下一个评估节点
    Console.WriteLine((xpathResult.IterateNext() as Element)?.OuterHTML);		  
}

结论

在本文中,我们探讨了如何检查 SVG 文件及其元素。同样,还讨论了使用 XPath Query 从 SVG 文件中提取信息和导航 SVG 节点。此外,您可以通过阅读 文档 了解更多信息。请随时访问 免费支持论坛。我们很乐意为您提供帮助和指导!

也可以看看