Presentáció fejlécének és láblécének kezelése PHP-ben

Áttekintés

A PowerPoint különböző fejléc- és lábléchelyfoglalókat használ az oldaltípus függvényében. Az Aspose.Slides for PHP via Java lehetővé teszi ezen helyfoglalók szövegének és láthatóságának kezelését fejléc/lábléckezelő osztályok segítségével.

A rendelkezésre álló helyfoglalók a hatókörtől függenek:

Hatókör Fejléc Lábléc Dátum/idő Dia/oldalszám
Általános dia Nem Igen Igen Igen
Jegyzetmester Igen Igen Igen Igen
Jegyzetdia Igen Igen Igen Igen
Elosztó mester Igen Igen Igen Igen

Az általános prezentációs diának nincs fejléchelyfoglalója. A fejléc a jegyzetoldalakon és az elosztókon érhető el. Általános diák esetén a lábléc, a dátum/idő és a dia-szám helyfoglalókat kell használni.

A változtatás hatóköre attól a menedzsertől függ, amelyet használ. A SlideHeaderFooterManager osztály egy általános diát kezel. A NotesSlideHeaderFooterManager osztály egy jegyzetdiát kezel. A mester- és elrendezésmenedzserek szintén képesek a beállításokat a függő diákra továbbadni, míg a MasterHandoutSlideHeaderFooterManager osztály az elosztó mestert kezeli.

Lábléc, Dátum/Idő és Diákszámok beállítása általános diákon

Általános diák esetén az alapmunkafolyamat a következő: minden dia fejléc/lábléckezelőjének elérése, a lábléc és a dátum/idő szövegének beállítása, a szükséges helyfoglalók engedélyezése, majd a prezentáció mentése. A diákszámokat a prezentáció generálja, ezért csak a láthatóságukat kell szabályozni.

Használja a setFooterText és a setDateTimeText metódusokat a szöveg beállításához, illetve a setFooterVisibility, setDateTimeVisibility és setSlideNumberVisibility metódusokat a megfelelő helyfoglalók megjelenítéséhez.

Az alábbi vég-az-vegén példakód ugyanazt a láblécet, dátum/idő szöveget és dia-szám láthatóságot alkalmazza minden általános diára:

use aspose\slides\Presentation;
use aspose\slides\SaveFormat;

$presentation = new Presentation("presentation.pptx");
try {
    foreach ($presentation->getSlides() as $slide) {
        $headerFooterManager = $slide->getHeaderFooterManager();

        $headerFooterManager->setFooterText("Company Confidential");
        $headerFooterManager->setFooterVisibility(true);

        $headerFooterManager->setDateTimeText("Date and time text");
        $headerFooterManager->setDateTimeVisibility(true);

        $headerFooterManager->setSlideNumberVisibility(true);
    }

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

Ha csak egy diát szeretne frissíteni, a teljes gyűjtemény bejárása helyett a getSlides metódussal közvetlenül érje el azt a diát.

Fejlécek és láblécek beállítása a Jegyzetmesteren

A jegyzetmester határozza meg a jegyzetoldalak közös formázását és helyfoglaló‑viselkedését. Használja a MasterNotesSlideHeaderFooterManager osztályt, ha csak a jegyzetmestert szeretné megváltoztatni.

Az alábbi példa beállítja a fejlécet, láblécet és a dátum/idő szöveget a jegyzetmesteren, és láthatóvá teszi az összes támogatott helyfoglalót azon a mesteren:

use aspose\slides\Presentation;
use aspose\slides\SaveFormat;

$presentation = new Presentation("presentation.pptx");
try {
    $masterNotesSlide = $presentation->getMasterNotesSlideManager()->getMasterNotesSlide();

    if (!java_is_null($masterNotesSlide)) {
        $headerFooterManager = $masterNotesSlide->getHeaderFooterManager();

        $headerFooterManager->setHeaderText("Notes header");
        $headerFooterManager->setHeaderVisibility(true);

        $headerFooterManager->setFooterText("Notes footer");
        $headerFooterManager->setFooterVisibility(true);

        $headerFooterManager->setDateTimeText("Date and time text");
        $headerFooterManager->setDateTimeVisibility(true);

        $headerFooterManager->setSlideNumberVisibility(true);
    }

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

A getMasterNotesSlide metódus null‑t ad vissza, ha a prezentáció nem tartalmaz jegyzetmestert.

Jegyzetmester beállításainak alkalmazása a gyermek jegyzetdiákra

A jegyzetmester képes a fejléc‑ és láblécbeállításokat saját magára és az összes függő jegyzetdiara alkalmazni. Használja a MasterNotesSlideHeaderFooterManager dedikált propagációs metódusait, ha ugyanazokat a beállításokat kell alkalmazni a jegyzet‑hierarchián belül.

Például a setHeaderAndChildHeadersText és a setHeaderAndChildHeadersVisibility frissíti a jegyzetmester fejléceit és az összes gyermekfejlécet. Hasonló metódusok érhetők el a láblécek, a dátum/idő és a dia‑számok esetében is.

use aspose\slides\Presentation;
use aspose\slides\SaveFormat;

$presentation = new Presentation("presentation.pptx");
try {
    $masterNotesSlide = $presentation->getMasterNotesSlideManager()->getMasterNotesSlide();

    if (!java_is_null($masterNotesSlide)) {
        $headerFooterManager = $masterNotesSlide->getHeaderFooterManager();

        $headerFooterManager->setHeaderAndChildHeadersText("Notes header");
        $headerFooterManager->setHeaderAndChildHeadersVisibility(true);

        $headerFooterManager->setFooterAndChildFootersText("Notes footer");
        $headerFooterManager->setFooterAndChildFootersVisibility(true);

        $headerFooterManager->setDateTimeAndChildDateTimesText("Date and time text");
        $headerFooterManager->setDateTimeAndChildDateTimesVisibility(true);

        $headerFooterManager->setSlideNumberAndChildSlideNumbersVisibility(true);
    }

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

A fent használt propagációs metódusok: setFooterAndChildFootersText, setFooterAndChildFootersVisibility, setDateTimeAndChildDateTimesText, setDateTimeAndChildDateTimesVisibility, és a setSlideNumberAndChildSlideNumbersVisibility.

Fejlécek és láblécek beállítása egy egyedi jegyzetdián

Egy jegyzetdia egy adott általános diához tartozik. Használja a NotesSlideHeaderFooterManager osztályt, ha csak azt a jegyzetoldalt szeretné testre szabni.

A addNotesSlide metódus visszaadja az aktuális dia jegyzetdiáját, és létrehozza azt, ha még nem létezik. Az alábbi példa az első prezentációs diahoz tartozó jegyzetoldalt konfigurálja:

use aspose\slides\Presentation;
use aspose\slides\SaveFormat;

$presentation = new Presentation("presentation.pptx");
try {
    $slide = $presentation->getSlides()->get_Item(0);
    $notesSlide = $slide->getNotesSlideManager()->addNotesSlide();
    $headerFooterManager = $notesSlide->getHeaderFooterManager();

    $headerFooterManager->setHeaderText("Header for the first notes page");
    $headerFooterManager->setHeaderVisibility(true);

    $headerFooterManager->setFooterText("Footer for the first notes page");
    $headerFooterManager->setFooterVisibility(true);

    $headerFooterManager->setDateTimeText("Date and time text");
    $headerFooterManager->setDateTimeVisibility(true);

    $headerFooterManager->setSlideNumberVisibility(true);

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

Ha először a jegyzetmestertől propagálja a beállításokat, majd egyedi jegyzetdiát módosít, a későbbi diánkénti beállítások lehetővé teszik az adott jegyzetoldal önálló testreszabását.

Fejlécek és láblécek beállítása az Elosztó Mesteren

Az elosztóoldalak a elosztó mestert használják fejlécek, láblécek, dátum/idő és oldalszám helyfoglalóikhoz. A jegyzetoldalakkal ellentétben az elosztó beállításait az elosztó mester kezeli, nem pedig az egyedi elosztó diák.

Használja a getMasterHandoutSlide metódust az elosztó mester eléréséhez. Ha nincs jelen, hívja a setDefaultMasterHandoutSlide metódust a alapértelmezett elosztó mester létrehozásához.

use aspose\slides\Presentation;
use aspose\slides\SaveFormat;

$presentation = new Presentation("presentation.pptx");
try {
    $masterHandoutSlide = $presentation->getMasterHandoutSlideManager()->getMasterHandoutSlide();

    if (java_is_null($masterHandoutSlide)) {
        $masterHandoutSlide = $presentation->getMasterHandoutSlideManager()->setDefaultMasterHandoutSlide();
    }

    if (!java_is_null($masterHandoutSlide)) {
        $headerFooterManager = $masterHandoutSlide->getHeaderFooterManager();

        $headerFooterManager->setHeaderText("Handout header");
        $headerFooterManager->setHeaderVisibility(true);

        $headerFooterManager->setFooterText("Handout footer");
        $headerFooterManager->setFooterVisibility(true);

        $headerFooterManager->setDateTimeText("Date and time text");
        $headerFooterManager->setDateTimeVisibility(true);

        $headerFooterManager->setSlideNumberVisibility(true);
    }

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

Hatókör és öröklődés megértése

Válassza ki azt a fejléc/lábléc menedzsert, amely a kívánt hatókörnek megfelel:

Használjon propagációt egy mester‑ vagy elrendezésmenedzserből, ha ugyanazt a beállítást kell alkalmazni a teljes hierarchiára. Használjon egyedi diamenedzsert vagy jegyzet‑diamenedzsert, ha helyi beállításra van szükség egy adott oldalon.

GYIK

Hozzáadhatok fejlécet egy általános diához?

Nem. A PowerPoint nem határoz meg fejléchelyfoglalót az általános diákhoz. Általános diákon használja a lábléc, a dátum/idő és a dia‑szám helyfoglalókat. Fejléchelyfoglalók csak a jegyzetoldalakon és az elosztókon érhetők el.

Mi a helyzet, ha egy lábléc, dátum/idő vagy dia‑szám helyfoglaló nem látszik?

Használja a megfelelő fejléc/lábléc menedzsert a láthatóság ellenőrzéséhez, és engedélyezze szükség szerint. Például a isFooterVisible azt jelzi, hogy a lábléc helyfoglaló jelen van-e, a setFooterVisibility pedig megváltoztatja a láthatóságát.

Hogyan indíthatom a diákszámozást 1‑nél eltérő értékkel?

Hívja meg a prezentáció setFirstSlideNumber metódusát. Ezután a dia‑szám helyfoglalók az új számozási sorozatot használják.

Mi történik a fejlécekkel és láblécekkel PDF‑re, képekre vagy HTML‑re exportáláskor?

A látható fejléc‑ és lábléc elemek a prezentáció tartalmával együtt kerülnek renderelésre a kimeneti formátumban. Megjelenésük az exportált oldaltípustól és a megfelelő helyfoglaló láthatósági beállításoktól függ.