Преобразование презентаций PowerPoint в Markdown на Python
Преобразование презентаций в Markdown
Пример ниже показывает самый простой способ преобразовать презентацию PowerPoint в Markdown с помощью Aspose.Slides for Python via .NET с настройками по умолчанию.
- Создайте объект Presentation для загрузки презентации.
- Вызовите
saveдля экспорта её в файл Markdown.
Используйте нижеприведённый фрагмент кода на Python для выполнения преобразования:
import aspose.slides as slides
with slides.Presentation("presentation.pptx") as presentation:
presentation.save("presentation.md", slides.export.SaveFormat.MD)
Преобразование презентаций в варианты Markdown
Aspose.Slides позволяет преобразовывать презентации в форматы Markdown, включая базовый Markdown, CommonMark, GitHub‑flavored Markdown, Trello, XWiki, GitLab и ещё 17 вариантов Markdown.
Ниже приведён пример на Python, показывающий, как преобразовать презентацию PowerPoint в 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)
23 поддерживаемых варианта Markdown перечислены в перечислении Flavor класса MarkdownSaveOptions.
Преобразование презентаций, содержащих изображения, в Markdown
Класс MarkdownSaveOptions предоставляет свойства и перечисления, позволяющие настроить итоговый файл Markdown. Например, перечисление MarkdownExportType управляет способом обработки изображений: SEQUENTIAL, TEXT_ONLY или VISUAL.
Последовательное преобразование изображений
Если требуется, чтобы изображения выводились по отдельности — одно за другим — в сгенерированном Markdown, выберите параметр SEQUENTIAL. Пример на Python ниже показывает, как преобразовать презентацию с изображениями в 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)
Визуальное преобразование изображений
Если необходимо, чтобы изображения выводились вместе в итоговом Markdown, выберите параметр VISUAL. В этом режиме изображения сохраняются в текущий каталог приложения (а документ Markdown использует относительные пути) либо можно указать пользовательский путь вывода и имя папки.
Ниже приведён пример на Python, демонстрирующий эту операцию:
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
Сохраняются ли гиперссылки при экспорте в Markdown?
Да. Текстовые hyperlinks сохраняются как стандартные ссылки Markdown. Переходы слайдов transitions и animations не конвертируются.
Можно ли ускорить преобразование, запустив его в нескольких потоках?
Можно параллелить обработку по файлам, но don’t share один и тот же объект Presentation между потоками. Используйте отдельные экземпляры/процессы для каждого файла, чтобы избежать конфликтов.
Что происходит с изображениями — куда они сохраняются и являются ли пути относительными?
Images экспортируются в отдельную папку, а файл Markdown по умолчанию ссылается на них относительными путями. Можно настроить базовый путь вывода и имя папки ресурсов, чтобы поддерживать предсказуемую структуру репозитория.