thay đổi csharp màu SVG

SVG hình ảnh đang trở nên phổ biến vì tính năng chất lượng và khả năng mở rộng của chúng. Trong một số trường hợp, bạn có thể cần phải thay đổi màu sắc của hình ảnh SVG để làm cho chúng hấp dẫn hơn. Bài viết này trình bày cách thay đổi màu của các phần tử SVG khác nhau theo chương trình trong C#.

Làm việc với màu của phần tử SVG - Cài đặt API C# .NET

Bạn có thể thao tác màu của các phần tử SVG khác nhau như Vòng tròn, Đường thẳng, v.v. bằng API Aspose.SVG for .NET. Chỉ cần tải xuống tệp DLL từ Bản phát hành mới hoặc sử dụng lệnh cài đặt NuGet sau:

PM> Install-Package Aspose.SVG

Thay đổi màu của phần tử vòng tròn của SVG trong C#

Bạn có thể thay đổi màu của phần tử vòng tròn của SVG trong C# bằng các bước sau:

  1. Tạo một thể hiện của lớp SVGDocument để tải tệp SVG đầu vào.
  2. Lấy phần tử SVG gốc và khoanh tròn của tài liệu.
  3. Đặt thuộc tính và màu sắc cho phần tử SVG.
  4. Lưu hình ảnh SVG đầu ra.

Đoạn mã dưới đây trình bày chi tiết cách thay đổi màu của phần tử vòng tròn của SVG trong C#:

// Tải tài liệu SVG từ tệp
SVGDocument document = new SVGDocument("shapes.svg");

// Nhận phần tử svg gốc của tài liệu
SVGElement svgElement = document.RootElement;

// Nhận phần tử vòng tròn để thay đổi màu sắc
SVGCircleElement circleElement = svgElement.QuerySelector("circle") as SVGCircleElement;

// Đặt giá trị thuộc tính "lấp đầy" mới cho phần tử vòng kết nối
circleElement.SetAttribute("fill", "blue");

// Lưu tài liệu SVG
document.Save("circle-color.svg");

Thay đổi màu của phần tử đường của SVG trong C#

Vui lòng làm theo các bước bên dưới để thay đổi màu của phần tử Đường trong ảnh SVG trong C#:

  • Khởi tạo một đối tượng của lớp SVGDocument để tải ảnh SVG nguồn.
  • Lấy phần tử gốc và phần tử dòng để sửa đổi màu.
  • Lưu tệp SVG đầu ra bằng phương pháp Lưu.

Đoạn mã sau cho biết cách thay đổi màu dòng trong tệp SVG theo chương trình trong C#:

// Tải tài liệu SVG từ tệp
SVGDocument document = new SVGDocument("basic-shapes.svg");

// Nhận phần tử svg gốc của tài liệu
SVGSVGElement svgElement = document.RootElement;

// Nhận phần tử đường để thay đổi màu sắc
SVGLineElement lineElement = svgElement.QuerySelector("line") as SVGLineElement;

// Đặt giá trị thuộc tính "nét vẽ" mới cho phần tử đường
lineElement.SetAttribute("stroke", "blue");

// Lưu tài liệu SVG
document.Save("line-color.svg");

Đặt Màu nền của Hình ảnh SVG trong C#

Bạn có thể cải thiện sự xuất hiện của hình ảnh SVG bằng cách đặt màu nền của hình ảnh SVG theo các bước sau:

  • Đặt không gian tên SVG và tải tệp đầu vào.
  • Tạo một phần tử hình chữ nhật và đặt các thuộc tính khác nhau.
  • Thêm phần tử hình chữ nhật làm con đầu tiên và lưu tệp đầu ra.

Đoạn mã dưới đây trình bày cách đặt màu nền của hình ảnh SVG theo chương trình trong C#:

// Đặt Url không gian tên SVG
string SvgNamespace = "http://www.w3.org/2000/svg";

// Tải tài liệu SVG từ tệp
SVGDocument document = new SVGDocument("basic-shapes.svg");

// Nhận phần tử svg gốc của tài liệu
SVGSVGElement svgElement = document.RootElement;

// Tạo phần tử hình chữ nhật và đặt giá trị thuộc tính "lấp đầy" để thay đổi màu nền
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");

// Thêm phần tử hình chữ nhật làm phần tử con đầu tiên vào phần tử SVG
svgElement.InsertBefore(rectElement, svgElement.FirstChild);

// Lưu tài liệu SVG
document.Save("background-color.svg");

Nhận Giấy phép Đánh giá Miễn phí

Bạn có thể đánh giá API mà không có bất kỳ giới hạn đánh giá nào bằng cách nhận giấy phép đánh giá miễn phí.

Sự kết luận

Trong bài viết này, bạn đã học cách thay đổi màu sắc của các phần tử khác nhau trong ảnh SVG. Tương tự như vậy, các chi tiết về thiết lập màu nền của ảnh SVG cũng được thảo luận ở đây. Ngoài ra, bạn có thể xem các tính năng khác của API trong phần tài liệu. Trong trường hợp có bất kỳ thắc mắc nào, vui lòng viết thư cho chúng tôi tại diễn đàn.

Xem thêm

Chuyển đổi SVG sang HTML trên Linux trong C#