PowerPoint-Präsentationen in Markdown mit Python konvertieren
Übersicht
Aspose.Slides for Python via .NET kann PPT- und PPTX-Präsentationen in Markdown für Dokumentation, statische Websites, Inhaltsmigration und Versionskontroll‑Workflows konvertieren. Sie können einen Markdown‑Flavor wählen, steuern, wie Folieninhalt gerendert wird, und entscheiden, wo exportierte Bilder gespeichert werden und wie das erzeugte Markdown auf sie verweist.
Standardmäßig verwendet der Markdown‑Export eine rein textbasierte Ausgabe. Um visuelle Inhalte zu exportieren, setzen Sie die MarkdownSaveOptions.export_type‑Eigenschaft auf den Wert SEQUENTIAL oder VISUAL aus der Aufzählung MarkdownExportType. SEQUENTIAL rendert Folienelemente getrennt und in Reihenfolge, während VISUAL gruppierte Elemente zusammenhält, um deren visuelle Beziehung zu bewahren. Der Wert TEXT_ONLY erzeugt keine Bildressourcen.
Präsentation in Markdown konvertieren
Laden Sie die Quelldatei mit der Klasse Presentation und rufen Sie anschließend die Methode Presentation.save mit dem Wert MD aus der Aufzählung SaveFormat auf.
import aspose.slides as slides
with slides.Presentation("presentation.pptx") as presentation:
presentation.save("presentation.md", slides.export.SaveFormat.MD)
Markdown‑Flavor auswählen
Die Eigenschaft MarkdownSaveOptions.flavor steuert die für die Ausgabe verwendete Markdown‑Spezifikation. Die Aufzählung Flavor enthält CommonMark, GitHub Flavored Markdown und weitere unterstützte Varianten.
Das folgende Beispiel exportiert eine Präsentation als CommonMark:
import aspose.slides as slides
options = slides.export.MarkdownSaveOptions()
options.flavor = slides.export.Flavor.COMMON_MARK
with slides.Presentation("presentation.pptx") as presentation:
presentation.save("presentation.md", slides.export.SaveFormat.MD, options)
Bilder mit dem standardmäßigen lokalen Speicherverhalten exportieren
Die Klasse MarkdownSaveOptions stellt zwei Eigenschaften für lokal gespeicherte Bilder bereit:
- base_path gibt das Basisverzeichnis für das Markdown‑Dokument und dessen Ressourcen an.
- images_save_folder_name gibt das Unterverzeichnis für Bilder an. Der Standardwert ist
Images.
Das folgende Beispiel rendert visuelle Inhalte, schreibt Bilder nach output/assets und erzeugt relative Bildverweise im Markdown‑Dokument:
import os
import aspose.slides as slides
output_directory = "output"
os.makedirs(output_directory, exist_ok=True)
options = slides.export.MarkdownSaveOptions()
options.export_type = slides.export.MarkdownExportType.VISUAL
options.base_path = output_directory
options.images_save_folder_name = "assets"
markdown_path = os.path.join(output_directory, "presentation.md")
with slides.Presentation("presentation.pptx") as presentation:
presentation.save(markdown_path, slides.export.SaveFormat.MD, options)
Aspose.Slides erstellt das Bildunterverzeichnis, wenn der Export Bildressourcen erzeugt, aber die Anwendung muss base_path anlegen, bevor die Markdown‑Datei gespeichert wird.
Markdown und Bilder für die Veröffentlichung vorbereiten
Aspose.Slides for Python via .NET stellt die .NET‑Callbacks zum Bildspeichern nicht bereit, um jeden erzeugten Bildlink beim Export zu ersetzen. Stattdessen exportieren Sie das Markdown‑Dokument und den zugehörigen Bildordner in ein Publikationsverzeichnis und veröffentlichen dieses Verzeichnis, ohne die relative Struktur zu ändern.
Das folgende Beispiel bereitet cdn-origin/presentations/quarterly-report als eingehängtes oder synchronisiertes Publikationsverzeichnis vor. Das Beispiel führt keinen Netzwerk‑Upload aus: Die erzeugten Links werden gültig, sobald das Verzeichnis an der vorgesehenen Website oder CDN‑Stelle veröffentlicht wird.
import os
import aspose.slides as slides
publication_directory = os.path.join(
"cdn-origin",
"presentations",
"quarterly-report")
os.makedirs(publication_directory, exist_ok=True)
options = slides.export.MarkdownSaveOptions()
options.export_type = slides.export.MarkdownExportType.VISUAL
options.base_path = publication_directory
options.images_save_folder_name = "assets"
markdown_path = os.path.join(publication_directory, "presentation.md")
with slides.Presentation("presentation.pptx") as presentation:
presentation.save(markdown_path, slides.export.SaveFormat.MD, options)
Veröffentlichen Sie presentation.md zusammen mit dem assets‑Verzeichnis. Das Markdown‑Dokument verwendet relative Bildverweise, sodass beide Elemente am Zielort dieselbe Beziehung beibehalten müssen. Wenn ein Veröffentlichungssystem absolute externe URLs verlangt, überschreiben Sie die erzeugten Links in einem separaten Nachbearbeitungsschritt, nachdem alle Bilddateien veröffentlicht wurden.
FAQ
Können Python‑Callbacks einzelne Bilddateien und Links während des Markdown‑Exports anpassen?
Nein. Aspose.Slides for Python via .NET stellt die .NET‑Callbacks ImageSaving und SvgImageSaving nicht bereit. Konfigurieren Sie die lokale Ausgabe mit MarkdownSaveOptions.base_path und MarkdownSaveOptions.images_save_folder_name, anschließend veröffentlichen oder nachbearbeiten Sie die erzeugten Ressourcen.
Wo werden exportierte Bilder gespeichert?
Der Bildspeicherort wird durch MarkdownSaveOptions.base_path und MarkdownSaveOptions.images_save_folder_name gesteuert. Das Markdown‑Dokument referenziert diese Bilder mit relativen Pfaden.
Welchen Pfadtrennzeichen sollten Bildlinks verwenden?
Verwenden Sie Vorwärtsschrägstriche in Markdown‑Links und URLs. Nutzen Sie os.path.join nur für Dateisystempfade und normalisieren Sie jeden während der Nachbearbeitung erstellten Link separat.
Werden Hyperlinks beim Markdown‑Export beibehalten?
Ja. Text Hyperlinks werden als Standard‑Markdown‑Links beibehalten. Folien-Übergänge und -Animationen werden nicht konvertiert.
Können Präsentationen parallel in Markdown konvertiert werden?
Sie können verschiedene Präsentationsdateien parallel verarbeiten, sollten aber dieselbe Presentation‑Instanz nicht zwischen Threads teilen. Befolgen Sie die multithreading guidelines und verwenden Sie für jede Datei eine separate Instanz.