Alt Gölge Efekti SVG C#

SVG görüntüler, aranabilen, dizine eklenebilen, sıkıştırılabilen ve komut dosyası olarak yazılabilen web dostu vektör görüntülerdir. Oysa gölgeler, görüntüleri estetik açıdan çekici ve belirgin kılmak için kullanılan yaygın bir tasarım özelliğidir. Bazen bir SVG görüntüsüne bir simge veya metin gibi bir alt gölge efekti eklemeniz gerekebilir. Buna göre, bu makale bir SVG görüntüsü üzerinde programlı olarak C# dilinde bir alt gölge efektinin nasıl oluşturulacağını açıklamaktadır.

SVG Görüntüsünde Gölge Efekti – C# API Ücretsiz İndirme

Aspose.SVG for .NET, Ölçeklenebilir Vektör Grafiklerini C# dilinde programlı olarak düzenlemek, güncellemek veya dönüştürmek için birçok özellik sunduğu için SVG görüntüleri ile çalışmayı destekler. Yeni Sürümler sayfasından referans DLL dosyalarına erişmeniz veya varsa tüm bağımlılıklarla birlikte NuGet galerisinden yapılandırmak için aşağıdaki NuGet komutunu çalıştırmanız yeterlidir.

PM> Install-Package Aspose.SVG

C# ile SVG Resminde Alt Gölge Efekti Nasıl Oluşturulur

Aşağıdaki adımlar, bir SVG görüntüsüne alt gölge efekti ekleme sürecinin tamamını özetlemektedir:

  1. SVGDocument sınıfından bir nesne oluşturun.
  2. SVG Ad Alanı URL’sini ayarlayın ve kök SVG öğesini alın.
  3. feOffset filtre ilkelini eklemek için defs öğesi ve bir filterElement oluşturun.
  4. Bir feBlend filtresi ve bir metin öğesi oluşturun.
  5. Save yöntemini çağırarak çıktı SVG görüntüsünü Alt Gölge efektiyle kaydedin.

SVG Görüntüsünde Programlı Olarak C# Dilinde Alt Gölge Efekti Oluşturma

C# dilinde programlı olarak SVG görüntüsü üzerinde gölge efekti oluşturmak için lütfen aşağıdaki adımları izleyin:

  1. SVGDocument sınıfından bir nesne oluşturun.
  2. SVG Ad Alanı URL’sini ayarlayın ve kök SVG öğesini alın.
  3. feOffset filtre ilkelini eklemek için defs öğesi ve bir filterElement oluşturun.
  4. Bir feBlend filtresi ve bir metin öğesi oluşturun.
  5. Çıktı SVG görüntüsünü Kaydet yöntemini çağırarak Alt Gölge efektiyle kaydedin.

Aşağıdaki kod parçacığı, C#’ta bir SVG görüntüsünde gölge efektinin nasıl oluşturulacağını gösterir:

// SVGDocument sınıfının bir nesnesini başlat
Aspose.Svg.SVGDocument document = new Aspose.Svg.SVGDocument();

// 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 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
var filterElement = (Aspose.Svg.SVGFilterElement)document.CreateElementNS(SvgNamespace, "filter");
filterElement.Id = "shadow";
filterElement.SetAttribute("x", "-20px");
filterElement.SetAttribute("y", "-20px");
filterElement.SetAttribute("height", "150px");
filterElement.SetAttribute("width", "150px");
defsElement.AppendChild(filterElement);

// Bir feOffset filtre ilkesi oluşturun ve filterElement öğesine ekleyin
var feOffsetElement = (Aspose.Svg.Filters.SVGFEOffsetElement)document.CreateElementNS(SvgNamespace, "feOffset");
feOffsetElement.In1.BaseVal = "SourceAlpha";
feOffsetElement.SetAttribute("result", "offset");
feOffsetElement.SetAttribute("dx", "3");
feOffsetElement.SetAttribute("dy", "3");
filterElement.AppendChild(feOffsetElement);

//// Bir feGaussianBlur filtresi ilkesi oluşturun ve filterElement öğesine ekleyin
//var feGaussianBlurElement = (Aspose.Svg.Filters.SVGFEGaussianBlurElement)document.CreateElementNS(SvgNamespace, "feGaussianBlur");
//feGaussianBlurElement.In1.BaseVal = "kaydırma";
//feGaussianBlurElement.StdDeviationX.BaseVal = 3;
//feGaussianBlurElement.StdDeviationY.BaseVal = 3;
//feGaussianBlurElement.SetAttribute("sonuç", "bulanıklık");
//filterElement.AppendChild(feGaussianBlurElement);

// Bir feBlend filtresi ilkel oluşturun ve filterElement öğesine ekleyin
var feBlendElement = (Aspose.Svg.Filters.SVGFEBlendElement)document.CreateElementNS(SvgNamespace, "feBlend");
feBlendElement.In1.BaseVal = "SourceGraphic";
feBlendElement.In2.BaseVal = "blur";
feBlendElement.SetAttribute("mode", "normal");
filterElement.AppendChild(feBlendElement);

// Bir metin öğesi oluşturun ve svgElement öğesine ekleyin
var textElement = (Aspose.Svg.SVGTextElement)document.CreateElementNS(SvgNamespace, "text");
textElement.Style.FontSize = "5em";
textElement.SetAttribute("x", "20px");
textElement.SetAttribute("fill", "#C0C0C0");
textElement.SetAttribute("y", "100px");
textElement.TextContent = "Aspose.SVG API";
textElement.SetAttribute("filter", "url(#shadow)");
svgElement.InsertBefore(textElement, svgElement.FirstChild);

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

Lütfen yukarıdaki kod parçacığında birkaç satırlık kodun yorumlandığını unutmayın. Çıktının daha yumuşak bir gölgeyle öne çıkmasını sağlayan bulanık bir alt gölge efektini tercih ediyorsanız, gölgeye Gauss bulanıklığı efekti uygulamak için açıklamayı kaldırmayı seçebilirsiniz.

Ücretsiz Geçici Lisans Alın

API’yi tam kapasitesiyle test etmek için bir ücretsiz geçici lisans talep edebilirsiniz.

Çözüm

Bu makalede, C# dilinde programlı olarak bir SVG görüntüsü üzerinde alt gölge efekti oluşturmayı öğrendiniz. Mevcut bir SVG görüntüsünü yükleyerek işleyebilir veya ihtiyaçlarınıza göre sıfırdan yeni bir SVG görüntüsü oluşturabilirsiniz. Ayrıca API’nin diğer birçok özelliğini öğrenmek için dokümantasyon bölümünü ziyaret edebilirsiniz. Herhangi bir sorunuzu veya endişenizi bizimle görüşmeniz gerekirse, lütfen forum aracılığıyla bize ulaşmaktan çekinmeyin.

Ayrıca bakınız