Всякий раз, когда требуется прозрачность изображений в Интернете, одним из форматов, которые приходят на ум, является PNG. Изображение SVG также является одним из наиболее часто используемых форматов изображений из-за его масштабируемости. Для отображения небольших статических изображений, логотипов и изображений с прозрачным фоном часто предпочтительны изображения PNG. Из-за совместимости или по любой другой причине часто требуется конвертировать векторную графику SVG в другие форматы. В этой статье обсуждается, как преобразовать векторную графику SVG в изображения PNG с помощью C#.
.NET API для преобразования изображений
GroupDocs позволяет разработчикам с помощью Conversion 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# с помощью .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. Свяжитесь с нами по любому вопросу через форум.