Prezentáció fejlécek és láblécek kezelése Java-ban

Áttekintés

A PowerPoint a lap típusától függően különböző fejléc- és lábléchelyőrzőket használ. Az Aspose.Slides for Java lehetővé teszi ezen helyőrzők szövegének és láthatóságának vezérlését a fejléc/lábléc kezelői felületeken keresztül.

A rendelkezésre álló helyőrzők a hatókör (scope) függvényében változnak:

Hatókör Fejléc Lábléc Dátum/idő Dia/oldalszám
Normál dia Nem Igen Igen Igen
Jegyzetminta Igen Igen Igen Igen
Jegyzetdia Igen Igen Igen Igen
Nyomtatványminta Igen Igen Igen Igen

Egy normál prezentációs dia nem rendelkezik fejléchelyőrzővel. A fejlécek a jegyzetoldalakon és a nyomtatványokon érhetők el. Normál diák esetén használja a lábléc, dátum/idő és dia‑szám helyőrzőket.

A módosítás hatóköre attól függ, melyik kezelőt használja. A ISlideHeaderFooterManager felület egyetlen normál diát szabályoz. A INotesSlideHeaderFooterManager felület egyetlen jegyzetdát szabályoz. A minta‑ és elrendezéskezelők is képesek a beállításokat a függő diákra kiterjeszteni, míg a IMasterHandoutSlideHeaderFooterManager felület a nyomtatvány‑mastert kezeli.

Lábléc, dátum/idő és dia‑szám beállítása normál diákon

Normál diák esetén az alaplépések a következők: hozzáférünk az adott dia fejléc/lábléc kezelőjéhez, beállítjuk a lábléc‑ és dátum/idő‑szöveget, engedélyezzük a szükséges helyőrzőket, majd mentjük a prezentációt. A dia‑számokat a prezentáció generálja, ezért csak a láthatóságukat kell vezérelni.

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

Az alábbi end‑to‑end példa ugyanazt a láblécet, dátum/idő‑szöveget és dia‑szám láthatóságot alkalmazza az összes normál diára:

import com.aspose.slides.*;

Presentation presentation = new Presentation("presentation.pptx");
try {
    for (ISlide slide : presentation.getSlides()) {
        ISlideHeaderFooterManager 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 egyetlen diát kell frissíteni, akkor a getSlides metódussal közvetlenül érje el azt, a teljes gyűjtemény bejárása helyett.

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

A jegyzetmester meghatározza a jegyzetoldalak közös formázását és a helyőrzők viselkedését. Használja a IMasterNotesSlideHeaderFooterManager felületet, ha csak a jegyzetmestert szeretné módosítani.

A következő példa beállítja a fejlécet, láblécet és dátum/idő‑szöveget a jegyzetmestre, és az összes támogatott helyőrzőt láthatóvá teszi azon a masteren:

import com.aspose.slides.*;

Presentation presentation = new Presentation("presentation.pptx");
try {
    IMasterNotesSlide masterNotesSlide = presentation.getMasterNotesSlideManager().getMasterNotesSlide();

    if (masterNotesSlide != null) {
        IMasterNotesSlideHeaderFooterManager 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 az alárendelt jegyzetdiákra

A jegyzetmester képes a fejléc‑ és lábléc‑beállításokat saját magára és az összes függő jegyzetdiára alkalmazni. Használja a IMasterNotesSlideHeaderFooterManager dedikált terjesztési metódusait, ha ugyanazokat a beállításokat kell az egész jegyzet‑hierarchiában érvényesíteni.

Például a setHeaderAndChildHeadersText és a setHeaderAndChildHeadersVisibility frissíti a jegyzetmester fejlécét és az összes alárendelt fejlécet. Hasonló metódusok állnak rendelkezésre a láblécek, dátum/idő és dia‑számok kezelésére.

import com.aspose.slides.*;

Presentation presentation = new Presentation("presentation.pptx");
try {
    IMasterNotesSlide masterNotesSlide = presentation.getMasterNotesSlideManager().getMasterNotesSlide();

    if (masterNotesSlide != null) {
        IMasterNotesSlideHeaderFooterManager 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 terjesztési metódusok:

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

Egy jegyzetdia egy adott normál diához tartozik. Használja az INotesSlideHeaderFooterManager felületet, ha csak az adott jegyzetoldalt kívánja testre szabni.

A addNotesSlide metódus visszaadja az aktuális dia jegyzetdáját, és létrehoz egyet, ha még nem létezik. Az alábbi példa az első prezentációs diához társított jegyzetoldalt állítja be:

import com.aspose.slides.*;

Presentation presentation = new Presentation("presentation.pptx");
try {
    ISlide slide = presentation.getSlides().get_Item(0);
    INotesSlide notesSlide = slide.getNotesSlideManager().addNotesSlide();
    INotesSlideHeaderFooterManager 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 jegyzetmester beállításait terjeszti, majd egy egyedi jegyzetdian módosít, az utólagos dia‑szintű beállítások lehetővé teszik a jegyzetoldal önálló testreszabását.

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

A nyomtatványoldalak a nyomtatványmesterben tárolják a fejléc, lábléc, dátum/idő és oldalszám helyőrzőket. A jegyzetoldalakkal ellentétben a nyomtatvány beállításait a nyomtatványmester kezeli, nem pedig az egyes nyomtatványdiák.

A nyomtatványmester eléréséhez használja a getMasterHandoutSlide metódust. Ha nincs jelen, hívja a setDefaultMasterHandoutSlide metódust az alapértelmezett nyomtatványmester létrehozásához.

import com.aspose.slides.*;

Presentation presentation = new Presentation("presentation.pptx");
try {
    IMasterHandoutSlide masterHandoutSlide = presentation.getMasterHandoutSlideManager().getMasterHandoutSlide();

    if (masterHandoutSlide == null) {
        masterHandoutSlide = presentation.getMasterHandoutSlideManager().setDefaultMasterHandoutSlide();
    }

    if (masterHandoutSlide != null) {
        IMasterHandoutSlideHeaderFooterManager 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();
}

A hatókör és az öröklődés megértése

Válassza ki a kívánt hatókörnek megfelelő fejléc/lábléc kezelőt:

Használjon terjesztést egy mesterről vagy elrendezésről, ha ugyanazt a beállítást az egész hierarchiára szeretné alkalmazni. Használjon egyedi dia‑ vagy jegyzetdia‑kezelőt, ha helyi beállításra van szüksége egyetlen oldalra.

GYIK

Hozzáadhatok fejlécet egy normál diához?

Nem. A PowerPoint nem definiál fejléc‑helyőrzőt normál diákon. Normál diákon a lábléc, dátum/idő és dia‑szám helyőrzőket használja. Fejléc‑helyőrzők csak a jegyzetoldalakon és nyomtatványokon érhetők el.

Mi van, ha a lábléc, dátum/idő vagy dia‑szám helyőrző nem látható?

Használja a megfelelő fejléc/lábléc kezelőt a láthatóság ellenőrzéséhez és engedélyezéséhez. Például az isFooterVisible megmondja, hogy a lábléc‑helyőrző jelen van‑e, a setFooterVisibility módosítja annak láthatóságát.

Hogyan indíthatom a dia‑számozást 1‑nél más értékről?

Hívja a prezentáció setFirstSlideNumber metódusát. Ezután a dia‑szám‑helyőrzők a frissített számozási sorozatot használják.

Mi történik a fejléc‑ és lábléc‑elemekkel PDF, képek vagy HTML exportálásakor?

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