แปลง SVG เป็น JPG PNG รูปภาพ C#

SVG (Scalable Vector Graphics) เป็นรูปแบบที่ใช้กันอย่างแพร่หลายสำหรับกราฟิกแบบเวกเตอร์ แม้ว่า SVG จะมีความสามารถในการขยายขนาดและการเรนเดอร์ที่มีคุณภาพสูง แต่คุณอาจต้องแปลงไฟล์ SVG เป็นรูปแบบภาพแบบแรสเตอร์ เช่น JPG หรือ PNG เพื่อความเข้ากันได้ที่กว้างขึ้น เช่น การฝังในรายงาน, หน้าเว็บ, หรือแอปพลิเคชันมือถือ ในโพสต์บล็อกนี้ เราจะแนะนำคุณถึงขั้นตอนในการแปลง SVG เป็น JPG และ PNG ใน C#

SVG to Image Converter - C# API Installation

ในการแปลง SVG เป็นรูปแบบภาพแรสเตอร์ คุณต้องติดตั้ง Conholdate.Total for .NET จาก New Releases หรือรันคำสั่งติดตั้ง NuGet ต่อไปนี้:

PM> NuGet\Install-Package Conholdate.Total

ทำไมต้องแปลง SVG เป็นรูปแบบภาพ?

มีเหตุผลหลายประการที่นักพัฒนาและนักออกแบบจำเป็นต้องแปลงไฟล์ SVG ไปยังรูปแบบภาพแบบแรสเตอร์ เช่น JPG และ PNG:

  • ความเข้ากันได้: แอปพลิเคชันและแพลตฟอร์มหลายตัวไม่รองรับ SVG แต่รองรับ JPG หรือ PNG ได้อย่างง่ายดาย
  • ประสิทธิภาพ: รูปภาพแรสเตอร์จะเรนเดอร์ได้เร็วขึ้นในบางแพลตฟอร์มและใช้พลังงานในการประมวลผลน้อยกว่าการเรนเดอร์ SVG แบบไดนามิก
  • การพิมพ์: SVG อาจสูญเสียรายละเอียดหรือไม่สามารถเรนเดอร์ได้อย่างถูกต้องในรูปแบบการพิมพ์ ในขณะที่ PNG และ JPG จะให้คุณภาพที่พร้อมสำหรับการพิมพ์
  • การรวม: รูปภาพแบบแรสเตอร์มักจะง่ายต่อการฝังลงในเอกสาร อีเมล และการนำเสนอสื่อมัลติมีเดีย

ตอนนี้ มาดำน้ำไปในการใช้งานกันเถอะ

แปลง SVG เป็น JPG ใน C#

คุณสามารถแปลง SVG เป็นรูปแบบ JPG ใน C# โดยทำตามขั้นตอนดังต่อไปนี้:

  • Load any input SVG or define the SVG code.
  • ระบุเส้นทางที่ไฟล์ JPG จะถูกบันทึก
  • ใช้ ImageSaveOptions เพื่อตั้งค่ารูปแบบการส่งออกเป็น JPEG.
  • Call ConvertSVG to process the conversion.

ตัวอย่างต่อไปนี้แสดงให้เห็นว่าจะแปลง SVG เป็น JPG ใน C#:

// Prepare SVG code
var code = "<svg xmlns='http://www.w3.org/2000/svg'>" +
            "<circle cx ='100' cy ='100' r ='55' fill='green' stroke='red' stroke-width='10' />" +
            "</svg>";

// เตรียมเส้นทางสำหรับการบันทึกไฟล์ที่แปลงแล้ว
string savePath = Path.Combine(dataDir, "svgtojpgimage.jpg");

// สร้างอินสแตนซ์ของคลาส ImageSaveOptions
var options = new Aspose.Html.Saving.ImageSaveOptions(Aspose.Html.Rendering.Image.ImageFormat.Jpeg);

// แปลง SVG เป็น JPG
Aspose.Html.Converters.Converter.ConvertSVG(code, ".", options, savePath);

แปลง SVG เป็น PNG รูปภาพใน C#

สำหรับการแปลง SVG เป็น PNG กระบวนการจะคล้ายกัน แต่ต้องเปลี่ยนรูปแบบเอาต์พุตเป็น PNG:

  • อ่าน SVG ที่เป็นแหล่งข้อมูลหรือสร้างภาพ SVG ใด ๆ
  • Provide the file path to write the PNG file.
  • สร้างอินสแตนซ์ของคลาส ImageSaveOptions และระบุ PNG เป็นรูปแบบที่ต้องการ
  • แปลง SVG เป็น PNG ด้วยวิธี ConvertSVG

โค้ดตัวอย่างด้านล่างแสดงวิธีการแปลง SVG เป็น PNG ใน C#:

// Prepare SVG code
var code = "<svg xmlns='http://www.w3.org/2000/svg'>" +
            "<circle cx ='100' cy ='100' r ='55' fill='green' stroke='red' stroke-width='10' />" +
            "</svg>";

// เตรียมเส้นทางสำหรับการบันทึกไฟล์ที่แปลงแล้ว
string savePath = Path.Combine(dataDir, "image.png");

// สร้างอินสแตนซ์ของคลาส ImageSaveOptions
var options = new Aspose.Html.Saving.ImageSaveOptions(Aspose.Html.Rendering.Image.ImageFormat.Png);

// แปลง SVG เป็น PNG
Aspose.Html.Converters.Converter.ConvertSVG(code, ".", options, savePath);

ใบอนุญาตการประเมินผลฟรี

คุณสามารถขอรับ free temporary license เพื่อทดสอบ API ให้เต็มขีดความสามารถได้

สรุป

การแปลง SVG เป็นรูปแบบภาพราสเตอร์ เช่น JPG และ PNG เป็นความต้องการทั่วไปในแอปพลิเคชันต่างๆ ไม่ว่าคุณจะต้องการภาพคุณภาพสูงสำหรับแอปพลิเคชันเว็บ, รายงาน หรือโครงการมัลติมีเดีย โค้ดตัวอย่างที่ให้มารับประกันการแปลง SVG เป็นภาพอย่างเชื่อถือได้ หากมีข้อกังวลใดๆ กรุณาเขียนถึงเราที่ forum.

See Also