Masterfolie

Masterfolien bilden die oberste Ebene der Folienvererbungshierarchie in PowerPoint. Eine Masterfolie definiert gemeinsame Designelemente wie Hintergründe, Logos und Textformatierung. Layoutfolien erben von Masterfolien, und Normale Folien erben von Layoutfolien.

Dieser Artikel zeigt, wie man Masterfolien mit Aspose.Slides für PHP via Java erstellt, ändert und verwaltet.

Masterfolie hinzufügen

Dieses Beispiel zeigt, wie man eine neue Masterfolie erstellt, indem man die Standardfolie klont.

function addMasterSlide() {
    $presentation = new Presentation();
    try {
        // Standard‑Masterfolie klonen.
        $defaultMasterSlide = $presentation->getMasters()->get_Item(0);
        $newMasterSlide = $presentation->getMasters()->addClone($defaultMasterSlide);

        $presentation->save("master_slide.pptx", SaveFormat::Pptx);
    } finally {
        $presentation->dispose();
    }
}

💡 Tipp 1: Masterfolien bieten eine Möglichkeit, ein konsistentes Branding oder gemeinsam genutzte Designelemente über alle Folien hinweg anzuwenden. Alle Änderungen an der Masterfolie werden automatisch auf abhängige Layout‑ und Normale Folien übertragen.

💡 Tipp 2: Alle Formen oder Formatierungen, die einer Masterfolie hinzugefügt werden, werden von Layoutfolien geerbt und wiederum von allen normalen Folien, die diese Layouts verwenden.
Das Bild unten veranschaulicht, wie ein auf einer Masterfolie hinzugefügtes Textfeld automatisch auf der endgültigen Folie dargestellt wird.

Beispiel für Mastervererbung

Zugriff auf eine Masterfolie

Sie können auf Masterfolien über die Methode Presentation::getMasters zugreifen. So rufen Sie sie ab und arbeiten mit ihnen:

function accessMasterSlide() {
    $presentation = new Presentation("master_slide.pptx");
    try {
        // Auf die erste Masterfolie zugreifen.
        $firstMasterSlide = $presentation->getMasters()->get_Item(0);
    } finally {
        $presentation->dispose();
    }
}

Masterfolie entfernen

Masterfolien können entweder nach Index oder per Referenz entfernt werden.

function removeMasterSlide() {
    $presentation = new Presentation("master_slide.pptx");
    try {
        // Nach Index entfernen.
        $presentation->getMasters()->removeAt(0);

        // Oder nach Referenz entfernen.
        $firstMasterSlide = $presentation->getMasters()->get_Item(0);
        $presentation->getMasters()->remove($firstMasterSlide);

        $presentation->save("master_slide_removed.pptx", SaveFormat::Pptx);
    } finally {
        $presentation->dispose();
    }
}

Unbenutzte Masterfolien entfernen

Einige Präsentationen enthalten Masterfolien, die nicht verwendet werden. Das Entfernen dieser Folien kann helfen, die Dateigröße zu reduzieren.

function removeUnusedMasterSlide() {
    $presentation = new Presentation("master_slide.pptx");
    try {
        // Alle nicht verwendeten Masterfolien entfernen (auch solche, die als Beibehalten markiert sind).
        $presentation->getMasters()->removeUnused(true);

        $presentation->save("master_slides_removed.pptx", SaveFormat::Pptx);
    } finally {
        $presentation->dispose();
    }
}

⚙️ Tipp: Verwenden Sie removeUnused(true), um unbenutzte Masterfolien zu bereinigen und die Präsentationsgröße zu minimieren.