SVG hình ảnh được sử dụng phổ biến trên web, đặc biệt là khi khả năng mở rộng và chất lượng của hình ảnh là quan trọng. Bạn có thể kiểm tra, trích xuất hoặc điều hướng các phần tử hình ảnh SVG theo chương trình với C#. Hãy cùng chúng tôi khám phá các phần sau để biết thêm chi tiết:
- Kiểm tra hoặc điều hướng SVG trong C# - Cài đặt API
- Kiểm tra tài liệu SVG và các phần tử của nó
- Trích xuất thông tin về các phần tử SVG cụ thể
- Điều hướng SVG bằng cách sử dụng Truy vấn XPath
Kiểm tra hoặc điều hướng SVG trong C# - Cài đặt API
API Aspose.SVG cho .NET hỗ trợ tạo, chỉnh sửa hoặc chuyển đổi tệp SVG. Bạn có thể tải xuống tệp DLL dưới dạng ZIP từ phần Tải xuống. Bạn cũng có thể cấu hình nó thông qua NuGet Package Manager trong Microsoft Visual Studio. Lệnh cài đặt NuGet sau có thể được sử dụng để cấu hình nó:
PM> Install-Package Aspose.SVG
Kiểm tra tài liệu SVG và các phần tử của nó
Một số phương pháp trong Aspose.SVG cho API .NET dựa trên Thông số kỹ thuật truyền tải yếu tố theo W3C. Bạn có thể kiểm tra chi tiết tệp SVG bằng các bước sau:
- Tải tệp SVG đầu vào.
- Tải các phần tử khác nhau với đối tượng DocumentElement.
- Truy cập giá trị của bất kỳ tài sản nào.
Đoạn mã dưới đây giải thích cách kiểm tra tài liệu SVG và các phần tử khác nhau của nó theo chương trình bằng C#:
// Tải tài liệu
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
}
Trích xuất thông tin về các phần tử SVG cụ thể
Tệp ảnh SVG bao gồm một số phần tử dưới phần tử gốc. Lớp SVGDocument hiển thị các phương thức khác nhau để trích xuất thông tin về các phần tử SVG cụ thể, chẳng hạn như ParentElement và GetElementsByClassName. Hãy để chúng tôi làm theo các bước bên dưới để trích xuất thông tin về các phần tử SVG cụ thể:
- Tải hình ảnh SVG đầu vào.
- Truy cập thuộc tính DocumentElement.
- Đọc bất kỳ yếu tố cụ thể nào.
Đoạn mã sau cho biết cách trích xuất thông tin về một phần tử SVG cụ thể theo cách lập trình bằng C#:
//Tải tài liệu từ một tệp
string documentPath = Path.Combine(DataDir, "shapes.svg");
using (var document = new SVGDocument(documentPath))
{
// Lấy phần tử svg gốc của tài liệu
var svg = document.DocumentElement;
// Tìm phần tử con đầu tiên có tên thẻ đã cho
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
}
Đối với phần trình diễn này, chúng tôi đã xem xét làm việc với tệp shape.svg.
Điều hướng SVG bằng cách sử dụng Truy vấn XPath
Ngôn ngữ truy vấn XPath được sử dụng để chọn các nút từ các tài liệu dựa trên XML. Các bước sau giải thích cách điều hướng các nút tệp hình ảnh SVG bằng Truy vấn XPath:
- Tải tệp SVG nguồn.
- Thúc giục XPath expression.
- Đánh giá và lấy nút tiếp theo.
Đoạn mã dưới đây trình bày cách các bước này cho phép bạn điều hướng các nút SVG theo chương trình bằng ngôn ngữ C#:
using Aspose.Svg;
using System.IO;
using Aspose.Svg.Dom;
using Aspose.Svg.Collections;
...
using (var document = new SVGDocument(Path.Combine(DataDir, "shapes.svg")))
{
// Đánh giá biểu thức XPath
var xpathResult = document.Evaluate("//rect[@x='120']", document, null, (Dom.XPath.XPathResultType)XPathResultType.Any, null);
// Nhận nút được đánh giá tiếp theo
Console.WriteLine((xpathResult.IterateNext() as Element)?.OuterHTML);
}
Sự kết luận
Trong bài viết này, chúng tôi đã khám phá cách kiểm tra tệp SVG và các phần tử của nó. Tương tự như vậy, trích xuất thông tin từ tệp SVG và điều hướng các nút SVG bằng cách sử dụng Truy vấn XPath cũng được thảo luận. Hơn nữa, bạn có thể tìm hiểu thêm bằng cách đọc Tài liệu. Vui lòng liên hệ tại Diễn đàn hỗ trợ miễn phí. Chúng tôi sẽ sẵn lòng giúp đỡ và hướng dẫn bạn!