Filter Gaussian Blur SVG C#

Gambar SVG atau Scalable Vector Graphic populer karena fitur skalabilitas dan kualitasnya. Anda dapat menerapkan beberapa filter pada gambar SVG berdasarkan kebutuhan Anda. untuk mengaburkan dan memperhalus gambar SVG, Anda dapat menerapkan filter Gaussian blur. Mengikuti kasus penggunaan tersebut, artikel ini membahas cara membuat filter Gaussian blur pada gambar SVG secara terprogram di C#.

Filter Gaussian Blur pada Gambar SVG – C# API Download

Aspose.SVG for .NET dapat digunakan untuk membuat atau mengedit file Scalable Vector Graphic secara terprogram dalam C#. Anda dapat mengunduh file DLL dengan cepat dari bagian Unduhan, atau menggunakan perintah penginstalan NuGet berikut di Microsoft Visual Studio IDE:

PM> Install-Package Aspose.SVG

Cara Membuat Filter Gaussian Blur pada Gambar SVG di C#

Anda dapat membuat filter Gaussian blur pada gambar SVG dengan mengikuti langkah-langkah di bawah ini:

  1. Inisialisasi objek kelas SVGDocument dan setel URL namespace SVG.
  2. Buat elemen gambar dan elemen filter.
  3. Tambahkan elemen grafis.
  4. Buat elemen feGaussianBlur dan tambahkan ke filterElement.
  5. Simpan gambar SVG keluaran.

Buat Filter Gaussian Blur pada Gambar SVG Secara Terprogram di C#

Langkah-langkah berikut dapat digunakan untuk membuat filter Gaussian blur pada gambar SVG secara terprogram di C#:

  1. Buat instance SVGDocument dan muat file sumber SVG.
  2. Tentukan URL namespace untuk SVG dan akses elemen root.
  3. Buat elemen filter dan elemen feGaussianBlur.
  4. Ekspor file SVG keluaran dengan metode Save.

Contoh kode berikut menunjukkan cara membuat filter Gaussian blur pada gambar SVG di C#:

// Inisialisasi objek kelas SVGDocument
Aspose.Svg.SVGDocument document = new Aspose.Svg.SVGDocument("complex.svg");

// Setel Url Ruang Nama SVG
string SvgNamespace = "http://www.w3.org/2000/svg";

// Dapatkan elemen root svg dari dokumen
Aspose.Svg.SVGSVGElement svgElement = document.RootElement;

// Buat elemen gambar dan tambahkan ke 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);

// Buat elemen defs dan tambahkan ke svgElement
Aspose.Svg.SVGDefsElement defsElement = (Aspose.Svg.SVGDefsElement)document.CreateElementNS(SvgNamespace, "defs");
svgElement.AppendChild(defsElement);

// Buat elemen filter dan tambahkan ke defsElement
Aspose.Svg.SVGFilterElement filterElement = (Aspose.Svg.SVGFilterElement)document.CreateElementNS(SvgNamespace, "filter");
defsElement.AppendChild(filterElement);

// Buat elemen feGaussianBlur dan tambahkan ke 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);

// Simpan dokumen SVG
document.Save(Path.Combine(dataDir, "gaussianBlur.svg"));

Dapatkan Lisensi API Gratis

Anda dapat mengevaluasi API tanpa batasan evaluasi apa pun dengan meminta lisensi sementara gratis.

Kesimpulan

Pada artikel ini, Anda telah menyelidiki dan menjelajahi cara membuat efek filter Gaussian blur pada gambar SVG secara terprogram dalam C#. Padahal, Anda bisa melihat ruang dokumentasi untuk memeriksa berbagai fitur yang ditawarkan oleh API. Silakan menulis kepada kami di forum jika Anda perlu mendiskusikan kekhawatiran Anda.

Lihat juga