Конвертировать презентации PowerPoint в Markdown в .NET
ExportType = MarkdownExportType.Visual и задать BasePath, куда будут сохраняться изображения, упомянутые в markdown‑документе.
Преобразование PowerPoint в Markdown
- Создайте экземпляр класса Presentation для представления объекта презентации.
- Используйте метод [Save ]для сохранения объекта в файл markdown.
Этот C#‑код показывает, как преобразовать PowerPoint в markdown:
using (Presentation pres = new Presentation("pres.pptx"))
{
pres.Save("pres.md", SaveFormat.Md);
}
Преобразование PowerPoint в варианты Markdown
Aspose.Slides позволяет преобразовать PowerPoint в markdown (с базовым синтаксисом), CommonMark, GitHub‑flavored markdown, Trello, XWiki, GitLab и еще 17 других вариантов markdown.
Этот C#‑код показывает, как преобразовать PowerPoint в CommonMark:
using (Presentation pres = new Presentation("pres.pptx"))
{
pres.Save("pres.md", SaveFormat.Md, new MarkdownSaveOptions
{
Flavor = Flavor.CommonMark
});
}
23 поддерживаемых варианта markdown перечислены в списке Flavor enumeration класса MarkdownSaveOptions.
Преобразование презентации с изображениями в Markdown
Класс MarkdownSaveOptions предоставляет свойства и перечисления, позволяющие задавать различные параметры для получаемого markdown‑файла. Перечисление MarkdownExportType можно установить в значения, определяющие способ обработки изображений: Sequential, TextOnly, Visual.
Преобразование изображений последовательно
Если вам нужно, чтобы изображения отображались одно за другим в полученном markdown, выберите последовательный вариант. Этот C#‑код показывает, как преобразовать презентацию с изображениями в markdown:
using (Presentation pres = new Presentation("pres.pptx"))
{
MarkdownSaveOptions markdownSaveOptions = new MarkdownSaveOptions
{
ShowHiddenSlides = true,
ShowSlideNumber = true,
Flavor = Flavor.Github,
ExportType = MarkdownExportType.Sequential,
NewLineType = NewLineType.Windows
};
pres.Save("doc.md", new[] { 1, 2, 3, 4, 5, 6, 7, 8, 9 }, SaveFormat.Md, markdownSaveOptions);
}
Преобразование изображений визуально
Если вам нужно, чтобы изображения отображались вместе в полученном markdown, выберите визуальный вариант. В этом случае изображения будут сохранены в текущий каталог приложения (и в markdown‑документе будет сформирован относительный путь), либо вы можете указать свой путь и имя папки.
Этот C#‑код демонстрирует операцию:
using (Presentation pres = new Presentation("pres.pptx"))
{
const string outPath = "c:\\documents";
pres.Save(Path.Combine(outPath, "pres.md"), SaveFormat.Md, new MarkdownSaveOptions
{
ExportType = MarkdownExportType.Visual,
ImagesSaveFolderName = "md-images",
BasePath = outPath
});
}
FAQ
Сохраняются ли гиперссылки при экспорте в Markdown?
Да. Текстовые hyperlinks сохраняются как стандартные ссылки Markdown. Слайды с transitions и animations не конвертируются.
Могу ли я ускорить конвертацию, запустив её в нескольких потоках?
Можно распараллелить обработку по файлам, но не делите один и тот же объект Presentation между потоками. Используйте отдельные экземпляры или процессы для каждого файла, чтобы избежать конфликтов.
Что происходит с изображениями — где они сохраняются и являются ли пути относительными?
Images экспортируются в отдельную папку, а markdown‑файл ссылается на них относительными путями по умолчанию. Вы можете задать базовый путь вывода и имя папки ресурсов, чтобы поддерживать предсказуемую структуру репозитория.