Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.
Quick Answer: Laden Sie SVG mit
SVGDocument, erstellen Sie
ImageSaveOptions, setzen Sie das Bildformat und rufen Sie
Converter.convert_svg(document, options, output_path) auf. Mit ImageSaveOptions steuern Sie Hintergrundfarbe, Seitengröße, Ränder und Ausgabeauflösung.
Aspose.SVG for Python via .NET kann SVG-Dokumente in Rasterformate wie JPG, BMP, TIFF, GIF und PNG konvertieren. Verwenden Sie JPG, wenn Transparenz nicht erforderlich ist, PNG für transparente Rasterausgabe, TIFF für Publishing und Bildverarbeitung, BMP für einfache Bitmap-Ausgabe und GIF für leichte Rasterausgabe.
Fokussierte Tutorials finden Sie unter SVG in PNG in Python konvertieren und SVG in JPG in Python konvertieren. Dieser Artikel behandelt den breiteren SVG-zu-Bild-Workflow und die Formatwahl.
Bevor Sie die Beispiele ausführen, installieren Sie Aspose.SVG for Python via .NET in Ihrer Python-Umgebung.
Das folgende Beispiel verwendet SVGDocument, ImageSaveOptions und Converter.convert_svg(), um SVG in JPG zu konvertieren und Hintergrund, Seitengröße, Ränder und Auflösung festzulegen. JPG unterstützt keine Transparenz, daher ist ein Hintergrund oft wichtig.
1import os
2from aspose.svg import SVGDocument
3from aspose.svg.converters import Converter
4from aspose.svg.drawing import Margin, Page, Resolution, Size
5from aspose.svg.rendering.image import ImageFormat
6from aspose.svg.saving import ImageSaveOptions
7from aspose.pydrawing import Color
8
9# Convert SVG to JPG with custom background, page size, and resolution
10input_folder = "data/"
11output_folder = "output/"
12input_path = os.path.join(input_folder, "christmas-tree.svg")
13output_path = os.path.join(output_folder, "christmas-tree.jpg")
14os.makedirs(output_folder, exist_ok=True)
15
16options = ImageSaveOptions()
17options.format = ImageFormat.JPEG
18options.background_color = Color.from_argb(233, 255, 241)
19options.page_setup.any_page = Page(Size(450, 450), Margin(20, 20, 20, 20))
20options.horizontal_resolution = Resolution.from_dots_per_inch(96.0)
21options.vertical_resolution = Resolution.from_dots_per_inch(96.0)
22
23with SVGDocument(input_path) as document:
24 Converter.convert_svg(document, options, output_path)Das folgende Bild zeigt die SVG-Quelle und das konvertierte JPG mit benutzerdefinierter Hintergrundfarbe.

Um SVG in einem anderen Bildformat zu speichern, setzen Sie
ImageSaveOptions.format und verwenden die passende Dateiendung. Nutzen Sie zum Beispiel
ImageFormat Werte wie ImageFormat.GIF mit .gif, ImageFormat.BMP mit .bmp oder ImageFormat.TIFF mit .tiff.
1options.format = ImageFormat.GIF
2output_path = os.path.join(output_folder, "image.gif")| Eigenschaft | Bedeutung |
|---|---|
| format | Zielbildformat wie JPG, PNG, BMP, TIFF oder GIF |
| background_color | Hintergrundfarbe für transparente SVG-Bereiche |
| page_setup | Ausgabegröße, Ränder und Seitenlayout |
| horizontal_resolution | Horizontale Ausgabeauflösung in Pixel pro Zoll |
| vertical_resolution | Vertikale Ausgabeauflösung in Pixel pro Zoll |
| smoothing_mode | Rendering-Qualität für Formen und Kanten |
| compression | TIFF-Komprimierungseinstellungen |
ImageSaveOptions erbt Bild-Rendering-Einstellungen von
ImageRenderingOptions, daher sind viele Eigenschaften in Converter- und Device-Workflows gemeinsam.
Die Methode
render_to() sendet SVG-Inhalte an ein
ImageDevice. Dieser Ansatz ist nützlich, wenn Ihre Anwendung bereits Rendering-Geräte verwendet oder das Zielgerät explizit wählen muss.
1import os
2from aspose.svg import SVGDocument
3from aspose.svg.drawing import Margin, Page, Resolution, Size
4from aspose.svg.rendering.image import ImageDevice, ImageFormat, ImageRenderingOptions
5
6# Render SVG to JPG through an ImageDevice
7input_folder = "data/"
8output_folder = "output/"
9input_path = os.path.join(input_folder, "image.svg")
10output_path = os.path.join(output_folder, "image.jpg")
11os.makedirs(output_folder, exist_ok=True)
12
13options = ImageRenderingOptions()
14options.format = ImageFormat.JPEG
15options.horizontal_resolution = Resolution.from_dots_per_inch(96.0)
16options.vertical_resolution = Resolution.from_dots_per_inch(96.0)
17options.page_setup.any_page = Page(Size(600, 600), Margin(10, 10, 10, 10))
18
19with SVGDocument(input_path) as document:
20 with ImageDevice(options, output_path) as device:
21 document.render_to(device)| Problem | Wahrscheinliche Ursache | Lösung |
|---|---|---|
| JPG hat schwarzen oder unerwarteten Hintergrund | JPG unterstützt keine Transparenz | Setzen Sie vor der Konvertierung options.background_color |
| Ausgabe ist abgeschnitten oder zu groß | Seiteneinrichtung passt nicht zum SVG-Viewport oder zur gewünschten Ausgabegröße | Konfigurieren Sie page_setup.any_page mit Page, Size und Margin |
| Bild ist unscharf | Auflösung oder Seitengröße ist zu niedrig | Erhöhen Sie horizontal_resolution, vertical_resolution oder Ausgabeabmessungen |
| Falsches Format wird erzeugt | Bildformat und Dateiendung passen nicht zusammen | Setzen Sie options.format und die Ausgabedateiendung bewusst |
| Externe Bilder oder CSS fehlen | Relative Ressourcen können während der Konvertierung nicht aufgelöst werden | Speichern Sie Ressourcen neben dem SVG oder verwenden Sie korrekte absolute Pfade |
Nutzen Sie den kostenlosen Online- SVG to JPG Converter oder den allgemeinen SVG Converter, um SVG-zu-Bild-Konvertierung vor der Python-Implementierung zu testen.
Laden Sie SVG mit SVGDocument, setzen Sie ImageSaveOptions.format auf ImageFormat.JPEG und rufen Sie Converter.convert_svg(document, options, output_path) auf.
Ja. Ändern Sie options.format auf den gewünschten ImageFormat-Wert und verwenden Sie die passende Dateiendung.
JPG unterstützt keine Transparenz. Eine Hintergrundfarbe macht transparente SVG-Bereiche im konvertierten Bild vorhersehbar.
Ja. Konfigurieren Sie options.page_setup.any_page mit Page, Size und Margin, und setzen Sie bei Bedarf die Auflösung.
Verwenden Sie Converter.convert_svg() für normale Dateikonvertierung. Verwenden Sie render_to(), wenn Sie einen Workflow mit ImageDevice benötigen.
Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.