Convertir presentaciones de PowerPoint a Markdown en Android
Aspose.Slides admite la conversión de presentaciones a markdown.
markdownSaveOptions.setExportType(MarkdownExportType.Visual) y también establecer el BasePath donde se guardarán las imágenes referenciadas en el documento markdown.
Convertir PowerPoint a Markdown
- Crea una instancia de la clase Presentation para representar un objeto de presentación.
- Utiliza el método Save para guardar el objeto como un archivo markdown.
Este código Java muestra cómo convertir PowerPoint a markdown:
Presentation pres = new Presentation("pres.pptx");
try {
pres.save("pres.md", SaveFormat.Md);
} finally {
if (pres != null) pres.dispose();
}
Convertir PowerPoint a un sabor de Markdown
Aspose.Slides permite convertir PowerPoint a markdown (con sintaxis básica), CommonMark, markdown con sabor de GitHub, Trello, XWiki, GitLab y 17 sabores de markdown más.
Este código Java muestra cómo convertir PowerPoint a CommonMark:
Presentation pres = new Presentation("pres.pptx");
try {
MarkdownSaveOptions markdownSaveOptions = new MarkdownSaveOptions();
markdownSaveOptions.setFlavor(Flavor.CommonMark);
pres.save("pres.md", SaveFormat.Md, markdownSaveOptions);
} finally {
if (pres != null) pres.dispose();
}
Los 23 sabores de markdown compatibles se encuentran listados bajo 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 permiten utilizar ciertas 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 deseas que las imágenes aparezcan individualmente una tras otra en el markdown resultante, debes elegir la opción secuencial. Este código Java muestra cómo convertir una presentación que contiene imágenes a markdown:
Presentation pres = new Presentation("pres.pptx");
try {
MarkdownSaveOptions markdownSaveOptions = new MarkdownSaveOptions();
markdownSaveOptions.setShowHiddenSlides(true);
markdownSaveOptions.setShowSlideNumber(true);
markdownSaveOptions.setFlavor(Flavor.Github);
markdownSaveOptions.setExportType(MarkdownExportType.Sequential);
markdownSaveOptions.setNewLineType(NewLineType.Windows);
pres.save("doc.md", new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9 }, SaveFormat.Md, markdownSaveOptions);
} finally {
if (pres != null) pres.dispose();
}
Convertir imágenes visualmente
Si deseas que las imágenes aparezcan juntas en el markdown resultante, debes elegir la opción visual. En este caso, las imágenes se guardarán en el directorio actual de la aplicación (y se construirá una ruta relativa para ellas en el documento markdown), o puedes especificar la ruta y el nombre de carpeta que prefieras.
Este código Java demuestra la operación:
Presentation pres = new Presentation("pres.pptx");
try {
final String outPath = "c:/documents";
MarkdownSaveOptions markdownSaveOptions = new MarkdownSaveOptions();
markdownSaveOptions.setExportType(MarkdownExportType.Visual);
markdownSaveOptions.setImagesSaveFolderName("md-images");
markdownSaveOptions.setBasePath(outPath);
pres.save("pres.md", SaveFormat.Md, markdownSaveOptions);
} finally {
if (pres != null) pres.dispose();
}
Preguntas frecuentes
¿Los hipervínculos sobreviven a la exportación a Markdown?
Sí. Los hipervínculos de texto se conservan como enlaces Markdown estándar. Las transiciones y animaciones de diapositiva no se convierten.
¿Puedo acelerar la conversión ejecutándola en varios hilos?
Puedes paralelizar por archivos, pero no compartas la misma instancia de Presentation entre hilos. Utiliza instancias o procesos separados por archivo para evitar contención.
¿Qué ocurre con las imágenes —dónde se guardan y son las rutas relativas?
Las imágenes se exportan a una carpeta dedicada, y el archivo Markdown las referencia con rutas relativas por defecto. Puedes configurar la ruta base de salida y el nombre de la carpeta de recursos para mantener una estructura de repositorio predecible.