Конвертировать SVG в изображения, JPG, PNG, BMP, TIFF и GIF с помощью Python

В этой статье вы найдете информацию о том, как конвертировать SVG в такие форматы файлов изображений, как JPG, PNG, BMP, TIFF и GIF. Преобразование файлов изображений необходимо для разработки веб-сайтов, работы графических дизайнеров, фотографии и других целей. Выбор формата изображения зависит от того, распечатаете ли вы его на полиграфии, отправите по электронной почте или разместите изображение на веб-странице.

В статье представлено общее описание функций преобразования Aspose.SVG for Python via .NET и описаны поддерживаемые сценарии преобразования SVG в изображения с использованием классов Converter и SVGDocument.

Чтобы продолжить следовать этому руководству, вам необходимо установить и настроить библиотеку Aspose.SVG for Python via .NET в вашем проекте Python. Наши примеры кода помогут вам конвертировать файлы SVG с помощью библиотеки Python.

Онлайн-конвертер SVG

Конвертировать SVG в изображения и другие популярные форматы можно любым способом – онлайн или программно. Проверьте функциональность Aspose.SVG API и конвертируйте SVG в режиме реального времени! Загрузите SVG из локальной файловой системы или URL-адреса, выберите выходной формат и запустите пример. В примере параметры сохранения установлены по умолчанию. Вы сразу получите результат в виде отдельного файла.

                
            

Если вы хотите программно конвертировать SVG в форматы изображений на Python, ознакомьтесь со следующими сценариями преобразования и примерами кода Python.

Конвертировать SVG в JPG

Формат JPG обеспечивает высокую степень сжатия с минимальной потерей качества, что делает его идеальным для использования в Интернете, где размер файла имеет значение. Он широко поддерживается на всех устройствах и платформах, обеспечивая совместимость и простоту совместного использования. Кроме того, способность JPG обрабатывать сложные цветовые вариации делает его идеальным для фотографий и реалистичных изображений.

Использование метода convert_svg()

Использование методов convert_svg() – наиболее распространенный способ конвертировать SVG в различные популярные форматы. Вы можете конвертировать SVG в JPG или в другой формат программно с полным контролем над широким диапазоном параметров преобразования. В следующем фрагменте кода показано, как преобразовать SVG в JPG и указать цвет фона, размер страницы, поля, а также вертикальное и горизонтальное разрешение. Кроме того, пример Python покажет, как настроить пути к исходным и выходным файлам в вашей файловой системе:

 1import os
 2import aspose
 3from aspose.svg import *
 4from aspose.svg.converters import *
 5from aspose.svg.drawing.skiasharp import *
 6from aspose.svg.rendering import *
 7from aspose.svg.drawing import *
 8from aspose.svg.saving import *
 9
10# Initialize an SVG document from a file
11input_folder = "data/"
12output_folder = "output/"
13src_file = os.path.join(input_folder, "сhristmas-tree.svg")
14output_file = os.path.join(output_folder, "сhristmas-tree.jpg")
15if not os.path.exists(output_folder):
16    os.makedirs(output_folder)
17
18# Activate the Aspose.SVG.Drawing.SkiaSharp feature
19Configuration.set_extension(SkiaModule())
20options = ImageSaveOptions()
21options.format.JPEG
22options.background_color = aspose.pydrawing.Color.from_argb(233, 255, 241)
23options.page_setup.any_page = Page(Size(450, 450), Margin(20, 20, 20, 20))
24options.horizontal_resolution = Resolution.from_dots_per_inch(96.0)
25options.vertical_resolution = Resolution.from_dots_per_inch(96.0)
26with SVGDocument(src_file) as document:
27
28    # Convert SVG to JPG
29    Converter.convert_svg(document, options, output_file)

Оценить качество конвертации вы можете, попробовав наш продукт. Здесь мы приводим иллюстрацию: на следующем рисунке показано исходное изображение сhristmas-tree.svg (а) и преобразованное изображение сhristmas-tree.jpg с новым цветом фона (б):

Текст «Исходное изображение сhristmas-tree.svg и преобразованное изображение сhristmas-tree.jpg с новым цветом фона»

Как конвертировать SVG в изображение

Aspose.SVG for Python via .NET поддерживает преобразование SVG в такие форматы изображений, как PNG, JPG, JPEG, BMP, TIFF, GIF и WEBP. Для этого вы можете использовать приведенный выше код Python; чтобы изменить формат выходного изображения, вам нужно всего лишь указать необходимое расширение (формат) в имени выходного файла и установить свойство format.

Например, чтобы преобразовать SVG в GIF, вам нужно:

  1. установить свойство формата: options.format.GIF,
  2. и установите расширение .gif в имени файла выходного изображения: output_file = os.path.join(output_folder, "image.gif").

Параметры сохранения изображения – класс ImageSaveOptions

Aspose.SVG позволяет конвертировать SVG в форматы файлов изображений, используя параметры сохранения по умолчанию или пользовательские. Использование ImageSaveOptions позволяет настроить процесс рендеринга. Например, вы можете указать формат изображения, размер страницы, поля, цвет фона и т. д.

PropertyDescription
compressionSets Tagged Image File Format (TIFF) Compression. By default, this property is LZW.
cssGets a CssOptions object which is used for configuration of CSS properties processing.
formatSets the ImageFormat (JPG, PNG, BMP, TIFF, or GIF). By default, this property is PNG.
background_colorThis property sets the color that will fill the background. By default, this property is transparent.
page_setupThis property allows you to define the layout of the page, including dimensions and margins.
horizontal_resolutionSets the horizontal resolution for output and internal images in pixels per inch (dpi). By default, this property is set to 300 dpi, which is used unless overridden by specific conditions. The resolution is always applied unless the Page size is set in pixels (px), in which case the default resolution is 96 dpi.
vertical_resolutionSets the vertical resolution for output and internal images in pixels per inch (dpi). By default, this property is set to 300 dpi, which is used unless overridden by specific conditions. The resolution is always applied unless the Page size is set in pixels (px), in which case the default resolution is 96 dpi.
smoothing_modeThis property sets the rendering quality for this image.
textGets a TextOptions object which is used for configuration of text rendering.

Примечание. Параметры, реализуемые с помощью класса ImageSaveOptions, наследуются от класса ImageRenderingOptions.

Использование метода render_to()

Рассмотрим, как преобразовать документ из SVG в JPG с помощью метода render_to():

В следующем примере показано, как применить свойства page_setup, horizontal_resolution и vertical_resolution для преобразования SVG в JPG:

 1import os
 2from aspose.svg import *
 3from aspose.svg.drawing.skiasharp import *
 4from aspose.svg.rendering import *
 5from aspose.svg.drawing import *
 6from aspose.svg.rendering.image import *
 7
 8# Initialize an SVG document from a file
 9input_folder = "data/"
10output_folder = "output/"
11src_file = os.path.join(input_folder, "image.svg")
12output_file = os.path.join(output_folder, "image.jpg")
13if not os.path.exists(output_folder):
14    os.makedirs(output_folder)
15
16with SVGDocument(src_file) as document:
17    # Initialize an instance of the ImageRenderingOptions class and set custom properties
18    image_rendering_options = ImageRenderingOptions()
19    image_rendering_options.format = ImageFormat.JPEG
20    image_rendering_options.horizontal_resolution = Resolution.from_dots_per_inch(96.0)
21    image_rendering_options.vertical_resolution = Resolution.from_dots_per_inch(96.0)
22    image_rendering_options.page_setup.any_page = Page(Size(600, 600), Margin(10, 10, 10, 10))
23
24    # Initialize an instance of the ImageDevice class
25    with ImageDevice(image_rendering_options, output_file) as device:
26        # Render SVG to JPG and send the document to the rendering device
27        document.render_to(device)

Вы можете использовать приведенный выше код Python для преобразования SVG в такие форматы изображений, как PNG, JPG, JPEG, BMP, TIFF, GIF и WEBP. Чтобы изменить формат выходного изображения, вам необходимо указать необходимое расширение (формат) в имени выходного файла и установить свойство «формат».

Например, чтобы преобразовать SVG в BMP, вам нужно всего лишь установить свойство format:

image_rendering_options.format = ImageFormat.BMP,

и установите расширение .bmp в имени файла выходного изображения:

выходной_файл = os.path.join(выходная_папка, "image.bmp").

Параметры рендеринга изображения – класс ImageRenderingOptions

Класс ImageRenderingOptions в Aspose.SVG for Python via .NET предоставляет набор опций для управления тем, как документы SVG преобразуются в форматы изображений. Класс ImageRenderingOptions используется вместе с конкретным устройством ImageDevice, которое представляет целевые форматы выходных изображений для визуализированного содержимого SVG.

Этот класс позволяет вам точно настроить процесс рендеринга в соответствии с конкретными требованиями. Вот ключевые свойства, связанные с классом ImageRenderingOptions:

PropertyDescription
compressionSets Tagged Image File Format (TIFF) Compression. By default, this property is LZW.
cssThis property gets a CssOptions object, which is used for the configuration of CSS properties processing.
formatSets the ImageFormat (JPG, PNG, BMP, TIFF, or GIF). By default, this property is PNG.
background_colorThis property allows you to set the background color for the rendered output. If not set, the default background is transparent.
page_setupThis property allows you to define the layout of the page, including dimensions and margins.
horizontal_resolutionSets the horizontal resolution for output and internal images in pixels per inch (dpi). By default, this property is set to 300 dpi, which is used unless overridden by specific conditions. The resolution is always applied unless the Page size is set in pixels (px), in which case the default resolution is 96 dpi.
vertical_resolutionSets the vertical resolution for output and internal images in pixels per inch (dpi). By default, this property is set to 300 dpi, which is used unless overridden by specific conditions. The resolution is always applied unless the Page size is set in pixels (px), in which case the default resolution is 96 dpi.
smoothing_modeThis property sets the rendering quality for this image.
textGets a TextOptions object which is used for configuration of text rendering.

Вы можете попробовать наш бесплатный онлайн-конвертер Конвертер SVG в JPG, который работает с высоким качеством, легко и быстро. Просто загрузите SVG, конвертируйте его и получите результаты за считанные секунды! Это быстро, легко и совершенно бесплатно!

Text «Конвертер баннеров SVG в JPG»

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.