PowerPoint-Präsentationen in Markdown konvertieren in C++
SaveOptions::MarkdownExportType::Visual) festlegen und außerdem den BasePath setzen, in dem die im Markdown‑Dokument referenzierten Bilder gespeichert werden.
PowerPoint in Markdown konvertieren
- Erstellen Sie eine Instanz der Klasse Presentation , um ein Präsentationsobjekt darzustellen.
- Verwenden Sie die Methode Save, um das Objekt als Markdown‑Datei zu speichern.
Dieses C++‑Beispiel zeigt, wie PowerPoint in Markdown konvertiert wird:
System::SharedPtr<Presentation> pres = System::MakeObject<Presentation>(u"pres.pptx");
pres->Save(u"pres.md", SaveFormat::Md);
PowerPoint in einen Markdown‑Flavor konvertieren
Aspose.Slides ermöglicht die Konvertierung von PowerPoint zu Markdown (mit grundlegender Syntax), CommonMark, GitHub‑flavored Markdown, Trello, XWiki, GitLab und 17 weiteren Markdown‑Flavors.
Dieses C++‑Beispiel zeigt, wie PowerPoint in CommonMark konvertiert wird:
auto pres = System::MakeObject<Presentation>(u"pres.pptx");
auto opt = System::MakeObject<MarkdownSaveOptions>();
opt->set_Flavor(Aspose::Slides::DOM::Export::Markdown::SaveOptions::Flavor::CommonMark);
pres->Save(u"pres.md", Aspose::Slides::Export::SaveFormat::Md, opt);
Die 23 unterstützten Markdown‑Flavors sind im Flavor‑Enum der Klasse MarkdownSaveOptions aufgelistet.
Eine Präsentation mit Bildern in Markdown konvertieren
Die Klasse MarkdownSaveOptions stellt Eigenschaften und Aufzählungen bereit, mit denen Sie bestimmte Optionen oder Einstellungen für die resultierende Markdown‑Datei festlegen können. Das Enum MarkdownExportType kann beispielsweise auf Werte gesetzt werden, die bestimmen, wie Bilder gerendert oder behandelt werden: Sequential, TextOnly, Visual.
Bilder sequenziell konvertieren
Wenn Sie möchten, dass die Bilder im resultierenden Markdown einzeln nacheinander erscheinen, müssen Sie die Option „Sequential“ wählen. Dieses C++‑Beispiel zeigt, wie eine Präsentation mit Bildern in Markdown konvertiert wird:
System::SharedPtr<Presentation> pres = System::MakeObject<Presentation>(u"pres.pptx");
System::SharedPtr<MarkdownSaveOptions> markdownSaveOptions = System::MakeObject<MarkdownSaveOptions>();
markdownSaveOptions->set_ShowHiddenSlides(true);
markdownSaveOptions->set_ShowSlideNumber(true);
markdownSaveOptions->set_Flavor(Flavor::Github);
markdownSaveOptions->set_ExportType(MarkdownExportType::Sequential);
markdownSaveOptions->set_NewLineType(NewLineType::Windows);
pres->Save(u"doc.md", System::MakeArray<int32_t>({1, 2, 3, 4, 5, 6, 7, 8, 9}), SaveFormat::Md, markdownSaveOptions);
Bilder visuell konvertieren
Wenn Sie möchten, dass die Bilder im resultierenden Markdown zusammen angezeigt werden, müssen Sie die Option „Visual“ wählen. In diesem Fall werden die Bilder im aktuellen Verzeichnis der Anwendung gespeichert (und im Markdown‑Dokument wird ein relativer Pfad dafür erzeugt), oder Sie können Ihren gewünschten Pfad und Ordnernamen angeben.
Dieses C++‑Beispiel demonstriert den Vorgang:
auto pres = System::MakeObject<Presentation>(u"pres.pptx");
const System::String outPath = u"x:\\documents";
auto opt = System::MakeObject<MarkdownSaveOptions>();
opt->set_ExportType(Aspose::Slides::DOM::Export::Markdown::SaveOptions::MarkdownExportType::Visual);
opt->set_ImagesSaveFolderName(u"md-images");
opt->set_BasePath(outPath);
pres->Save(System::IO::Path::Combine(outPath, u"pres.md"), Aspose::Slides::Export::SaveFormat::Md, opt);
FAQ
Bleiben Hyperlinks beim Export nach Markdown erhalten?
Ja. Text‑Hyperlinks werden als reguläre Markdown‑Links beibehalten. Folien‑Übergänge und -Animationen werden nicht konvertiert.
Kann ich die Konvertierung beschleunigen, indem ich sie in mehreren Threads ausführe?
Sie können die Verarbeitung über Dateien hinweg parallelisieren, aber Sie sollten dieselbe Presentation‑Instanz nicht über Threads hinweg teilen. Verwenden Sie für jede Datei separate Instanzen/Prozesse, um Konflikte zu vermeiden.
Was passiert mit den Bildern – wo werden sie gespeichert und sind die Pfade relativ?
Bilder werden in einen eigenen Ordner exportiert, und die Markdown‑Datei verweist standardmäßig mit relativen Pfaden darauf. Sie können den Basis‑Ausgabepfad und den Namen des Asset‑Ordners konfigurieren, um eine vorhersehbare Repository‑Struktur beizubehalten.