Beheer presentatiekoppen en -voetteksten met Python
Overzicht
PowerPoint gebruikt verschillende kop- en voettekst‑plaatsaanduidingen afhankelijk van het type pagina. Aspose.Slides for Python via .NET stelt u in staat de tekst en zichtbaarheid van deze plaatsaanduidingen te beheren via header/footer‑managerklassen.
De beschikbare plaatsaanduidingen hangen af van de scope:
| Scope | Kop | Voettekst | Datum/tijd | Dia-/paginanummer |
|---|---|---|---|---|
| Reguliere dia | Nee | Ja | Ja | Ja |
| Notitie‑master | Ja | Ja | Ja | Ja |
| Notities‑dia | Ja | Ja | Ja | Ja |
| Hand‑out‑master | Ja | Ja | Ja | Ja |
Een reguliere presentatiedia heeft geen kop‑plaatsaanduiding. Koppen zijn beschikbaar op notitiepagina’s en hand‑outs. Voor reguliere dia’s gebruik je in plaats daarvan de voettekst‑, datum/tijd‑ en dia‑nummer‑plaatsaanduidingen.
De scope van een wijziging hangt af van de manager die u gebruikt. De SlideHeaderFooterManager‑klasse beheert één reguliere dia. De NotesSlideHeaderFooterManager‑klasse beheert één notitiedia. Master‑ en layout‑managers kunnen de instellingen ook doorgeven aan afhankelijke dia’s, terwijl de MasterHandoutSlideHeaderFooterManager‑klasse de hand‑out‑master beheert.
Voettekst, datum/tijd en dia‑nummers instellen op reguliere dia’s
Voor reguliere dia’s is de basisworkflow om de header/footer‑manager van elke dia te benaderen, de voettekst‑ en datum/tijd‑tekst in te stellen, de benodigde plaatsaanduidingen in te schakelen en de presentatie op te slaan. Dia‑nummers worden door de presentatie gegenereerd, dus u hoeft alleen hun zichtbaarheid te regelen.
Gebruik set_footer_text en set_date_time_text om tekst in te stellen, en gebruik set_footer_visibility, set_date_time_visibility en set_slide_number_visibility om de overeenkomstige plaatsaanduidingen te tonen.
Het volgende end‑to‑end‑voorbeeld past dezelfde voettekst, datum/tijd‑tekst en dia‑nummer‑zichtbaarheid toe op alle reguliere dia’s:
import aspose.slides as slides
with slides.Presentation("presentation.pptx") as presentation:
for slide in presentation.slides:
header_footer_manager = slide.header_footer_manager
header_footer_manager.set_footer_text("Company Confidential")
header_footer_manager.set_footer_visibility(True)
header_footer_manager.set_date_time_text("Date and time text")
header_footer_manager.set_date_time_visibility(True)
header_footer_manager.set_slide_number_visibility(True)
presentation.save("presentation_with_slide_footers.pptx", slides.export.SaveFormat.PPTX)
Als u slechts één dia wilt bijwerken, benader die dia rechtstreeks via de slides‑verzameling in plaats van door de volledige collectie te itereren.
Koppen en voetteksten instellen op de notitie‑master
De notitie‑master definieert gemeenschappelijke opmaak en plaatsaanduidingsgedrag voor notitiepagina’s. Gebruik de MasterNotesSlideHeaderFooterManager‑klasse wanneer u alleen de notitie‑master zelf wilt wijzigen.
Het volgende voorbeeld stelt kop, voettekst en datum/tijd‑tekst in op de notitie‑master en maakt alle ondersteunde plaatsaanduidingen zichtbaar op die master:
import aspose.slides as slides
with slides.Presentation("presentation.pptx") as presentation:
master_notes_slide = presentation.master_notes_slide_manager.master_notes_slide
if master_notes_slide is not None:
header_footer_manager = master_notes_slide.header_footer_manager
header_footer_manager.set_header_text("Notes header")
header_footer_manager.set_header_visibility(True)
header_footer_manager.set_footer_text("Notes footer")
header_footer_manager.set_footer_visibility(True)
header_footer_manager.set_date_time_text("Date and time text")
header_footer_manager.set_date_time_visibility(True)
header_footer_manager.set_slide_number_visibility(True)
presentation.save("presentation_with_notes_master_footers.pptx", slides.export.SaveFormat.PPTX)
Een presentatie kan geen notitie‑master bevatten, controleer daarom de geretourneerde waarde op None voordat u deze wijzigt.
Instellingen van notitie‑master toepassen op onderliggende notitiedia’s
Een notitie‑master kan kop‑ en voettekstinstellingen toepassen op zichzelf en op alle afhankelijke notitiedia’s. Gebruik de speciale propagatiemethoden op MasterNotesSlideHeaderFooterManager wanneer dezelfde instellingen door de notitie‑hiërarchie heen moeten worden toegepast.
Bijvoorbeeld, set_header_and_child_headers_text en set_header_and_child_headers_visibility werken de notitie‑master‑kop en alle onderliggende koppen bij. Gelijke methoden zijn beschikbaar voor voetteksten, datum/tijd en dia‑nummers.
import aspose.slides as slides
with slides.Presentation("presentation.pptx") as presentation:
master_notes_slide = presentation.master_notes_slide_manager.master_notes_slide
if master_notes_slide is not None:
header_footer_manager = master_notes_slide.header_footer_manager
header_footer_manager.set_header_and_child_headers_text("Notes header")
header_footer_manager.set_header_and_child_headers_visibility(True)
header_footer_manager.set_footer_and_child_footers_text("Notes footer")
header_footer_manager.set_footer_and_child_footers_visibility(True)
header_footer_manager.set_date_time_and_child_date_times_text("Date and time text")
header_footer_manager.set_date_time_and_child_date_times_visibility(True)
header_footer_manager.set_slide_number_and_child_slide_numbers_visibility(True)
presentation.save("presentation_with_child_notes_footers.pptx", slides.export.SaveFormat.PPTX)
De hierboven gebruikte propagatiemethoden zijn set_footer_and_child_footers_text, set_footer_and_child_footers_visibility, set_date_time_and_child_date_times_text, set_date_time_and_child_date_times_visibility en set_slide_number_and_child_slide_numbers_visibility.
Koppen en voetteksten instellen op een individuele notitiedia
Een notitiedia behoort tot een specifieke reguliere dia. Gebruik de NotesSlideHeaderFooterManager‑klasse wanneer u alleen die notitiepagina wilt aanpassen.
De add_notes_slide‑methode retourneert de notitiedia voor de huidige dia en maakt er een aan indien deze nog niet bestaat. Het volgende voorbeeld configureert de notitiepagina die is gekoppeld aan de eerste presentatiedia:
import aspose.slides as slides
with slides.Presentation("presentation.pptx") as presentation:
notes_slide = presentation.slides[0].notes_slide_manager.add_notes_slide()
header_footer_manager = notes_slide.header_footer_manager
header_footer_manager.set_header_text("Header for the first notes page")
header_footer_manager.set_header_visibility(True)
header_footer_manager.set_footer_text("Footer for the first notes page")
header_footer_manager.set_footer_visibility(True)
header_footer_manager.set_date_time_text("Date and time text")
header_footer_manager.set_date_time_visibility(True)
header_footer_manager.set_slide_number_visibility(True)
presentation.save("presentation_with_custom_notes_footers.pptx", slides.export.SaveFormat.PPTX)
Als u eerst de instellingen van de notitie‑master doorgeeft en daarna een individuele notitiedia wijzigt, laten de latere per‑dia‑instellingen u die notitiepagina onafhankelijk aanpassen.
Koppen en voetteksten instellen op de hand‑out‑master
Hand‑out‑pagina’s gebruiken de hand‑out‑master voor hun kop‑, voettekst‑, datum/tijd‑ en paginanummer‑plaatsaanduidingen. In tegenstelling tot notitiepagina’s worden hand‑out‑instellingen beheerd via de hand‑out‑master in plaats van via individuele hand‑out‑dia’s.
Gebruik de eigenschap master_handout_slide om de hand‑out‑master te benaderen. Indien deze niet aanwezig is, roep set_default_master_handout_slide aan om de standaard hand‑out‑master te maken.
import aspose.slides as slides
with slides.Presentation("presentation.pptx") as presentation:
master_handout_slide = presentation.master_handout_slide_manager.master_handout_slide
if master_handout_slide is None:
presentation.master_handout_slide_manager.set_default_master_handout_slide()
master_handout_slide = presentation.master_handout_slide_manager.master_handout_slide
if master_handout_slide is not None:
header_footer_manager = master_handout_slide.header_footer_manager
header_footer_manager.set_header_text("Handout header")
header_footer_manager.set_header_visibility(True)
header_footer_manager.set_footer_text("Handout footer")
header_footer_manager.set_footer_visibility(True)
header_footer_manager.set_date_time_text("Date and time text")
header_footer_manager.set_date_time_visibility(True)
header_footer_manager.set_slide_number_visibility(True)
presentation.save("presentation_with_handout_footers.pptx", slides.export.SaveFormat.PPTX)
Scope en overerving begrijpen
Kies de header/footer‑manager die overeenkomt met de scope die u wilt wijzigen:
SlideHeaderFooterManagerwijzigt voettekst-, datum/tijd‑ en dia‑nummerinstellingen voor één reguliere dia.LayoutSlideHeaderFooterManagerbeheert een layout‑dia en kan ondersteunde instellingen doorgeven aan afhankelijke dia’s.MasterSlideHeaderFooterManagerbeheert een reguliere diasmaster en kan ondersteunde instellingen doorgeven aan afhankelijke dia’s.MasterNotesSlideHeaderFooterManagerbeheert de notitie‑master en kan instellingen doorgeven aan alle afhankelijke notitiedia’s.NotesSlideHeaderFooterManagerwijzigt één notitiedia en ondersteunt een kop‑plaatsaanduiding naast voettekst, datum/tijd en dia‑nummer.MasterHandoutSlideHeaderFooterManagerwijzigt de hand‑out‑master en ondersteunt alle vier de plaatsaanduidingstypen.
Gebruik propagatie vanuit een master of layout wanneer dezelfde instelling door de volledige hiërarchie moet gelden. Gebruik een individuele dia‑ of notitiedia‑manager wanneer u een lokale instelling voor één pagina nodig heeft.
FAQ
Kan ik een kop toevoegen aan een reguliere dia?
Nee. PowerPoint definieert geen kop‑plaatsaanduiding voor reguliere dia’s. Op reguliere dia’s gebruikt u de voettekst‑, datum/tijd‑ en dia‑nummer‑plaatsaanduidingen. Koppplaatsaanduidingen zijn beschikbaar op notitiepagina’s en hand‑outs.
Wat als een voettekst-, datum/tijd- of dia‑nummer‑plaatsaanduiding niet zichtbaar is?
Gebruik de overeenkomstige header/footer‑manager om de zichtbaarheid te controleren en deze indien nodig in te schakelen. Bijvoorbeeld, is_footer_visible geeft aan of er een voettekst‑plaatsaanduiding aanwezig is, en set_footer_visibility wijzigt de zichtbaarheid.
Hoe start ik de dia‑nummering vanaf een andere waarde dan 1?
Stel de eigenschap first_slide_number van de presentatie in. De dia‑nummer‑plaatsaanduidingen gebruiken vervolgens de bijgewerkte nummeringsreeks.
Wat gebeurt er met koppen en voetteksten bij het exporteren naar PDF, afbeeldingen of HTML?
Zichtbare kop‑ en voettekstelementen worden samen met de rest van de presentatiewaarde gerenderd in het uitvoerformaat. Hun weergave hangt af van het geëxporteerde paginatype en de bijbehorende plaatsaanduidings‑zichtbaarheidsinstellingen.