Gauss Bulanıklığı Filtresi SVG C#

SVG veya Ölçeklenebilir Vektör Grafiği görüntüleri, ölçeklenebilirlikleri ve kalite özellikleri nedeniyle popülerdir. Gereksinimlerinize göre SVG resimlerine birkaç filtre uygulayabilirsiniz. bir SVG görüntüsünü bulanıklaştırmak ve yumuşatmak için bir Gauss bulanıklık filtresi uygulayabilirsiniz. Bu tür kullanım durumlarını takiben, bu makalede C# dilinde programlı olarak bir SVG görüntüsünde Gauss bulanıklık filtresinin nasıl oluşturulacağı anlatılmaktadır.

SVG Görüntüsünde Gauss Bulanıklığı Filtresi – C# API İndirme

Aspose.SVG for .NET, Ölçeklenebilir Vektör Grafiği dosyalarını C# dilinde programlı olarak oluşturmak veya düzenlemek için kullanılabilir. DLL dosyalarını İndirilenler bölümünden hızlı bir şekilde indirebilir veya Microsoft Visual Studio IDE’de aşağıdaki NuGet yükleme komutunu kullanabilirsiniz:

PM> Install-Package Aspose.SVG

C#’ta SVG Görüntüsünde Gauss Bulanıklığı Filtresi Nasıl Oluşturulur

Aşağıdaki adımları izleyerek bir SVG görüntüsünde Gauss bulanıklık filtresi oluşturabilirsiniz:

  1. Bir SVGDocument sınıf nesnesi başlatın ve SVG ad alanı URL’sini ayarlayın.
  2. Bir görüntü öğesi ve bir filtre öğesi oluşturun.
  3. Grafik öğesini ekleyin.
  4. Bir feGaussianBlur öğesi oluşturun ve onu filterElement öğesine ekleyin.
  5. Çıkış SVG görüntüsünü kaydedin.

SVG Görüntüsünde Programlı Olarak C# ile Gauss Bulanıklığı Filtresi Oluşturma

Aşağıdaki adımlar, C# dilinde programlı olarak bir SVG görüntüsü üzerinde bir Gauss bulanıklığı filtresi oluşturmak için kullanılabilir:

  1. Bir SVGDocument örneği oluşturun ve kaynak SVG dosyasını yükleyin.
  2. SVG için ad alanı URL’sini belirtin ve kök öğeye erişin.
  3. Bir filtre öğesi ve feGaussianBlur öğesi oluşturun.
  4. Çıkış SVG dosyasını Kaydet yöntemiyle dışa aktarın.

Aşağıdaki kod örneği, C# dilinde bir SVG görüntüsünde Gauss bulanıklaştırma filtresinin nasıl oluşturulacağını gösterir:

// Bir SVGDocument sınıf nesnesini başlat
Aspose.Svg.SVGDocument document = new Aspose.Svg.SVGDocument("complex.svg");

// SVG Ad Alanı URL'sini Ayarla
string SvgNamespace = "http://www.w3.org/2000/svg";

// Belgenin kök svg öğesini alın
Aspose.Svg.SVGSVGElement svgElement = document.RootElement;

// Bir görüntü öğesi oluşturun ve onu svgElement öğesine ekleyin
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);

// Bir defs öğesi oluşturun ve svgElement öğesine ekleyin
Aspose.Svg.SVGDefsElement defsElement = (Aspose.Svg.SVGDefsElement)document.CreateElementNS(SvgNamespace, "defs");
svgElement.AppendChild(defsElement);

// Bir filtre öğesi oluşturun ve defsElement öğesine ekleyin
Aspose.Svg.SVGFilterElement filterElement = (Aspose.Svg.SVGFilterElement)document.CreateElementNS(SvgNamespace, "filter");
defsElement.AppendChild(filterElement);

// Bir feGaussianBlur öğesi oluşturun ve filterElement öğesine ekleyin	
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);

// SVG belgesini kaydedin
document.Save(Path.Combine(dataDir, "gaussianBlur.svg"));

Ücretsiz API Lisansı Alın

Ücretsiz geçici lisans talep ederek API’yi herhangi bir değerlendirme sınırlaması olmadan değerlendirebilirsiniz.

Çözüm

Bu makalede, C# dilinde programlı olarak bir SVG görüntüsü üzerinde Gauss bulanıklık filtresi efektinin nasıl oluşturulacağını araştırdınız ve incelediniz. Oysa API tarafından sunulan çeşitli özellikleri kontrol etmek için documentation alanına göz atabilirsiniz. Endişelerinizi tartışmanız gerekirse lütfen forumda bize yazmaktan çekinmeyin.

Ayrıca bakınız