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

แปลง SVG เป็น PNG โดยใช้ C# (โทนสีเทา, หมุน, พลิก, ลายน้ำสว่าง)

.NET API เพื่อแปลงรูปภาพ

GroupDocs ให้อำนาจแก่นักพัฒนาด้วย Conversion API เพื่อแปลงรูปแบบรูปภาพเป็นรูปแบบอื่นๆ ที่หลากหลาย ภาพที่แปลงยังสามารถแก้ไขได้ในขณะที่กระบวนการแปลงโดยใช้ตัวเลือกขั้นสูงต่างๆ ในบทความนี้ ฉันจะใช้ GroupDocs.Conversion for .NET เพื่อแปลงรูปภาพเวกเตอร์ SVG เป็นรูปภาพ PNG

คุณสามารถ ดาวน์โหลด โปรแกรมติดตั้ง DLLs หรือ MSI จากส่วนดาวน์โหลด หรือติดตั้ง API โดยเพิ่มแพ็คเกจลงในแอปพลิเคชัน .NET ของคุณผ่าน NuGet

PM> Install-Package GroupDocs.Conversion

ตัวอย่างการเรียกใช้คุณลักษณะต่างๆ มีอยู่ใน GitHub ไปที่ documentation และ API Reference เพื่อขอคำแนะนำ

แปลงภาพ SVG เป็น PNG โดยใช้ C#

เริ่มจากการแปลงกราฟิกแบบเวกเตอร์เป็นรูปแบบ PNG โดยใช้การตั้งค่าเริ่มต้น ขั้นตอนต่อไปนี้แสดงวิธีแปลงภาพ SVG เป็น PNG โดยใช้ C#

  • โหลดไฟล์ SVG โดยใช้คลาส Converter
  • เตรียมตัวเลือกการแปลงภาพ
  • กำหนดประเภทไฟล์การแปลงเป็น PNG
  • เรียกใช้เมธอด Convert() พร้อมตัวเลือกที่เตรียมไว้

ซอร์สโค้ด C# ต่อไปนี้แปลง SVG เป็นภาพ PNG

// วิธีแปลงไฟล์ SVG เป็นรูปแบบ PNG ใน C# โดยใช้ .NET Conversion API พร้อมตัวเลือกเริ่มต้น
using (Converter converter = new Converter("path/vector-graphics.svg"))
{
    ImageConvertOptions options = new ImageConvertOptions
    {
        Format = ImageFileType.Png
    };
    converter.Convert("path/svg-to-png.png", options);
}

รูปภาพ SVG เป็น PNG โดยใช้ตัวเลือกขั้นสูงโดยใช้ C#

การปรับแต่งต่างๆ สามารถใช้ได้กับเอาต์พุต PNG ในขณะที่แปลงกราฟิกแบบเวกเตอร์ นี่คือคุณสมบัติภาพ PNG บางส่วนที่เราสามารถปรับได้:

  • ความสว่าง
  • ตัดกัน
  • แกมมา
  • ระดับสีเทา
  • โหมดพลิก (แนวนอน / แนวตั้ง)
  • มุมการหมุน
  • ส่วนสูง
  • ความกว้าง
  • ลายน้ำ

ขั้นตอนต่อไปนี้แสดงวิธีการแปลงรูปภาพ SVG เป็น PNG และใช้การปรับแต่งเพิ่มเติมกับไฟล์ PNG ที่เป็นผลลัพธ์

  • โหลดกราฟิก SVG โดยใช้คลาส Converter
  • เตรียมตัวเลือกการแปลงภาพ
  • กำหนดประเภทไฟล์การแปลงเป็น PNG
  • กำหนดการปรับแต่งแบบเลือกและปรับค่า
  • แปลงเป็นภาพ PNG โดยใช้วิธี Convert() พร้อมตัวเลือกที่เตรียมไว้

ซอร์สโค้ดต่อไปนี้ใช้การปรับแต่งในการแปลง SVG เป็น PNG โดยใช้ C# คุณสามารถใช้เอฟเฟ็กต์เหล่านี้หรือการผสมผสานเอฟเฟกต์สำหรับเอาต์พุต PNG ที่ต้องการ

// แปลงไฟล์ SVG เป็นรูปแบบ PNG ใน C# โดยใช้การปรับแต่งต่างๆ
using (Converter converter = new Converter("path/vector-graphics.svg"))
{
    ImageConvertOptions options = new ImageConvertOptions
    {
        Format = ImageFileType.Png,
        FlipMode = ImageFlipModes.FlipY,
        RotateAngle = 45, 
        Grayscale = true
        /*
        Brightness = 50,
        Contrast = 50,
        Gamma = 0.5F,
        */
    };
    // การใช้ลายน้ำบนภาพที่แปลงแล้ว
    WatermarkOptions watermark = new WatermarkTextOptions("Watermark")
    {
        Color = Color.Blue,
        Width = 150,
        Height = 150,
        Background = false,
        Top = 50,
        Left = 50,
        RotationAngle = -45,
        Transparency = 50,
    };
    options.Watermark = watermark;
    
    converter.Convert("path/svg-to-png-customized.png", options);
}

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

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

บทสรุป

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

ลองเรียกใช้ตัวอย่างจาก GitHub ที่จะช่วยคุณสร้างตัวแปลง SVG เป็น PNG ของคุณเอง ซึ่งคล้ายกับที่มีให้ใน groupdocs.app ติดต่อเราสำหรับคำถามใด ๆ ผ่านทาง ฟอรัม

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