Kelola Header dan Footer Presentasi di Java
Gambaran Umum
PowerPoint menggunakan placeholder header dan footer yang berbeda tergantung pada jenis halaman. Aspose.Slides for Java memungkinkan Anda mengontrol teks dan visibilitas placeholder ini melalui antarmuka manajer header/footer.
Placeholder yang tersedia tergantung pada lingkup:
| Lingkup | Header | Footer | Tanggal/waktu | Nomor slide/halaman |
|---|---|---|---|---|
| Slide reguler | Tidak | Ya | Ya | Ya |
| Notes master | Ya | Ya | Ya | Ya |
| Notes slide | Ya | Ya | Ya | Ya |
| Handout master | Ya | Ya | Ya | Ya |
Slide presentasi reguler tidak memiliki placeholder header. Header tersedia pada halaman catatan dan handout. Untuk slide reguler, gunakan placeholder footer, tanggal/waktu, dan nomor slide sebagai gantinya.
Lingkup perubahan tergantung pada manajer yang Anda gunakan. Antarmuka ISlideHeaderFooterManager mengontrol satu slide reguler. Antarmuka INotesSlideHeaderFooterManager mengontrol satu slide catatan. Manajer master dan layout juga dapat menyebarkan pengaturan ke slide yang bergantung, sedangkan antarmuka IMasterHandoutSlideHeaderFooterManager mengontrol handout master.
Atur Footer, Tanggal/Waktu, dan Nomor Slide pada Slide Reguler
Untuk slide reguler, alur kerja dasar adalah mengakses manajer header/footer tiap slide, mengatur teks footer dan tanggal/waktu, mengaktifkan placeholder yang diperlukan, dan menyimpan presentasi. Nomor slide dihasilkan oleh presentasi, jadi Anda hanya perlu mengontrol visibilitasnya.
Gunakan setFooterText dan setDateTimeText untuk mengatur teks, dan gunakan setFooterVisibility, setDateTimeVisibility, dan setSlideNumberVisibility untuk menampilkan placeholder yang bersangkutan.
Contoh end-to-end berikut menerapkan footer, teks tanggal/waktu, dan visibilitas nomor slide yang sama pada semua slide reguler:
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();
}
Jika Anda perlu memperbarui hanya satu slide, akses slide tersebut langsung melalui metode getSlides alih-alih mengulangi seluruh koleksi.
Atur Header dan Footer pada Notes Master
Notes master mendefinisikan pemformatan umum dan perilaku placeholder untuk halaman catatan. Gunakan antarmuka IMasterNotesSlideHeaderFooterManager ketika Anda ingin mengubah hanya notes master itu sendiri.
Contoh berikut mengatur teks header, footer, dan tanggal/waktu pada notes master serta membuat semua placeholder yang didukung terlihat pada master tersebut:
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();
}
Metode getMasterNotesSlide mengembalikan null ketika presentasi tidak berisi notes master.
Terapkan Pengaturan Notes Master ke Slide Catatan Anak
Notes master dapat menerapkan pengaturan header dan footer ke dirinya sendiri dan ke semua slide catatan yang tergantung. Gunakan metode propagasi khusus pada IMasterNotesSlideHeaderFooterManager ketika pengaturan yang sama harus diterapkan di seluruh hierarki catatan.
Sebagai contoh, setHeaderAndChildHeadersText dan setHeaderAndChildHeadersVisibility memperbarui header notes master dan semua header anak. Metode setara tersedia untuk footer, tanggal/waktu, dan nomor slide.
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();
}
Metode propagasi yang digunakan di atas adalah setFooterAndChildFootersText, setFooterAndChildFootersVisibility, setDateTimeAndChildDateTimesText, setDateTimeAndChildDateTimesVisibility, dan setSlideNumberAndChildSlideNumbersVisibility.
Atur Header dan Footer pada Slide Catatan Individu
Slide catatan terkait dengan slide reguler tertentu. Gunakan antarmuka INotesSlideHeaderFooterManager ketika Anda ingin menyesuaikan hanya halaman catatan tersebut.
Metode addNotesSlide mengembalikan slide catatan untuk slide saat ini dan membuatnya jika belum ada. Contoh berikut mengkonfigurasi halaman catatan yang terkait dengan slide pertama dalam presentasi:
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();
}
Jika Anda pertama-tama menyebarkan pengaturan dari notes master dan kemudian mengubah slide catatan individu, pengaturan per-slide selanjutnya memungkinkan Anda menyesuaikan halaman catatan tersebut secara independen.
Atur Header dan Footer pada Handout Master
Halaman handout menggunakan handout master untuk placeholder header, footer, tanggal/waktu, dan nomor halaman. Berbeda dengan halaman catatan, pengaturan handout dikelola melalui handout master bukan melalui slide handout individu.
Gunakan metode getMasterHandoutSlide untuk mengakses handout master. Jika tidak ada, panggil setDefaultMasterHandoutSlide untuk membuat handout master default.
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();
}
Memahami Lingkup dan Pewarisan
Pilih manajer header/footer yang cocok dengan lingkup yang ingin Anda ubah:
ISlideHeaderFooterManagermengubah pengaturan footer, tanggal/waktu, dan nomor slide untuk satu slide reguler.ILayoutSlideHeaderFooterManagermengontrol slide tata letak dan dapat menyebarkan pengaturan yang didukung ke slide yang tergantung.IMasterSlideHeaderFooterManagermengontrol master slide reguler dan dapat menyebarkan pengaturan yang didukung ke slide yang tergantung.IMasterNotesSlideHeaderFooterManagermengontrol notes master dan dapat menyebarkan pengaturan ke semua slide catatan yang tergantung.INotesSlideHeaderFooterManagermengubah satu slide catatan dan mendukung placeholder header selain footer, tanggal/waktu, dan nomor slide.IMasterHandoutSlideHeaderFooterManagermengubah handout master dan mendukung keempat jenis placeholder.
Gunakan propagasi dari master atau layout ketika pengaturan yang sama harus berlaku di seluruh hierarki. Gunakan manajer slide individu atau notes-slide ketika Anda membutuhkan pengaturan lokal untuk satu halaman.
FAQ
Apakah saya dapat menambahkan header ke slide reguler?
Tidak. PowerPoint tidak mendefinisikan placeholder header untuk slide reguler. Pada slide reguler, gunakan placeholder footer, tanggal/waktu, dan nomor slide. Placeholder header tersedia pada halaman catatan dan handout.
Bagaimana jika placeholder footer, tanggal/waktu, atau nomor slide tidak terlihat?
Gunakan manajer header/footer yang bersangkutan untuk memeriksa visibilitasnya dan mengaktifkannya bila diperlukan. Misalnya, isFooterVisible melaporkan apakah placeholder footer ada, dan setFooterVisibility mengubah visibilitasnya.
Bagaimana cara memulai penomoran slide dari nilai selain 1?
Panggil metode setFirstSlideNumber pada presentasi. Placeholder nomor slide kemudian menggunakan urutan penomoran yang telah diperbarui.
Apa yang terjadi pada header dan footer saat mengekspor ke PDF, gambar, atau HTML?
Elemen header dan footer yang terlihat dirender bersama dengan konten presentasi lainnya dalam format output. Penampilannya tergantung pada jenis halaman yang diekspor dan pengaturan visibilitas placeholder yang bersangkutan.