Управление заголовками и нижними колонтитулами презентации в PHP
Aspose.Slides for PHP via Java предоставляет возможность управления заголовками и нижними колонтитулами внутри слайдов презентации. Они фактически управляются на уровне мастер‑презентации.
Управление заголовками и нижними колонтитулами в презентации
Заметки некоторых конкретных слайдов могут быть удалены, как показано в примере ниже:
# Загрузить презентацию
$pres = new Presentation("headerTest.pptx");
try {
# Установка нижнего колонтитула
$pres->getHeaderFooterManager()->setAllFootersText("My Footer text");
$pres->getHeaderFooterManager()->setAllFootersVisibility(true);
# Доступ и обновление заголовка
$masterNotesSlide = $pres->getMasterNotesSlideManager()->getMasterNotesSlide();
if (null != $masterNotesSlide) {
updateHeaderFooterText($masterNotesSlide);
}
# Сохранить презентацию
$pres->save("HeaderFooterJava.pptx", SaveFormat::Pptx);
} finally {
if (!java_is_null($pres)) {
$pres->dispose();
}
}
Управление заголовками и нижними колонтитулами в раздаточных и заметках слайдах
Aspose.Slides for PHP via Java поддерживает заголовки и нижние колонтитулы в раздаточных и нотных слайдах. Пожалуйста, выполните следующие шаги:
- Загрузите презентацию, содержащую видео.
- Измените настройки заголовка и нижнего колонтитула для мастера заметок и всех слайдов заметок.
- Сделайте видимыми заполнители нижнего колонтитула на мастер‑слайде заметок и всех дочерних слайдах.
- Сделайте видимыми заполнители даты и времени на мастер‑слайде заметок и всех дочерних слайдах.
- Измените настройки заголовка и нижнего колонтитула только для первого слайда заметок.
- Сделайте видимым заполнитель заголовка на слайде заметок.
- Установите текст в заполнитель заголовка слайда заметок.
- Установите текст в заполнитель даты и времени слайда заметок.
- Сохраните изменённый файл презентации.
Ниже приведён пример кода.
$pres = new Presentation("presentation.pptx");
try {
# Изменить настройки заголовка и нижнего колонтитула для мастера заметок и всех слайдов заметок
$masterNotesSlide = $pres->getMasterNotesSlideManager()->getMasterNotesSlide();
if (!java_is_null($masterNotesSlide)) {
$headerFooterManager = $masterNotesSlide->getHeaderFooterManager();
$headerFooterManager->setHeaderAndChildHeadersVisibility(true);// сделать мастер слайд заметок и все дочерние заполнители нижнего колонтитула видимыми
$headerFooterManager->setFooterAndChildFootersVisibility(true);// сделать мастер слайд заметок и все дочерние заполнители заголовка видимыми
$headerFooterManager->setSlideNumberAndChildSlideNumbersVisibility(true);// сделать мастер слайд заметок и все дочерние заполнители номеров слайдов видимыми
$headerFooterManager->setDateTimeAndChildDateTimesVisibility(true);// сделать мастер слайд заметок и все дочерние заполнители даты и времени видимыми
$headerFooterManager->setHeaderAndChildHeadersText("Header text");// установить текст в мастер слайд заметок и все дочерние заполнители заголовка
$headerFooterManager->setFooterAndChildFootersText("Footer text");// установить текст в мастер слайд заметок и все дочерние заполнители нижнего колонтитула
$headerFooterManager->setDateTimeAndChildDateTimesText("Date and time text");// установить текст в мастер слайд заметок и все дочерние заполнители даты и времени
}
# Изменить настройки заголовка и нижнего колонтитула только для первого слайда заметок
$notesSlide = $pres->getSlides()->get_Item(0)->getNotesSlideManager()->getNotesSlide();
if (!java_is_null($notesSlide)) {
$headerFooterManager = $notesSlide->getHeaderFooterManager();
if (!$headerFooterManager->isHeaderVisible()) {
$headerFooterManager->setHeaderVisibility(true);
}// сделать заполнитель заголовка этого слайда заметок видимым
if (!$headerFooterManager->isFooterVisible()) {
$headerFooterManager->setFooterVisibility(true);
}// сделать заполнитель нижнего колонтитула этого слайда заметок видимым
if (!$headerFooterManager->isSlideNumberVisible()) {
$headerFooterManager->setSlideNumberVisibility(true);
}// сделать заполнитель номера слайда этого слайда заметок видимым
if (!$headerFooterManager->isDateTimeVisible()) {
$headerFooterManager->setDateTimeVisibility(true);
}// сделать заполнитель даты и времени этого слайда заметок видимым
$headerFooterManager->setHeaderText("New header text");// установить текст в заполнитель заголовка слайда заметок
$headerFooterManager->setFooterText("New footer text");// установить текст в заполнитель нижнего колонтитула слайда заметок
$headerFooterManager->setDateTimeText("New date and time text">// установить текст в заполнитель даты и времени слайда заметок
}
$pres->save("testresult.pptx", SaveFormat::Pptx);
} finally {
if (!java_is_null($pres)) {
$pres->dispose();
}
}
Часто задаваемые вопросы
Можно ли добавить “заголовок” к обычным слайдам?
В PowerPoint заголовок существует только для заметок и раздаточных материалов; на обычных слайдах поддерживаются лишь нижний колонтитул, дата/время и номер слайда. В Aspose.Slides это соответствует тем же ограничениям: заголовок только для заметок/раздаточных, а на слайдах — нижний колонтитул, дата/время и номер слайда.
Что если макет не содержит области нижнего колонтитула — можно ли включить её видимость?
Да. Проверьте видимость через менеджер заголовков/нижних колонтитулов и включите её при необходимости. Эти индикаторы API и методы предназначены для случаев, когда заполнитель отсутствует или скрыт.
Как сделать так, чтобы нумерация слайдов начиналась с значения, отличного от 1?
Установите первый номер слайда; после этого вся нумерация пересчитается. Например, можно начать с 0 или 10 и скрыть номер на титульном слайде.
Что происходит с заголовками/нижними колонтитулами при экспорте в PDF/изображения/HTML?
Они рендерятся как обычные текстовые элементы презентации. То есть, если элементы видимы на слайдах/страницах заметок, они также появятся в выходном формате вместе с остальным содержимым.