Konvertieren von SVG in PNG in Python

Das PNG-Dateiformat unterstützt die verlustfreie Bildkomprimierung, was es bei seinen Nutzern so beliebt macht. Im Gegensatz zu SVG, einem Vektorformat, das möglicherweise nicht von allen Plattformen und Anwendungen unterstützt wird, ist PNG universell und kann problemlos in verschiedenen Softwareprogrammen, Websites und Geräten verwendet werden. Außerdem unterstützt PNG transparente Hintergründe und ist damit ideal für Webgrafiken, Logos und Bilder. Mit Aspose.HTML for Python via .NET können Sie das SVG- in das PNG-Format programmatisch konvertieren und haben dabei die volle Kontrolle über eine Vielzahl von Konvertierungsparametern.

In diesem Artikel finden Sie Informationen zur Konvertierung von SVG in PNG unter Verwendung der Methoden convert_svg() der Klasse Converter und der Anwendung von ImageSaveOptions. Außerdem können Sie einen Online-SVG-Konverter ausprobieren, um die Python-API-Funktionalität zu testen und SVG im laufenden Betrieb zu konvertieren.

Online SVG Konverter

Sie können SVG in Echtzeit in andere Formate konvertieren. Laden Sie SVG aus einem lokalen Dateisystem oder einer URL, wählen Sie das Ausgabeformat und führen Sie das Beispiel aus. Die Speicheroptionen sind standardmäßig eingestellt. Sie erhalten das Konvertierungsergebnis sofort als separate Datei.

                
            

SVG in PNG umwandeln

Die Methoden convert_svg() sind die gebräuchlichste Methode zur Konvertierung von SVG in verschiedene Formate. Zur Konvertierung können Sie SVG aus einer Datei, einer URL oder einem Code-String laden. Im folgenden Beispiel erstellen wir eine SVG-Datei aus Code.

  1. Bereiten Sie den Code für ein SVG-Dokument vor.
  2. Erstellen Sie ein neues ImageSaveOptions Objekt. Standardmäßig ist die Eigenschaft Format PNG. Wenn Sie keine spezifischen Optionen für das Speichern des resultierenden Bildes festlegen, werden die Standardoptionen verwendet.
  3. Verwenden Sie die Methode convert_svg(content, base_uri, options, output_path) der Klasse 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)

SVG in PNG konvertieren mit ImageSaveOptions

Die Funktionalität zur Erstellung von PNG-Bildern kann durch Speicheroptionen nach Ihren Wünschen erweitert werden. Die Klasse ImageSaveOptions bietet umfangreiche Anpassungsmöglichkeiten für die Umwandlung von SVG-Inhalten in Bildformate. Hier ist eine Beschreibung der einzelnen Eigenschaften von ImageSaveOptions:

Um SVG in PNG zu konvertieren und dabei ImageSaveOptions anzugeben, sollten Sie ein paar Schritte befolgen:

  1. Laden Sie eine SVG-Datei mit einem der SVGDocument()-Konstruktoren der Klasse SVGDocument. ( tulips.svg).
  2. Erstellen Sie ein neues ImageSaveOptions Objekt und geben Sie die Speicheroptionen an. Standardmäßig ist die Eigenschaft Format PNG. Der Konstruktor ImageSaveOptions() initialisiert eine Instanz der Klasse ImageSaveOptions, die an die Methode convert_svg() übergeben wird. Hier können Sie die erforderlichen Speicheroptionen, wie Format oder Auflösung, festlegen.
  3. Verwenden Sie eine der Methoden convert_svg(), um SVG als PNG-Bild zu speichern. Im Beispiel nimmt die Methode convert_svg() die Parameter document, options und den Pfad der Ausgabedatei save_path und führt die Konvertierung durch.
 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)

Im obigen Beispiel verwenden wir:

Die Abbildung zeigt die Qualität der Umwandlung von SVG in PNG am Beispiel eines Fragments der Datei “tulips.png”.

Text “tulips.png image”

SVG in Bilder umwandeln

Aspose.HTML for Python via .NET unterstützt die Konvertierung von SVG in PNG-, JPEG-, BMP-, TIFF- und GIF-Bilder. Um das Ausgabebildformat festzulegen, müssen Sie nur die erforderliche Erweiterung (Format) im Namen der Ausgabedatei angeben und die Eigenschaft Format für das Objekt “Save Options” festlegen.

Um zum Beispiel SVG in GIF zu konvertieren, benötigen Sie:

Siehe auch

Text “SVG zu PNG Konverter”

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.