跳到主要内容

Content alignment tool

Consistently aligns text boxes and images throughout the entire presentation.

(function () {
let presentation = Api.GetPresentation();

// Configuration (values in EMU)
let leftMargin = 10 * 36000;
let topMargin = 15 * 36000;
let verticalSpacing = 5 * 36000;

for (let i = 0; i < presentation.GetSlidesCount(); i++) {
let slide = presentation.GetSlideByIndex(i);
let slideWidth = slide.GetWidth();
let slideHeight = slide.GetHeight();

let elements = slide.GetAllDrawings();
if (!elements || !elements.length) {
console.log("No items found on this slide");
continue;
}

console.log("Number of items:", elements.length);

let currentY = topMargin;

elements.forEach(function (element, index) {
let elementWidth = element.GetWidth();
let elementHeight = element.GetHeight();

element.SetPosition(leftMargin, currentY);
console.log("Item " + (index + 1) + " placed: X=" + leftMargin + ", Y=" + currentY);

currentY += elementHeight + verticalSpacing;
});
}

console.log("Placement is complete!");
})();

Methods used: GetPresentation, GetSlidesCount, GetSlideByIndex, GetWidth, GetHeight, GetAllDrawings, GetWidth, GetHeight, SetPosition

Result

ContentAlignmentToolContentAlignmentTool