Convertir presentaciones de PowerPoint a Markdown en C++
SaveOptions::MarkdownExportType::Visual) y también configurar el BasePath donde se guardarán las imágenes referenciadas en el documento markdown.
Convertir PowerPoint a Markdown
- Cree una instancia de la clase Presentation para representar un objeto de presentación.
- Utilice el método Save para guardar el objeto como un archivo markdown.
Este código C++ le muestra cómo convertir PowerPoint a markdown:
System::SharedPtr<Presentation> pres = System::MakeObject<Presentation>(u"pres.pptx");
pres->Save(u"pres.md", SaveFormat::Md);
Convertir PowerPoint a un Sabor de Markdown
Aspose.Slides le permite convertir PowerPoint a markdown (con sintaxis básica), CommonMark, markdown con estilo GitHub, Trello, XWiki, GitLab y otros 17 sabores de markdown.
Este código C++ le muestra cómo convertir PowerPoint a CommonMark:
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);
Los 23 sabores de markdown admitidos están enumerados en la enumeración Flavor de la clase MarkdownSaveOptions.
Convertir una Presentación que Contiene Imágenes a Markdown
La clase MarkdownSaveOptions proporciona propiedades y enumeraciones que le permiten usar determinadas opciones o configuraciones para el archivo markdown resultante. El enum MarkdownExportType, por ejemplo, puede establecerse en valores que determinan cómo se renderizan o manejan las imágenes: Sequential, TextOnly, Visual.
Convertir Imágenes Secuencialmente
Si desea que las imágenes aparezcan individualmente una tras otra en el markdown resultante, debe elegir la opción secuencial. Este código C++ le muestra cómo convertir una presentación que contiene imágenes a markdown:
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);
Convertir Imágenes Visualmente
Si desea que las imágenes aparezcan juntas en el markdown resultante, debe elegir la opción visual. En este caso, las imágenes se guardarán en el directorio actual de la aplicación (y se generará una ruta relativa para ellas en el documento markdown), o puede especificar la ruta y el nombre de carpeta que prefiera.
Este código C++ demuestra la operación:
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
¿Los hipervínculos sobreviven a la exportación a Markdown?
Sí. Los hipervínculos del texto se conservan como enlaces Markdown estándar. Las transiciones y animaciones de las diapositivas no se convierten.
¿Puedo acelerar la conversión ejecutándola en varios hilos?
Puede paralelizar por archivos, pero no comparta la misma instancia de Presentation entre hilos. Use instancias/procesos separados por archivo para evitar contención.
¿Qué ocurre con las imágenes: dónde se guardan y son rutas relativas?
Las imágenes se exportan a una carpeta dedicada, y el archivo Markdown las referencia con rutas relativas de forma predeterminada. Puede configurar la ruta base de salida y el nombre de la carpeta de recursos para mantener una estructura de repositorio predecible.