Cabeçalho e rodapé em apresentações do PowerPoint são usados para exibir informações adicionais, como número do slide, autor, data etc. Neste artigo, você aprenderá como adicionar e gerenciar o cabeçalho e o rodapé em apresentações do PowerPoint PPTX/PPT programaticamente usando Java.

Para trabalhar com cabeçalho e rodapé em apresentações do PowerPoint, usaremos Aspose.Slides for Java. É uma API rica em recursos que permite criar e manipular documentos do PowerPoint e do OpenOffice. Você pode baixar o JAR da API ou instalá-lo via Maven.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>http://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-slides</artifactId>
    <version>21.9</version>
    <classifier>jdk16</classifier>
</dependency>

A seguir estão as etapas para adicionar cabeçalho e rodapé em uma apresentação do PowerPoint usando Java.

O exemplo de código a seguir mostra como adicionar cabeçalho e rodapé em uma apresentação do PowerPoint.

// Carregar apresentação
Presentation pres = new Presentation("headerTest.pptx");
try {
    // Definir rodapé
    pres.getHeaderFooterManager().setAllFootersText("My Footer text");
    pres.getHeaderFooterManager().setAllFootersVisibility(true);

    // Cabeçalho de acesso e atualização
    IMasterNotesSlide masterNotesSlide = pres.getMasterNotesSlideManager().getMasterNotesSlide();
    if (null != masterNotesSlide)
    {
    	for(IShape shape : masterNotesSlide.getShapes())
        {
            if (shape.getPlaceholder() != null)
            {
                if (shape.getPlaceholder().getType() == PlaceholderType.Header)
                {
                    ((IAutoShape)shape).getTextFrame().setText("HI there new header");
                }
            }
        }
    }
    // Salvar apresentação
    pres.save("HeaderFooterJava.pptx", SaveFormat.Pptx);
} finally {
    if (pres != null) pres.dispose();
}

Aspose.Slides for Java também permite que você defina o cabeçalho e o rodapé em slides de folhetos e notas. Para isso, você pode aplicar alterações no slide de notas mestre ou em um slide individual. As seções a seguir cobrem os dois cenários.

O exemplo de código a seguir mostra como alterar o cabeçalho e o rodapé no mestre de notas usando Java.

// Carregar apresentação
Presentation pres = new Presentation("presentation.pptx");
try {
    // Alterar as configurações de cabeçalho e rodapé para notas mestre e todos os slides de notas
    IMasterNotesSlide masterNotesSlide = pres.getMasterNotesSlideManager().getMasterNotesSlide();
    if (masterNotesSlide != null)
    {
        IMasterNotesSlideHeaderFooterManager headerFooterManager = masterNotesSlide.getHeaderFooterManager();

        headerFooterManager.setHeaderAndChildHeadersVisibility(true); // make the master notes slide and all child Footer placeholders visible
        headerFooterManager.setFooterAndChildFootersVisibility(true); // make the master notes slide and all child Header placeholders visible
        headerFooterManager.setSlideNumberAndChildSlideNumbersVisibility(true); // make the master notes slide and all child SlideNumber placeholders visible
        headerFooterManager.setDateTimeAndChildDateTimesVisibility(true); // make the master notes slide and all child Date and time placeholders visible

        headerFooterManager.setHeaderAndChildHeadersText("Header text"); // set text to master notes slide and all child Header placeholders
        headerFooterManager.setFooterAndChildFootersText("Footer text"); // set text to master notes slide and all child Footer placeholders
        headerFooterManager.setDateTimeAndChildDateTimesText("Date and time text"); // set text to master notes slide and all child Date and time placeholders
    }
  
    // Salvar apresentação
    pres.save("testresult.pptx",SaveFormat.Pptx);
} finally {
    if (pres != null) pres.dispose();
}

O exemplo de código a seguir mostra como alterar o cabeçalho e o rodapé em slides de anotações usando Java.

// Carregar apresentação
Presentation pres = new Presentation("presentation.pptx");
try {
    // Alterar as configurações de cabeçalho e rodapé apenas para o primeiro slide de notas
    INotesSlide notesSlide = pres.getSlides().get_Item(0).getNotesSlideManager().getNotesSlide();
    if (notesSlide != null)
    {
        INotesSlideHeaderFooterManager headerFooterManager = notesSlide.getHeaderFooterManager();
        if (!headerFooterManager.isHeaderVisible())
            headerFooterManager.setHeaderVisibility(true); // make this notes slide Header placeholder visible

        if (!headerFooterManager.isFooterVisible())
            headerFooterManager.setFooterVisibility(true); // make this notes slide Footer placeholder visible

        if (!headerFooterManager.isSlideNumberVisible())
            headerFooterManager.setSlideNumberVisibility(true); // make this notes slide SlideNumber placeholder visible

        if (!headerFooterManager.isDateTimeVisible())
            headerFooterManager.setDateTimeVisibility(true); // make this notes slide Date-time placeholder visible

        headerFooterManager.setHeaderText("New header text"); // set text to notes slide Header placeholder
        headerFooterManager.setFooterText("New footer text"); // set text to notes slide Footer placeholder
        headerFooterManager.setDateTimeText("New date and time text"); // set text to notes slide Date-time placeholder
    }
  
    // Salvar apresentação
    pres.save("testresult.pptx",SaveFormat.Pptx);
} finally {
    if (pres != null) pres.dispose();
}

Obtenha uma licença de API gratuita

Obtenha uma licença temporária gratuita para usar o Aspose.Slides for Java sem limitações de avaliação.

Conclusão

Neste artigo, você aprendeu como adicionar cabeçalho e rodapé em apresentações do PowerPoint usando Java. Além disso, você viu como alterar o cabeçalho e o rodapé em slides de notas programaticamente. Além disso, você pode explorar a documentação para saber mais sobre o Aspose.Slides for Java. Além disso, você pode fazer suas perguntas através do nosso fórum.

Veja também