Convertir SVG en PNG en Python

Le format de fichier PNG prend en charge la compression d’image sans perte, ce qui le rend populaire auprès de ses utilisateurs. Contrairement au SVG, un format vectoriel qui n’est pas pris en charge par toutes les plateformes et applications, le PNG est universel et peut être facilement utilisé par différents logiciels, sites web et appareils. En outre, le PNG prend en charge les arrière-plans transparents, ce qui le rend idéal pour les graphiques, les logos et les images sur le web. Avec Aspose.HTML for Python via .NET, vous pouvez convertir SVG au format PNG de manière programmatique, avec un contrôle total sur un large éventail de paramètres de conversion.

Dans cet article, vous trouverez des informations sur la conversion de SVG en PNG en utilisant les méthodes convert_svg() de la classe Converter et en appliquant ImageSaveOptions. Vous pouvez également essayer un convertisseur SVG en ligne pour tester les fonctionnalités de l’API Python et convertir SVG à la volée.

Convertisseur SVG en ligne

Vous pouvez convertir SVG en d’autres formats en temps réel. Chargez SVG à partir d’un système de fichiers local ou d’une URL, sélectionnez le format de sortie et exécutez l’exemple. Les options d’enregistrement sont définies par défaut. Vous recevrez immédiatement le résultat de la conversion dans un fichier séparé.

                
            

Convertir SVG en PNG

L’utilisation des méthodes convert_svg() est la manière la plus courante de convertir le SVG dans différents formats. Pour convertir, vous pouvez charger le SVG à partir d’un fichier, d’une URL ou d’une chaîne de code. Dans l’exemple suivant, nous créons un fichier SVG à partir d’un code.

  1. Préparer le code d’un document SVG.
  2. Créez un nouvel objet ImageSaveOptions. Par défaut, la propriété format est PNG. Si vous ne définissez pas d’options spécifiques pour l’enregistrement de l’image résultante, les options par défaut seront utilisées.
  3. Utilisez la méthode convert_svg(content, base_uri, options, output_path) de la classe Converter.
 1# Convert SVG to PNG using Python
 2
 3import os
 4import aspose.html.converters as conv
 5import aspose.html.saving as sav
 6
 7# Setup directories and define paths
 8output_dir = "output/"
 9if not os.path.exists(output_dir):
10    os.makedirs(output_dir)
11save_path = os.path.join(output_dir, "circle.png")
12
13# Prepare SVG code
14svg_code = """<svg xmlns="http://www.w3.org/2000/svg">
15<circle cx="100" cy="100" r="60" fill="teal" stroke="salmon" stroke-width="10" />
16</svg>"""
17
18# Initialize ImageSaveOptions
19options = sav.ImageSaveOptions()
20
21# Convert SVG to PNG
22conv.Converter.convert_svg(svg_code, ".", options, save_path)

Convertir SVG en PNG en utilisant ImageSaveOptions

La fonctionnalité de création d’images PNG peut être améliorée avec des options de sauvegarde selon vos besoins. La classe ImageSaveOptions offre une personnalisation étendue pour convertir le contenu SVG en formats d’image. Voici une description de chaque propriété de ImageSaveOptions :

Pour convertir SVG en PNG en spécifiant ImageSaveOptions, vous devez suivre quelques étapes :

  1. Charger un fichier SVG en utilisant l’un des constructeurs SVGDocument() de la classe SVGDocument. ( tulips.svg).
  2. Créez un nouvel objet ImageSaveOptions et spécifiez les options d’enregistrement. Par défaut, la propriété format est PNG. Le constructeur ImageSaveOptions() initialise une instance de la classe ImageSaveOptions qui est passée à la méthode convert_svg(). Ici, vous pouvez définir les options d’enregistrement requises, telles que le format ou la résolution.
  3. Utilisez l’une des méthodes convert_svg() pour sauvegarder SVG en tant qu’image PNG. Dans l’exemple, la méthode convert_svg() prend les paramètres document, options, et le chemin du fichier de sortie save_path et effectue l’opération de conversion.
 1# Convert SVG to PNG with custom settings using Python
 2
 3import os
 4import aspose.html.dom.svg as ahsvg
 5import aspose.html.converters as conv
 6import aspose.html.saving as sav
 7import aspose.html.drawing as dr
 8
 9# Setup directories and define paths
10output_dir = "output/"
11input_dir = "data/"
12if not os.path.exists(output_dir):
13    os.makedirs(output_dir)
14
15document_path = os.path.join(input_dir, "tulips.svg")
16save_path = os.path.join(output_dir, "tulips.png")
17
18# Load an SVG document
19document = ahsvg.SVGDocument(document_path)
20
21# Initialize ImageSaveOptions
22options = sav.ImageSaveOptions()
23options.page_setup.first_page = dr.Page(dr.Size(500, 500), dr.Margin(10, 10, 10, 10))
24options.css.media_type.PRINT
25
26# Convert SVG to PNG
27conv.Converter.convert_svg(document, options, save_path)

Dans l’exemple ci-dessus, nous utilisons :

La figure montre la qualité du rendu SVG vers PNG en utilisant un fragment du fichier tulips.png comme exemple.

Texte “tulipes.png image”

Comment convertir les SVG en images

Aspose.HTML for Python via .NET prend en charge la conversion de SVG en images PNG, JPEG, BMP, TIFF et GIF. Pour définir le format de l’image de sortie, il suffit de spécifier l’extension requise (format) dans le nom du fichier de sortie et de définir la propriété format pour l’objet d’options d’enregistrement.

Par exemple, pour convertir SVG en GIF, vous avez besoin de :

Voir aussi

Texte “Convertisseur SVG en PNG”

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.