Obrazy SVG lub Scalable Vector Graphics są popularne ze względu na ich skalowalność i cechy jakościowe. Możesz zastosować kilka filtrów do obrazów SVG w zależności od wymagań. aby rozmyć i wygładzić obraz SVG, możesz zastosować filtr rozmycia gaussowskiego. Po takich przypadkach użycia w tym artykule omówiono, jak programowo utworzyć filtr rozmycia gaussowskiego na obrazie SVG w języku C#.
- Filtr rozmycia gaussowskiego na obrazie SVG – C# API Download
- Jak utworzyć filtr rozmycia gaussowskiego na obrazie SVG w C#
- Utwórz programowo filtr rozmycia gaussowskiego na obrazie SVG w C#
Filtr rozmycia gaussowskiego na obrazie SVG – C# API Download
Aspose.SVG for .NET może być używany do tworzenia lub edytowania plików skalowalnej grafiki wektorowej programowo w języku C#. Możesz szybko pobrać pliki DLL z sekcji Downloads lub użyć następującego polecenia instalacji NuGet w Microsoft Visual Studio IDE:
PM> Install-Package Aspose.SVG
Jak utworzyć filtr rozmycia gaussowskiego na obrazie SVG w C#
Możesz utworzyć filtr rozmycia gaussowskiego na obrazie SVG, wykonując poniższe czynności:
- Zainicjuj obiekt klasy SVGDocument i ustaw adres URL przestrzeni nazw SVG.
- Utwórz element obrazu i element filtru.
- Dołącz element graficzny.
- Utwórz element feGaussianBlur i dodaj go do elementu filterElement.
- Zapisz wyjściowy obraz SVG.
Utwórz programowo filtr rozmycia gaussowskiego na obrazie SVG w C#
Poniższe kroki można wykonać, aby programowo utworzyć filtr rozmycia gaussowskiego na obrazie SVG w języku C#:
- Utwórz instancję SVGDocument i załaduj źródłowy plik SVG.
- Określ adres URL przestrzeni nazw dla SVG i uzyskaj dostęp do elementu głównego.
- Utwórz element filtrujący i element feGaussianBlur.
- Wyeksportuj wyjściowy plik SVG metodą Save.
Poniższy przykładowy kod demonstruje, jak utworzyć filtr rozmycia gaussowskiego na obrazie SVG w języku C#:
// Zainicjuj obiekt klasy SVGDocument
Aspose.Svg.SVGDocument document = new Aspose.Svg.SVGDocument("complex.svg");
// Ustaw adres URL przestrzeni nazw SVG
string SvgNamespace = "http://www.w3.org/2000/svg";
// Pobierz główny element svg dokumentu
Aspose.Svg.SVGSVGElement svgElement = document.RootElement;
// Utwórz element obrazu i dodaj go do elementu svgElement
Aspose.Svg.SVGImageElement imageElement = (Aspose.Svg.SVGImageElement)document.CreateElementNS(SvgNamespace, "image");
imageElement.Href.BaseVal = dataDir + "complex.jpg";
imageElement.Height.BaseVal.ConvertToSpecifiedUnits(Aspose.Svg.DataTypes.SVGLength.SVG_LENGTHTYPE_PX);
imageElement.Width.BaseVal.ConvertToSpecifiedUnits(Aspose.Svg.DataTypes.SVGLength.SVG_LENGTHTYPE_PX);
imageElement.Height.BaseVal.Value = 640;
imageElement.Width.BaseVal.Value = 480;
imageElement.X.BaseVal.Value = 20;
imageElement.Y.BaseVal.Value = 20;
imageElement.SetAttribute("filter", "url(#F1)");
svgElement.AppendChild(imageElement);
// Utwórz element defs i dodaj go do elementu svgElement
Aspose.Svg.SVGDefsElement defsElement = (Aspose.Svg.SVGDefsElement)document.CreateElementNS(SvgNamespace, "defs");
svgElement.AppendChild(defsElement);
// Utwórz element filtru i dodaj go do elementu defsElement
Aspose.Svg.SVGFilterElement filterElement = (Aspose.Svg.SVGFilterElement)document.CreateElementNS(SvgNamespace, "filter");
defsElement.AppendChild(filterElement);
// Utwórz element feGaussianBlur i dodaj go do elementu filterElement
Aspose.Svg.Filters.SVGFEGaussianBlurElement feGaussianBlurElement = (Aspose.Svg.Filters.SVGFEGaussianBlurElement)document.CreateElementNS(SvgNamespace, "feGaussianBlur");
feGaussianBlurElement.In1.BaseVal = "SourceGraphic";
feGaussianBlurElement.StdDeviationX.BaseVal = 3;
feGaussianBlurElement.StdDeviationY.BaseVal = 3;
feGaussianBlurElement.SetAttribute("x", "-20px");
feGaussianBlurElement.SetAttribute("y", "-20px");
feGaussianBlurElement.SetAttribute("height", "720px");
feGaussianBlurElement.SetAttribute("width", "560px");
filterElement.Id = "F1";
filterElement.AppendChild(feGaussianBlurElement);
// Zapisz dokument SVG
document.Save(Path.Combine(dataDir, "gaussianBlur.svg"));
Uzyskaj bezpłatną licencję API
Możesz ocenić interfejs API bez żadnych ograniczeń ewaluacyjnych, prosząc o bezpłatną licencję tymczasową.
Wniosek
W tym artykule zbadałeś i zbadałeś, jak programowo utworzyć efekt filtra rozmycia gaussowskiego na obrazie SVG w języku C#. Natomiast możesz zajrzeć do przestrzeni documentation, aby sprawdzić różne funkcje oferowane przez API. Jeśli chcesz omówić swoje wątpliwości, napisz do nas na forum.