Διαχείριση Κεφαλίδων και Υποσέλιδων Παρουσίασης σε Java
Επισκόπηση
Το PowerPoint χρησιμοποιεί διαφορετικά σύμβολα κράτησης θέσης κεφαλίδας και υποσέλιδου ανάλογα με τον τύπο σελίδας. Το Aspose.Slides for Java σάς επιτρέπει να ελέγχετε το κείμενο και την ορατότητα αυτών των θέσεων κράτησης μέσω διεπαφών διαχειριστή κεφαλίδας/υποσέλιδου.
Οι διαθέσιμες θέσεις κράτησης εξαρτώνται από το πεδίο:
| Εύρος | Κεφαλίδα | Υποσέλιδο | Ημερομηνία/ώρα | Αριθμός διαφάνειας/σελίδας |
|---|---|---|---|---|
| Κανονική διαφάνεια | Όχι | Ναι | Ναι | Ναι |
| Κύριος σημειώσεων | Ναι | Ναι | Ναι | Ναι |
| Διαφάνεια σημειώσεων | Ναι | Ναι | Ναι | Ναι |
| Κύριος φυλλάδίου | Ναι | Ναι | Ναι | Ναι |
Μία κανονική διαφάνεια παρουσίασης δεν διαθέτει θέση κράτησης κεφαλίδας. Οι κεφαλίδες είναι διαθέσιμες σε σελίδες σημειώσεων και φυλλάδια. Για κανονικές διαφάνειες, χρησιμοποιήστε τις θέσεις κράτησης υποσέλιδου, ημερομηνίας/ώρας και αριθμού διαφάνειας αντί αυτού.
Η απήχηση μιας αλλαγής εξαρτάται από το διαχειριστή που χρησιμοποιείτε. Η διεπαφή ISlideHeaderFooterManager ελέγχει μία κανονική διαφάνεια. Η διεπαφή INotesSlideHeaderFooterManager ελέγχει μία διαφάνεια σημειώσεων. Οι διαχειριστές κύριου και διάταξης μπορούν επίσης να διαδώσουν τις ρυθμίσεις σε εξαρτημένες διαφάνειες, ενώ η διεπαφή IMasterHandoutSlideHeaderFooterManager ελέγχει τον κύριο φυλλάδιο.
Ορισμός υποσέλιδου, ημερομηνίας/ώρας και αριθμών διαφάνειας σε κανονικές διαφάνειες
Για κανονικές διαφάνειες, η βασική ροή εργασίας είναι να προσπελάσετε τον διαχειριστή κεφαλίδας/υποσέλιδου κάθε διαφάνειας, να ορίσετε το κείμενο υποσέλιδου και ημερομηνίας/ώρας, να ενεργοποιήσετε τις απαιτούμενες θέσεις κράτησης και να αποθηκεύσετε την παρουσίαση. Οι αριθμοί διαφανειών δημιουργούνται από την παρουσίαση, επομένως χρειάζεται μόνο να ελέγξετε την ορατότητά τους.
Χρησιμοποιήστε setFooterText και setDateTimeText για να ορίσετε το κείμενο, και χρησιμοποιήστε setFooterVisibility, setDateTimeVisibility, και setSlideNumberVisibility για να εμφανίσετε τις αντίστοιχες θέσεις κράτησης.
Το παρακάτω παράδειγμα end‑to‑end εφαρμόζει το ίδιο υποσέλιδο, κείμενο ημερομηνίας/ώρας και ορατότητα αριθμού διαφάνειας σε όλες τις κανονικές διαφάνειες:
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();
}
Αν χρειάζεται να ενημερώσετε μόνο μία διαφάνεια, προσπελάστε την απευθείας μέσω της μεθόδου getSlides αντί να επαναλαμβάνετε όλη τη συλλογή.
Ορισμός κεφαλίδων και υποσέλιδων στον Κύριο Σημειώσεων
Ο κύριος σημειώσεων ορίζει κοινή μορφοποίηση και συμπεριφορά θέσεων κράτησης για σελίδες σημειώσεων. Χρησιμοποιήστε τη διεπαφή IMasterNotesSlideHeaderFooterManager όταν θέλετε να αλλάξετε μόνο τον ίδιο τον κύριο σημειώσεων.
Το παρακάτω παράδειγμα ορίζει κεφαλίδα, υποσέλιδο και κείμενο ημερομηνίας/ώρας στον κύριο σημειώσεων και κάνει όλες τις υποστηριζόμενες θέσεις κράτησης ορατές σε αυτόν τον κύριο:
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();
}
Η μέθοδος getMasterNotesSlide επιστρέφει null όταν η παρουσίαση δεν περιέχει κύριο σημειώσεων.
Εφαρμογή Ρυθμίσεων Κύριου Σημειώσεων σε Παιδικές Διαφάνειες Σημειώσεων
Ένας κύριος σημειώσεων μπορεί να εφαρμόσει ρυθμίσεις κεφαλίδας και υποσέλιδου στον εαυτό του και σε όλες τις εξαρτημένες διαφάνειες σημειώσεων. Χρησιμοποιήστε τις αφιερωμένες μεθόδους διάδοσης στη διεπαφή IMasterNotesSlideHeaderFooterManager όταν οι ίδιες ρυθμίσεις πρέπει να εφαρμοστούν σε όλη την ιεραρχία σημειώσεων.
Για παράδειγμα, οι μέθοδοι setHeaderAndChildHeadersText και setHeaderAndChildHeadersVisibility ενημερώνουν την κεφαλίδα του κύριου σημειώσεων και όλες τις παιδικές κεφαλίδες. Παρόμοιες μέθοδοι υπάρχουν για υποσέλιδα, ημερομηνία/ώρα και αριθμούς διαφάνειας.
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();
}
Οι μέθοδοι διάδοσης που χρησιμοποιήθηκαν παραπάνω είναι setFooterAndChildFootersText, setFooterAndChildFootersVisibility, setDateTimeAndChildDateTimesText, setDateTimeAndChildDateTimesVisibility, και setSlideNumberAndChildSlideNumbersVisibility.
Ορισμός κεφαλίδων και υποσέλιδων σε Ατομική Διαφάνεια Σημειώσεων
Μια διαφάνεια σημειώσεων ανήκει σε συγκεκριμένη κανονική διαφάνεια. Χρησιμοποιήστε τη διεπαφή INotesSlideHeaderFooterManager όταν θέλετε να προσαρμόσετε μόνο αυτή τη σελίδα σημειώσεων.
Η μέθοδος addNotesSlide επιστρέφει τη διαφάνεια σημειώσεων για την τρέχουσα διαφάνεια και τη δημιουργεί εάν δεν υπάρχει ήδη. Το παρακάτω παράδειγμα διαμορφώνει τη σελίδα σημειώσεων που συνδέεται με την πρώτη διαφάνεια παρουσίασης:
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();
}
Αν πρώτα διαδώσετε τις ρυθμίσεις από τον κύριο σημειώσεων και μετά αλλάξετε μια ατομική διαφάνεια σημειώσεων, οι μετέπειτα ρυθμίσεις ανά διαφάνεια σας επιτρέπουν να προσαρμόσετε αυτή τη σελίδα σημειώσεων ανεξάρτητα.
Ορισμός κεφαλίδων και υποσέλιδων στον Κύριο Φυλλάδιου
Οι σελίδες φυλλαδίου χρησιμοποιούν τον κύριο φυλλάδιο για τις θέσεις κράτησης κεφαλίδας, υποσέλιδου, ημερομηνίας/ώρας και αριθμού σελίδας. Σε αντίθεση με τις σελίδες σημειώσεων, οι ρυθμίσεις φυλλαδίου διαχειρίζονται μέσω του κύριου φυλλάδιου και όχι μέσω ατομικών διαφανειών φυλλαδίου.
Χρησιμοποιήστε τη μέθοδο getMasterHandoutSlide για να προσπελάσετε τον κύριο φυλλάδιο. Εάν δεν υπάρχει, καλέστε τη μέθοδο setDefaultMasterHandoutSlide για να δημιουργήσετε τον προεπιλεγμένο κύριο φυλλάδιο.
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();
}
Κατανόηση Πεδίου και Κληρονομικότητας
Επιλέξτε τον διαχειριστή κεφαλίδας/υποσέλιδου που ταιριάζει στο πεδίο που θέλετε να αλλάξετε:
ISlideHeaderFooterManagerαλλάζει τις ρυθμίσεις υποσέλιδου, ημερομηνίας/ώρας και αριθμού διαφάνειας για μία κανονική διαφάνεια.ILayoutSlideHeaderFooterManagerελέγχει μια διαφάνεια διάταξης και μπορεί να διαδώσει τις υποστηριζόμενες ρυθμίσεις σε εξαρτημένες διαφάνειες.IMasterSlideHeaderFooterManagerελέγχει έναν κύριο διαφάνειας και μπορεί να διαδώσει τις υποστηριζόμενες ρυθμίσεις σε εξαρτημένες διαφάνειες.IMasterNotesSlideHeaderFooterManagerελέγχει τον κύριο σημειώσεων και μπορεί να διαδώσει τις ρυθμίσεις σε όλες τις εξαρτημένες διαφάνειες σημειώσεων.INotesSlideHeaderFooterManagerαλλάζει μία διαφάνεια σημειώσεων και υποστηρίζει θέση κράτησης κεφαλίδας εκτός από υποσέλιδο, ημερομηνία/ώρα και αριθμό διαφάνειας.IMasterHandoutSlideHeaderFooterManagerαλλάζει τον κύριο φυλλάδιο και υποστηρίζει όλους τους τέσσερις τύπους θέσεων κράτησης.
Χρησιμοποιήστε διάδοση από κύριο ή διάταξη όταν η ίδια ρύθμιση πρέπει να ισχύει σε ολόκληρη την ιεραρχία του. Χρησιμοποιήστε διαχειριστή ατομικής διαφάνειας ή διαφάνειας σημειώσεων όταν χρειάζεστε τοπική ρύθμιση για μία σελίδα.
Συχνές Ερωτήσεις
Μπορώ να προσθέσω κεφαλίδα σε κανονική διαφάνεια;
Όχι. Το PowerPoint δεν ορίζει θέση κράτησης κεφαλίδας για κανονικές διαφάνειες. Σε κανονικές διαφάνειες, χρησιμοποιήστε τις θέσεις κράτησης υποσέλιδου, ημερομηνίας/ώρας και αριθμού διαφάνειας. Οι θέσεις κράτησης κεφαλίδας είναι διαθέσιμες σε σελίδες σημειώσεων και φυλλάδια.
Τι γίνεται αν μια θέση κράτησης υποσέλιδου, ημερομηνίας/ώρας ή αριθμού διαφάνειας δεν είναι ορατή;
Χρησιμοποιήστε τον αντίστοιχο διαχειριστή κεφαλίδας/υποσέλιδου για να ελέγξετε την ορατότητά του και ενεργοποιήστε το όταν χρειάζεται. Για παράδειγμα, η μέθοδος isFooterVisible αναφέρει εάν υπάρχει θέση κράτησης υποσέλιδου, και η μέθοδος setFooterVisibility αλλάζει την ορατότητά του.
Πώς μπορώ να ξεκινήσω την αρίθμηση διαφανειών από τιμή διαφορετική από το 1;
Κληθείτε τη μέθοδο setFirstSlideNumber της παρουσίασης. Οι θέσεις κράτησης αριθμού διαφάνειας θα χρησιμοποιήσουν την ενημερωμένη ακολουθία αρίθμησης.
Τι συμβαίνει με τις κεφαλίδες και τα υποσέλιδα κατά την εξαγωγή σε PDF, εικόνες ή HTML;
Τα ορατά στοιχεία κεφαλίδας και υποσέλιδου αποδίδονται μαζί με το υπόλοιπο περιεχόμενο της παρουσίασης στην έξοδο. Η εμφάνισή τους εξαρτάται από τον τύπο σελίδας που εξάγεται και τις αντίστοιχες ρυθμίσεις ορατότητας των θέσεων κράτησης.