将 PowerPoint 转换为 Markdown 在 C++

将 PowerPoint 转换为 Markdown

  1. 创建一个 Presentation 类的实例,以表示演示文稿对象。
  2. 使用 Save 方法将对象保存为 Markdown 文件。

以下 C++ 代码演示了如何将 PowerPoint 转换为 Markdown:

System::SharedPtr<Presentation> pres = System::MakeObject<Presentation>(u"pres.pptx");
pres->Save(u"pres.md", SaveFormat::Md);

将 PowerPoint 转换为 Markdown 风格

Aspose.Slides 允许您将 PowerPoint 转换为包含基本语法的 Markdown、CommonMark、GitHub 风格的 Markdown、Trello、XWiki、GitLab 和其他 17 种 Markdown 风格。

以下 C++ 代码演示了如何将 PowerPoint 转换为 CommonMark:

auto pres = System::MakeObject<Presentation>(u"pres.pptx");
auto opt = System::MakeObject<MarkdownSaveOptions>();
opt->set_Flavor(Aspose::Slides::DOM::Export::Markdown::SaveOptions::Flavor::CommonMark);
pres->Save(u"pres.md", Aspose::Slides::Export::SaveFormat::Md, opt);

支持的 23 种 Markdown 风格 在 Flavor 枚举下列出 来自 MarkdownSaveOptions 类。

将包含图像的演示文稿转换为 Markdown

MarkdownSaveOptions 类提供了允许您为生成的 Markdown 文件使用某些选项或设置的属性和枚举。例如,MarkdownExportType 枚举可以设置为决定图像如何呈现或处理的值:SequentialTextOnlyVisual

顺序转换图像

如果您希望图像在生成的 Markdown 中一个接一个地单独出现,则必须选择顺序选项。以下 C++ 代码演示了如何将包含图像的演示文稿转换为 Markdown:

System::SharedPtr<Presentation> pres = System::MakeObject<Presentation>(u"pres.pptx");

System::SharedPtr<MarkdownSaveOptions> markdownSaveOptions = System::MakeObject<MarkdownSaveOptions>();

markdownSaveOptions->set_ShowHiddenSlides(true);
markdownSaveOptions->set_ShowSlideNumber(true);
markdownSaveOptions->set_Flavor(Flavor::Github);
markdownSaveOptions->set_ExportType(MarkdownExportType::Sequential);
markdownSaveOptions->set_NewLineType(NewLineType::Windows);

pres->Save(u"doc.md", System::MakeArray<int32_t>({1, 2, 3, 4, 5, 6, 7, 8, 9}), SaveFormat::Md, markdownSaveOptions);

视觉转换图像

如果您希望图像在生成的 Markdown 中一起出现,则必须选择视觉选项。在这种情况下,图像将保存到应用程序的当前目录(并将在 Markdown 文档中为它们构建相对路径),或者您可以指定首选路径和文件夹名称。

以下 C++ 代码演示了该操作:

auto pres = System::MakeObject<Presentation>(u"pres.pptx");
const System::String outPath = u"x:\\documents";
auto opt = System::MakeObject<MarkdownSaveOptions>();
opt->set_ExportType(Aspose::Slides::DOM::Export::Markdown::SaveOptions::MarkdownExportType::Visual);
opt->set_ImagesSaveFolderName(u"md-images");
opt->set_BasePath(outPath);
pres->Save(System::IO::Path::Combine(outPath, u"pres.md"), Aspose::Slides::Export::SaveFormat::Md, opt);