ändra SVG-färg csharp

SVG bilder blir populära på grund av deras skalbarhet och kvalitetsfunktioner. I vissa scenarier kan du behöva ändra färgen på SVG-bilder för att göra dem mer attraktiva. Den här artikeln tar upp hur du ändrar färgen på olika SVG-element programmatiskt i C#.

Arbeta med färgen på SVG Elements – C# .NET API-installation

Du kan manipulera färgen på olika SVG-element som Circle, Line, etc. med Aspose.SVG for .NET API. Ladda bara ned DLL-filerna från Nya utgåvor eller använd följande installationskommando NuGet:

PM> Install-Package Aspose.SVG

Ändra färgen på cirkelelementet i SVG i C#

Du kan ändra färgen på cirkelelementet i SVG i C# med följande steg:

  1. Skapa en instans av klassen SVGDocument för att läsa in SVG-filen.
  2. Hämta rot och cirkel SVG-element i dokumentet.
  3. Ställ in attribut och färg för SVG-elementet.
  4. Spara den utgående SVG-bilden.

Kodavsnittet nedan beskriver hur man ändrar färgen på cirkelelementet i SVG i C#:

// Ladda ett SVG-dokument från filen
SVGDocument document = new SVGDocument("shapes.svg");

// Hämta root svg-elementet i dokumentet
SVGElement svgElement = document.RootElement;

// Skaffa cirkelelement för att ändra färg
SVGCircleElement circleElement = svgElement.QuerySelector("circle") as SVGCircleElement;

// Ställ in ett nytt "fyll"-attributvärde för cirkelelementet
circleElement.SetAttribute("fill", "blue");

// Spara SVG-dokumentet
document.Save("circle-color.svg");

Ändra färgen på linjeelementet i SVG i C#

Följ stegen nedan för att ändra färgen på linjeelementet i en SVG-bild i C#:

  • Initiera ett objekt av klassen SVGDocument för att ladda SVG-källbilden.
  • Hämta rot- och linjeelement för att ändra färgen.
  • Spara den utgående SVG-filen med metoden Save.

Följande kodavsnitt visar hur man ändrar linjefärg i SVG-fil programmatiskt i C#:

// Ladda ett SVG-dokument från filen
SVGDocument document = new SVGDocument("basic-shapes.svg");

// Hämta root svg-elementet i dokumentet
SVGSVGElement svgElement = document.RootElement;

// Få linjeelement för att ändra färg
SVGLineElement lineElement = svgElement.QuerySelector("line") as SVGLineElement;

// Ställ in ett nytt "stroke"-attributvärde för linjeelementet
lineElement.SetAttribute("stroke", "blue");

// Spara SVG-dokumentet
document.Save("line-color.svg");

Ställ in bakgrundsfärgen för SVG-bilden i C#

Du kan förbättra utseendet på SVG-bilder genom att ställa in bakgrundsfärgen för SVG-bilder med följande steg:

  • Ställ in SVG-namnutrymme och ladda indatafilen.
  • Skapa ett rektangelelement och ställ in olika egenskaper.
  • Lägg till rektangelelement som första barn och spara utdatafilen.

Kodavsnittet nedan visar hur man ställer in bakgrundsfärgen för SVG-bilden programmatiskt i C#:

// Ställ in SVG-namnutrymmesadress
string SvgNamespace = "http://www.w3.org/2000/svg";

// Ladda ett SVG-dokument från filen
SVGDocument document = new SVGDocument("basic-shapes.svg");

// Hämta root svg-elementet i dokumentet
SVGSVGElement svgElement = document.RootElement;

// Skapa ett rektangelelement och ställ in "fill"-attributvärdet för att ändra bakgrundsfärg
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");

// Lägg till rektangelelementet som det första underordnade till SVG-elementet
svgElement.InsertBefore(rectElement, svgElement.FirstChild);

// Spara SVG-dokumentet
document.Save("background-color.svg");

Få gratis utvärderingslicens

Du kan utvärdera API:t utan några utvärderingsbegränsningar genom att skaffa en gratis utvärderingslicens.

Slutsats

I den här artikeln har du lärt dig hur du ändrar färgen på olika element i en SVG-bild. På samma sätt diskuteras även detaljerna om att ställa in bakgrundsfärgen för en SVG-bild här. Dessutom kan du ta en titt på andra funktioner i API:t i avsnittet dokumentation. Om du har några frågor, skriv till oss på forumet.

Se även

Konvertera SVG till HTML på Linux i C#