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
PdfSaveOptions und rufen Sie
Converter.convert_svg(document, options, output_path) auf, um SVG als PDF zu speichern. Verwenden Sie PdfSaveOptions, wenn Seitengröße, Hintergrund, Auflösung, JPEG-Qualität, Metadaten oder Verschlüsselung angepasst werden müssen.
PDF ist ein gängiges Ausgabeformat, wenn SVG-Grafiken gedruckt, archiviert, in Dokumente eingebettet oder in einem layouttreuen Format geteilt werden sollen. Aspose.SVG for Python via .NET kann SVG über eine High-Level-Converter-API oder über ein Rendering-Gerät in PDF konvertieren, wenn Sie den Rendering-Prozess ausdrücklich steuern müssen.
Verwenden Sie Converter.convert_svg() für die meisten Dateikonvertierungen. Verwenden Sie SVGDocument.render_to() mit PdfDevice, wenn Ihr Workflow bereits Rendering-Geräte nutzt oder ein gerätebasiertes Rendering-Muster benötigt.
Bevor Sie die Beispiele ausführen, installieren Sie Aspose.SVG for Python via .NET in Ihrer Python-Umgebung.
Der einfachste Weg ist, das SVG-Dokument mit SVGDocument zu laden, PdfSaveOptions zu erstellen und Converter.convert_svg() aufzurufen.
1from aspose.svg import SVGDocument
2from aspose.svg.converters import Converter
3from aspose.svg.saving import PdfSaveOptions
4
5# Convert an SVG file to PDF using the default save options
6options = PdfSaveOptions()
7
8with SVGDocument("document.svg") as document:
9 Converter.convert_svg(document, options, "document.pdf")Verwenden Sie PdfSaveOptions, wenn Sie die PDF-Ausgabe steuern müssen. Das folgende Beispiel setzt einen transparenten Hintergrund, passt die Seite an den SVG-Inhalt an, ändert die Rasterbildauflösung und passt die JPEG-Qualität an.
1import os
2from aspose.svg import SVGDocument
3from aspose.svg.converters import Converter
4from aspose.svg.drawing import Resolution
5from aspose.svg.rendering import SizingType
6from aspose.svg.saving import PdfSaveOptions
7from aspose.pydrawing import Color
8
9# Convert SVG to PDF and customize page sizing and image quality
10input_folder = "data/"
11output_folder = "output/"
12input_path = os.path.join(input_folder, "document.svg")
13output_path = os.path.join(output_folder, "document.pdf")
14os.makedirs(output_folder, exist_ok=True)
15
16options = PdfSaveOptions()
17options.background_color = Color.from_argb(0, 255, 255, 255)
18options.page_setup.sizing = SizingType.FIT_CONTENT
19options.horizontal_resolution = Resolution.from_dots_per_inch(96.0)
20options.vertical_resolution = Resolution.from_dots_per_inch(96.0)
21options.jpeg_quality = 80
22
23with SVGDocument(input_path) as document:
24 Converter.convert_svg(document, options, output_path)| Eigenschaft | Bedeutung |
|---|---|
| background_color | Seitenhintergrund, wenn SVG transparente Bereiche enthält |
| page_setup | Ausgabe-Seitengröße, Ränder und Sizing-Modus |
| horizontal_resolution | Horizontale Auflösung für gerasterte Ressourcen im PDF |
| vertical_resolution | Vertikale Auflösung für gerasterte Ressourcen im PDF |
| jpeg_quality | JPEG-Komprimierungsqualität für eingebettete Rasterbilder |
| document_info | PDF-Metadaten wie Titel, Autor, Betreff und Schlüsselwörter |
| encryption | PDF-Verschlüsselung und Berechtigungen |
PdfSaveOptions erbt PDF-Rendering-Einstellungen von
PdfRenderingOptions, daher sind viele Ausgabeeigenschaften in Converter- und Device-Workflows gemeinsam.
Die Methode render_to() sendet das geladene SVG-Dokument an ein Rendering-Gerät. Dieser Ansatz ist nützlich, wenn Ihre Anwendung bereits mit Aspose.SVG-Rendering-Geräten arbeitet oder das Zielgerät explizit wählen muss.
1import os
2from aspose.svg import SVGDocument
3from aspose.svg.rendering import SizingType
4from aspose.svg.rendering.pdf import PdfDevice, PdfRenderingOptions
5
6# Render SVG to PDF through a PdfDevice
7input_folder = "data/"
8output_folder = "output/"
9input_path = os.path.join(input_folder, "document.svg")
10output_path = os.path.join(output_folder, "document.pdf")
11os.makedirs(output_folder, exist_ok=True)
12
13options = PdfRenderingOptions()
14options.jpeg_quality = 80
15options.page_setup.sizing = SizingType.FIT_CONTENT
16
17with SVGDocument(input_path) as document:
18 with PdfDevice(options, output_path) as device:
19 document.render_to(device)| Methode | Am besten geeignet für |
|---|---|
Converter.convert_svg() | Direkte SVG-zu-PDF-Konvertierung mit kurzem Code und Speicheroptionen |
SVGDocument.render_to() | Rendering-Workflows mit Ausgabegeräten wie PdfDevice |
Für normale SVG-zu-PDF-Konvertierung beginnen Sie mit Converter.convert_svg(). Es ist kürzer und passt natürlich zur Dateikonvertierung. Verwenden Sie render_to(), wenn Sie das Rendering-Geräte-Muster benötigen.
| Problem | Wahrscheinliche Ursache | Lösung |
|---|---|---|
| Die PDF-Seitengröße entspricht nicht der Erwartung | Die Standard-Seiteneinrichtung passt nicht zum SVG-Viewport oder Inhalt | Setzen Sie options.page_setup.sizing und konfigurieren Sie Seitengröße oder Ränder explizit |
| Transparente SVG-Bereiche erscheinen mit unerwünschtem Hintergrund | Der PDF-Viewer oder Ausgabe-Workflow verwendet eigenen Hintergrund | Setzen Sie vor der Konvertierung options.background_color |
| Eingebettete Bilder wirken unscharf oder zu groß | Auflösung und JPEG-Qualität passen nicht zum Ziel | Passen Sie horizontal_resolution, vertical_resolution und jpeg_quality an |
| PDF wird nicht erstellt | Der Zielordner existiert nicht oder das Skript speichert in einem anderen Arbeitsverzeichnis | Erstellen Sie den Ausgabeordner mit os.makedirs() und verwenden Sie os.path.join() |
| Text oder externe Ressourcen fehlen | Das SVG verweist auf Schriftarten, Bilder oder CSS-Dateien, die nicht aufgelöst werden können | Verwenden Sie korrekte Pfade und halten Sie externe Ressourcen relativ zum SVG-Dokument verfügbar |
Sie können die SVG-zu-PDF-Konvertierung mit dem kostenlosen Online- SVG to PDF Converter testen. Laden Sie eine SVG-Datei hoch, führen Sie die Konvertierung aus und vergleichen Sie das Ergebnis, bevor Sie denselben Workflow in Python implementieren.
Laden Sie SVG mit SVGDocument, erstellen Sie PdfSaveOptions und rufen Sie Converter.convert_svg(document, options, output_path) auf.
Ja. Verwenden Sie die Eigenschaft page_setup von PdfSaveOptions oder PdfRenderingOptions, um Seitengröße, Ränder und Sizing-Modus zu konfigurieren.
Ja. Erstellen Sie PdfRenderingOptions, öffnen Sie ein PdfDevice und rufen Sie document.render_to(device) auf.
Transparente SVG-Inhalte können erhalten bleiben, aber das sichtbare Ergebnis hängt vom PDF-Viewer und Workflow ab. Setzen Sie background_color, wenn Sie einen vorhersehbaren Seitenhintergrund benötigen.
Reduzieren Sie jpeg_quality, verringern Sie die Auflösung eingebetteter Rasterbilder und vereinfachen Sie große oder komplexe SVG-Inhalte vor der Konvertierung.
Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.