Конвертировать презентации PowerPoint в Markdown на JavaScript
markdownSaveOptions.setExportType(MarkdownExportType.Visual) и также задать BasePath, куда будут сохраняться изображения, на которые ссылается markdown‑документ.
Преобразование PowerPoint в Markdown
- Создайте экземпляр класса Presentation, представляющий объект презентации.
- Используйте метод save для сохранения объекта в файл markdown.
Этот код JavaScript показывает, как преобразовать PowerPoint в markdown:
var pres = new aspose.slides.Presentation("pres.pptx");
try {
pres.save("pres.md", aspose.slides.SaveFormat.Md);
} finally {
if (pres != null) {
pres.dispose();
}
}
Преобразование PowerPoint в варианты Markdown
Aspose.Slides позволяет преобразовать PowerPoint в markdown (с базовым синтаксисом), CommonMark, markdown в стиле GitHub, Trello, XWiki, GitLab и ещё 17 вариантов markdown.
Этот код JavaScript показывает, как преобразовать PowerPoint в CommonMark:
var pres = new aspose.slides.Presentation("pres.pptx");
try {
var markdownSaveOptions = new aspose.slides.MarkdownSaveOptions();
markdownSaveOptions.setFlavor(aspose.slides.Flavor.CommonMark);
pres.save("pres.md", aspose.slides.SaveFormat.Md, markdownSaveOptions);
} finally {
if (pres != null) {
pres.dispose();
}
}
23 поддерживаемых варианта markdown перечислены в перечислении Flavor класса MarkdownSaveOptions.
Преобразование презентации с изображениями в Markdown
Класс MarkdownSaveOptions предоставляет свойства и перечисления, позволяющие задавать различные параметры для результирующего markdown‑файла. Перечисление MarkdownExportType может быть установлено в значения, определяющие, как изображения отображаются или обрабатываются: Sequential, TextOnly, Visual.
Последовательное преобразование изображений
Если вы хотите, чтобы изображения появлялись одно за другим в результирующем markdown, выберите последовательный вариант. Этот код JavaScript показывает, как преобразовать презентацию с изображениями в markdown:
var pres = new aspose.slides.Presentation("pres.pptx");
try {
var markdownSaveOptions = new aspose.slides.MarkdownSaveOptions();
markdownSaveOptions.setShowHiddenSlides(true);
markdownSaveOptions.setShowSlideNumber(true);
markdownSaveOptions.setFlavor(aspose.slides.Flavor.Github);
markdownSaveOptions.setExportType(aspose.slides.MarkdownExportType.Sequential);
markdownSaveOptions.setNewLineType(aspose.slides.NewLineType.Windows);
pres.save("doc.md", java.newArray("int", [1, 2, 3, 4, 5, 6, 7, 8, 9]), aspose.slides.SaveFormat.Md, markdownSaveOptions);
} finally {
if (pres != null) {
pres.dispose();
}
}
Визуальное преобразование изображений
Если вы хотите, чтобы изображения отображались вместе в результирующем markdown, выберите визуальный вариант. В этом случае изображения будут сохранены в текущий каталог приложения (и в markdown‑документе будет построен относительный путь к ним), либо вы можете указать предпочтительный путь и имя папки.
Этот код JavaScript демонстрирует операцию:
var pres = new aspose.slides.Presentation("pres.pptx");
try {
final var outPath = "c:/documents";
var markdownSaveOptions = new aspose.slides.MarkdownSaveOptions();
markdownSaveOptions.setExportType(aspose.slides.MarkdownExportType.Visual);
markdownSaveOptions.setImagesSaveFolderName("md-images");
markdownSaveOptions.setBasePath(outPath);
pres.save("pres.md", aspose.slides.SaveFormat.Md, markdownSaveOptions);
} finally {
if (pres != null) {
pres.dispose();
}
}
FAQ
Сохраняются ли гиперссылки при экспорте в Markdown?
Да. Текстовые гиперссылки сохраняются как стандартные ссылки Markdown. Переходы и анимации слайдов не преобразуются.
Могу ли я ускорить конвертацию, запустив её в нескольких потоках?
Можно выполнять конвертацию параллельно для разных файлов, но не делитесь одним и тем же объектом Presentation между потоками. Используйте отдельные экземпляры/процессы для каждого файла, чтобы избежать конфликтов.
Что происходит с изображениями — где они сохраняются и являются ли пути относительными?
Изображения экспортируются в отдельную папку, а Markdown‑файл по умолчанию ссылается на них относительными путями. Вы можете настроить базовый путь вывода и имя папки ресурсов, чтобы поддерживать предсказуемую структуру репозитория.