Щоразу, коли потрібна прозорість зображень в Інтернеті, одним із форматів, який спадає на думку, є PNG. Зображення SVG також є одним із часто використовуваних форматів зображень завдяки своїй масштабованості. Для відображення невеликих статичних зображень, логотипів і для зображень із прозорим фоном часто перевагу надають зображенням PNG. Через сумісність або будь-яку іншу причину часто потрібно конвертувати векторну графіку SVG в інші формати. У цій статті розповідається про те, як перетворити векторну графіку SVG на зображення PNG за допомогою C#.
 
 
.NET API для перетворення зображень
GroupDocs дає змогу розробникам за допомогою API перетворення перетворювати формати зображень у різноманітні інші формати. Перетворене зображення також можна змінити під час процесу перетворення за допомогою різних додаткових параметрів. У цій статті я використаю його GroupDocs.Conversion for .NET, щоб перетворити векторне зображення SVG у зображення PNG.
Ви можете завантажити інсталятор DLL або MSI із розділу завантажень або встановити API, додавши його пакет до програми .NET за допомогою NuGet.
PM> Install-Package GroupDocs.Conversion
Приклади виконання його функцій також доступні на GitHub. Відвідайте його документацію та довідник API, щоб отримати вказівки.
Перетворення SVG на зображення PNG за допомогою C#
Почнемо з перетворення векторної графіки у формат PNG за допомогою параметрів за замовчуванням. Наступні кроки показують, як перетворити зображення SVG на PNG за допомогою C#.
- Завантажте файл SVG за допомогою класу Converter.
- Підготуйте параметри перетворення зображення.
- Встановіть тип файлу конвертації як PNG.
- Викликати метод Convert() із підготовленими параметрами.
Наступний вихідний код C# перетворює SVG на зображення PNG.
// Як конвертувати файл SVG у формат PNG у C# за допомогою API перетворення .NET із параметрами за замовчуванням
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. Зв’яжіться з нами для будь-якого запиту через форум.