Gestisci intestazioni e piè di pagina della presentazione su Android

Panoramica

PowerPoint utilizza diversi segnaposti di intestazione e piè di pagina a seconda del tipo di pagina. Aspose.Slides for Android via Java consente di controllare il testo e la visibilità di questi segnaposti tramite le interfacce del gestore intestazione/piè di pagina.

I segnaposti disponibili dipendono dall’ambito:

Ambito Intestazione Piè di pagina Data/ora Numero di diapositiva/pagina
Diapositiva regolare No Sì Sì Sì
Master note Sì Sì Sì Sì
Diapositiva note Sì Sì Sì Sì
Master handout Sì Sì Sì Sì

Una diapositiva di presentazione normale non ha un segnaposto di intestazione. Le intestazioni sono disponibili nelle pagine note e nei fogli illustrativi. Per le diapositive regolari, utilizzare i segnaposti piè di pagina, data/ora e numero di diapositiva.

L’ambito di una modifica dipende dal gestore che si utilizza. L’interfaccia ISlideHeaderFooterManager controlla una singola diapositiva regolare. L’interfaccia INotesSlideHeaderFooterManager controlla una singola diapositiva note. I gestori master e layout possono anche propagare le impostazioni alle diapositive dipendenti, mentre l’interfaccia IMasterHandoutSlideHeaderFooterManager controlla il master del foglio illustrativo.

Imposta Piè di pagina, Data/Ora e Numeri di diapositiva su diapositive regolari

Per le diapositive regolari, il flusso di lavoro di base consiste nell’accedere al gestore intestazione/piè di pagina di ciascuna diapositiva, impostare il testo del piè di pagina e della data/ora, abilitare i segnaposti richiesti e salvare la presentazione. I numeri di diapositiva sono generati dalla presentazione, quindi è necessario controllarne solo la visibilità.

Usa setFooterText e setDateTimeText per impostare il testo, e usa setFooterVisibility, setDateTimeVisibility, e setSlideNumberVisibility per mostrare i corrispondenti segnaposti.

L’esempio end‑to‑end seguente applica lo stesso piè di pagina, testo data/ora e visibilità del numero di diapositiva a tutte le diapositive regolari:

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();
}

Se è necessario aggiornare una sola diapositiva, accedi direttamente a quella diapositiva tramite il metodo getSlides invece di iterare sull’intera collezione.

Imposta intestazioni e piè di pagina sul master note

Il master note definisce la formattazione comune e il comportamento dei segnaposti per le pagine note. Usa l’interfaccia IMasterNotesSlideHeaderFooterManager quando desideri modificare solo il master note stesso.

L’esempio seguente imposta intestazione, piè di pagina e testo data/ora sul master note e rende tutti i segnaposti supportati visibili su quel master:

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();
}

Il metodo getMasterNotesSlide restituisce null quando la presentazione non contiene un master note.

Applica impostazioni del master note alle diapositive note figlie

Un master note può applicare le impostazioni di intestazione e piè di pagina a sé stesso e a tutte le diapositive note dipendenti. Usa i metodi di propagazione dedicati su IMasterNotesSlideHeaderFooterManager quando le stesse impostazioni devono essere applicate all’intera gerarchia note.

Ad esempio, setHeaderAndChildHeadersText e setHeaderAndChildHeadersVisibility aggiornano l’intestazione del master note e tutte le intestazioni figlie. Metodi equivalenti sono disponibili per i piè di pagina, data/ora e numeri di diapositiva.

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();
}

I metodi di propagazione usati sopra sono setFooterAndChildFootersText, setFooterAndChildFootersVisibility, setDateTimeAndChildDateTimesText, setDateTimeAndChildDateTimesVisibility, e setSlideNumberAndChildSlideNumbersVisibility.

Imposta intestazioni e piè di pagina su una diapositiva note individuale

Una diapositiva note appartiene a una specifica diapositiva regolare. Usa la sua interfaccia INotesSlideHeaderFooterManager quando desideri personalizzare solo quella pagina note.

Il metodo addNotesSlide restituisce la diapositiva note per la diapositiva corrente e ne crea una se non esiste già. L’esempio seguente configura la pagina note associata alla prima diapositiva della presentazione:

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();
}

Se prima propaghi le impostazioni dal master note e poi modifichi una diapositiva note singola, le impostazioni successive per diapositiva consentono di personalizzare quella pagina note in modo indipendente.

Imposta intestazioni e piè di pagina sul master handout

Le pagine handout utilizzano il master handout per i loro segnaposti di intestazione, piè di pagina, data/ora e numero di pagina. A differenza delle pagine note, le impostazioni handout sono gestite tramite il master handout anziché tramite singole diapositive handout.

Usa il metodo getMasterHandoutSlide per accedere al master handout. Se non è presente, chiama setDefaultMasterHandoutSlide per creare il master handout predefinito.

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();
}

Comprendere ambito ed eredità

Scegli il gestore intestazione/piè di pagina che corrisponde all’ambito che desideri modificare:

Usa la propagazione da un master o layout quando la stessa impostazione deve applicarsi a tutta la sua gerarchia. Usa un gestore di diapositiva individuale o di diapositiva note quando è necessaria un’impostazione locale per una sola pagina.

FAQ

Posso aggiungere un’intestazione a una diapositiva regolare?

No. PowerPoint non definisce un segnaposto di intestazione per le diapositive regolari. Su diapositive regolari, utilizza i segnaposti di piè di pagina, data/ora e numero di diapositiva. I segnaposti di intestazione sono disponibili su pagine note e handout.

Cosa succede se un segnaposto di piè di pagina, data/ora o numero di diapositiva non è visibile?

Usa il gestore intestazione/piè di pagina corrispondente per verificare la sua visibilità e abilitarlo quando necessario. Ad esempio, isFooterVisible segnala se un segnaposto di piè di pagina è presente, e setFooterVisibility ne cambia la visibilità.

Come faccio a far partire la numerazione delle diapositive da un valore diverso da 1?

Chiama il metodo setFirstSlideNumber della presentazione. I segnaposti di numero di diapositiva utilizzeranno la sequenza di numerazione aggiornata.

Cosa accade alle intestazioni e ai piè di pagina durante l’esportazione in PDF, immagini o HTML?

Gli elementi di intestazione e piè di pagina visibili vengono renderizzati insieme al resto del contenuto della presentazione nel formato di output. Il loro aspetto dipende dal tipo di pagina esportata e dalle impostazioni di visibilità dei segnaposti corrispondenti.