Convertir presentaciones de PowerPoint a Markdown en Python

Convertir presentaciones a Markdown

El ejemplo a continuación muestra la forma más sencilla de convertir una presentación de PowerPoint a Markdown usando Aspose.Slides para Python a través de .NET con la configuración predeterminada.

  1. Instanciar una Presentation para cargar la presentación.
  2. Llamar a save para exportarla como un archivo Markdown.

Utilice el fragmento de Python a continuación para realizar la conversión:

import aspose.slides as slides

with slides.Presentation("presentation.pptx") as presentation:  
    presentation.save("presentation.md", slides.export.SaveFormat.MD)

Convertir presentaciones a formato Markdown

Aspose.Slides le permite convertir presentaciones a formatos Markdown, incluidos Markdown básico, CommonMark, GitHub‑flavored Markdown, Trello, XWiki, GitLab y 17 sabores de Markdown más.

El siguiente ejemplo en Python muestra cómo convertir una presentación de PowerPoint a CommonMark:

import aspose.slides as slides

save_options = slides.export.MarkdownSaveOptions()
save_options.flavor = slides.export.Flavor.COMMON_MARK

with slides.Presentation("presentation.pptx") as presentation:
    presentation.save("presentation.md", slides.export.SaveFormat.MD, save_options)

Los 23 sabores de Markdown compatibles se enumeran en la enumeración Flavor de la clase MarkdownSaveOptions.

Convertir presentaciones con imágenes a Markdown

La clase MarkdownSaveOptions proporciona propiedades y enumeraciones que le permiten configurar el archivo Markdown resultante. Por ejemplo, la enumeración MarkdownExportType controla cómo se manejan las imágenes: SEQUENTIAL, TEXT_ONLY o VISUAL.

Convertir imágenes secuencialmente

Si desea que las imágenes aparezcan individualmente—una tras otra—en el Markdown generado, elija la opción SEQUENTIAL. El ejemplo en Python a continuación muestra cómo convertir una presentación con imágenes a Markdown.

import aspose.slides as slides

save_options = slides.export.MarkdownSaveOptions()
save_options.show_hidden_slides = True
save_options.show_slide_number = True
save_options.flavor = slides.export.Flavor.GITHUB
save_options.export_type = slides.export.MarkdownExportType.SEQUENTIAL
save_options.new_line_type = slides.export.NewLineType.WINDOWS

slide_indices = [1, 3, 5]

with slides.Presentation("presentation.pptx") as presentation:
    presentation.save("presentation.md", slide_indices, slides.export.SaveFormat.MD, save_options)

Convertir imágenes visualmente

Si desea que las imágenes aparezcan juntas en el Markdown resultante, elija la opción VISUAL. En este modo, las imágenes se guardan en el directorio actual de la aplicación (y el documento Markdown usa rutas relativas), o puede especificar una ruta de salida y un nombre de carpeta personalizados.

El ejemplo en Python a continuación demuestra esta operación:

import os
import aspose.slides as slides

save_options = slides.export.MarkdownSaveOptions()
save_options.export_type = slides.export.MarkdownExportType.VISUAL
save_options.images_save_folder_name = "md-images"
save_options.base_path = "c:\\documents"

with slides.Presentation("presentation.pptx") as presentation:
    file_path = os.path.join(save_options.base_path, "presentation.md")
    presentation.save(file_path, slides.export.SaveFormat.MD, save_options)

FAQ

¿Los hipervínculos sobreviven a la exportación a Markdown?

Sí. Los hipervínculos de texto hyperlinks se conservan como enlaces Markdown estándar. Las transiciones de diapositiva transitions y las animaciones animations no se convierten.

¿Puedo acelerar la conversión ejecutándola en varios hilos?

Puede paralelizar por archivos, pero don’t share la misma instancia de Presentation entre hilos. Use instancias o procesos separados por archivo para evitar contención.

¿Qué ocurre con las imágenes—dónde se guardan y son rutas relativas?

Las Images 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.