ตัวกรอง Gaussian Blur SVG C#

SVG หรือภาพกราฟิกแบบเวกเตอร์ที่ปรับขนาดได้เป็นที่นิยมเนื่องจากความสามารถในการปรับขนาดและคุณสมบัติด้านคุณภาพ คุณสามารถใช้ตัวกรองหลายตัวกับภาพ SVG ตามความต้องการของคุณ หากต้องการเบลอและทำให้ภาพ SVG เรียบขึ้น คุณอาจใช้ตัวกรอง Gaussian blur จากกรณีการใช้งานดังกล่าว บทความนี้จะกล่าวถึงวิธีสร้างตัวกรอง Gaussian blur บนรูปภาพ SVG โดยทางโปรแกรมใน C#

ตัวกรอง Gaussian Blur บนรูปภาพ SVG – ดาวน์โหลด C# API

Aspose.SVG for .NET สามารถใช้สร้างหรือแก้ไขไฟล์กราฟิกแบบเวกเตอร์ที่ปรับขนาดได้โดยทางโปรแกรมใน C# คุณสามารถดาวน์โหลดไฟล์ DLL ได้อย่างรวดเร็วจากส่วน ดาวน์โหลด หรือใช้คำสั่งติดตั้ง NuGet ต่อไปนี้ใน Microsoft Visual Studio IDE:

PM> Install-Package Aspose.SVG

วิธีสร้างตัวกรอง Gaussian Blur บนภาพ SVG ใน C

คุณสามารถสร้างตัวกรอง Gaussian blur บนภาพ SVG โดยทำตามขั้นตอนด้านล่าง:

  1. เริ่มต้นวัตถุคลาส SVGDocument และตั้งค่า URL เนมสเปซ SVG
  2. สร้างองค์ประกอบรูปภาพและองค์ประกอบตัวกรอง
  3. ผนวกองค์ประกอบกราฟิก
  4. สร้างองค์ประกอบ feGaussianBlur และเพิ่มไปยัง filterElement
  5. บันทึกภาพ SVG เอาต์พุต

สร้างตัวกรอง Gaussian Blur บนภาพ SVG โดยทางโปรแกรมใน C

สามารถใช้ขั้นตอนต่อไปนี้เพื่อสร้างตัวกรอง Gaussian blur บนภาพ SVG โดยทางโปรแกรมใน C#:

  1. สร้างอินสแตนซ์ SVGDocument และโหลดไฟล์ SVG ต้นทาง
  2. ระบุเนมสเปซ URL สำหรับ SVG และเข้าถึงองค์ประกอบรูท
  3. สร้างองค์ประกอบตัวกรองและองค์ประกอบ feGaussianBlur
  4. ส่งออกไฟล์ SVG เอาต์พุตด้วยวิธี บันทึก

ตัวอย่างโค้ดต่อไปนี้สาธิตวิธีสร้างตัวกรอง Gaussian blur บนรูปภาพ SVG ใน C#:

// เริ่มต้นวัตถุคลาส SVGDocument
Aspose.Svg.SVGDocument document = new Aspose.Svg.SVGDocument("complex.svg");

// ตั้งค่า SVG เนมสเปซ URL
string SvgNamespace = "http://www.w3.org/2000/svg";

// รับรูทองค์ประกอบ svg ของเอกสาร
Aspose.Svg.SVGSVGElement svgElement = document.RootElement;

// สร้างองค์ประกอบรูปภาพและเพิ่มไปยัง 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);

// สร้างองค์ประกอบ defs และเพิ่มไปยัง svgElement
Aspose.Svg.SVGDefsElement defsElement = (Aspose.Svg.SVGDefsElement)document.CreateElementNS(SvgNamespace, "defs");
svgElement.AppendChild(defsElement);

// สร้างองค์ประกอบตัวกรองและเพิ่มไปยัง defsElement
Aspose.Svg.SVGFilterElement filterElement = (Aspose.Svg.SVGFilterElement)document.CreateElementNS(SvgNamespace, "filter");
defsElement.AppendChild(filterElement);

// สร้างองค์ประกอบ feGaussianBlur และเพิ่มไปยัง 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);

// บันทึกเอกสาร SVG
document.Save(Path.Combine(dataDir, "gaussianBlur.svg"));

รับใบอนุญาต API ฟรี

คุณสามารถประเมิน API ได้โดยไม่มีข้อจำกัดในการประเมินโดยขอ ใบอนุญาตชั่วคราวฟรี

บทสรุป

ในบทความนี้ คุณได้ตรวจสอบและสำรวจวิธีสร้างเอฟเฟกต์ตัวกรอง Gaussian blur บนรูปภาพ SVG โดยทางโปรแกรมใน C# ในขณะเดียวกัน คุณสามารถดูพื้นที่ เอกสาร เพื่อตรวจสอบคุณสมบัติต่างๆ ที่นำเสนอโดย API โปรดอย่าลังเลที่จะเขียนถึงเราที่ ฟอรัม ในกรณีที่คุณต้องการหารือเกี่ยวกับข้อกังวลของคุณ

ดูสิ่งนี้ด้วย