Skip to main content

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

GenerateOutline GenerateOutline