Generate outline
Automatically generates a presentation outline based on titles.
(function()
{
let presentation = Api.GetPresentation();
let slides = presentation.GetAllSlides();
let titles = [];
slides.forEach(slide => {
let titleShapes = slide.GetDrawingsByPlaceholderType("title");
titleShapes.forEach(titleShape => {
let docContent = titleShape.GetDocContent();
let paragraphs = docContent.GetAllParagraphs();
for (let paragraph of paragraphs) {
titles.push(paragraph.GetText());
}
});
});
let slide = Api.CreateSlide();
let shape = Api.CreateShape("rect", 100 * 36000, 50 * 36000);
shape.SetPosition(608400, 1267200);
let outlineTitle = Api.CreateParagraph();
let outline = Api.CreateParagraph();
outlineTitle.AddText("Outline");
for (let title of titles) {
outline.AddText(title);
}
outline.SetColor(0, 0, 0);
outlineTitle.SetFontSize(48);
outlineTitle.SetBold(true);
outlineTitle.SetColor(0, 0, 0);
let content = shape.GetDocContent();
content.Push(outlineTitle);
content.Push(outline);
slide.AddObject(shape);
presentation.AddSlide(slide);
})();
Methods used: GetPresentation, GetAllSlides, GetDrawingsByPlaceholderType, GetDocContent, CreateSlide, CreateShape, SetPosition, CreateParagraph, AddText, SetColor, SetFontSize, SetBold, Push, AddObject, AddSlide
Result