Nas apresentações, o SmartArt é usado para apresentar as informações de forma visual. Muitas vezes, os apresentadores usam SmartArt para tornar o texto simples mais atraente. Além disso, também é usado para criar diagramas de fluxo, processos, relacionamentos entre diferentes entidades, etc. Neste artigo, você aprenderá como criar SmartArt em apresentações do PowerPoint programaticamente usando Java.

API Java para criar SmartArt no PowerPoint

Para manipular SmartArt em apresentações do PowerPoint, usaremos Aspose.Slides for Java. É uma poderosa biblioteca que permite a criação e manipulação de apresentações PowerPoint e OpenOffice a partir do zero. Você pode instalar a API usando as seguintes configurações do Maven ou download seu JAR.

<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.8</version>
    <classifier>jdk16</classifier>
</dependency>

Criar uma forma SmartArt no PowerPoint usando Java

Aspose.Slides for Java torna muito fácil criar as formas SmartArt nas apresentações. Vamos criar uma forma SmartArt simples do zero em uma apresentação do PowerPoint usando Java.

O exemplo de código a seguir mostra como criar uma forma SmartArt em uma apresentação do PowerPoint.

// Crie uma apresentação ou carregue uma existente
Presentation pres = new Presentation();
try {
    // Obter primeiro slide
    ISlide slide = pres.getSlides().get_Item(0);
    
    // Adicionar forma SmartArt
    ISmartArt smart = slide.getShapes().addSmartArt(0, 0, 400, 400, SmartArtLayoutType.BasicBlockList);
    
    // Salvar apresentação
    pres.save("SimpleSmartArt.pptx", SaveFormat.Pptx);
} finally {
    if (pres != null) pres.dispose();
}

A captura de tela a seguir mostra a saída do exemplo de código acima.

Acessar uma forma SmartArt em apresentações do PowerPoint

Você também pode acessar as formas SmartArt nas apresentações existentes do PowerPoint e atualizá-las dinamicamente. A seguir estão as etapas para acessar as formas SmartArt em apresentações do PowerPoint usando Java.

  • Primeiro, crie uma nova apresentação ou carregue uma existente usando a classe Apresentação.
  • Em seguida, obtenha a referência do slide desejado em um objeto ISlide.
  • Percorra as formas no slide usando a coleção ISlide.getShapes().
  • Se a forma for do tipo ISmartArt, obtenha sua referência em um objeto ISmartArt.
  • Se necessário, filtre as formas SmartArt de um layout específico usando ISmartArt.getLayout().

O exemplo de código a seguir mostra como acessar formas SmartArt em apresentações do PowerPoint.

// Carregar apresentação
Presentation pres = new Presentation("AccessSmartArtShape.pptx");
try {
    // Atravesse todas as formas dentro do primeiro slide
    for (IShape shape : pres.getSlides().get_Item(0).getShapes())
    {
        // Verifique se a forma é do tipo SmartArt
        if (shape instanceof ISmartArt)
        {
            // Forma Typecast para SmartArtEx
            ISmartArt smart = (ISmartArt) shape;

            // Verifique o layout SmartArt
            if (smart.getLayout() == SmartArtLayoutType.BasicBlockList)
            {
                System.out.println("Do some thing here....");
            }
        }
    }
} finally {
    if (pres != null) pres.dispose();
}

Alterar o estilo da forma SmartArt usando Java

Você também pode modificar os estilos das formas SmartArt usando Aspose.Slides. As etapas a seguir demonstram como acessar as formas SmartArt em uma apresentação do PowerPoint e alterar seus estilos usando Java.

  • Primeiro, crie uma nova apresentação ou carregue uma existente usando a classe Apresentação.
  • Em seguida, obtenha a referência do slide desejado em um objeto ISlide.
  • Percorra as formas no slide usando a coleção ISlide.getShapes().
  • Se a forma for do tipo ISmartArt, obtenha sua referência em um objeto ISmartArt.
  • Altere o estilo desejado, ou seja, ColorStyle, QuickStyle, etc.
  • Finalmente, salve a apresentação atualizada usando o método Presentation.save(String, SaveFormat).

O exemplo de código a seguir mostra como alterar o estilo das formas SmartArt em apresentações do PowerPoint.

// Carregar apresentação
Presentation pres = new Presentation("SimpleSmartArt.pptx");
try {
    // Obter primeiro slide
    ISlide slide = pres.getSlides().get_Item(0);
    
    // Atravesse todas as formas dentro do primeiro slide
    for (IShape shape : slide.getShapes()) 
    {
        // Verifique se a forma é do tipo SmartArt
        if (shape instanceof ISmartArt) 
        {
            // Forma Typecast para SmartArtEx
            ISmartArt smart = (ISmartArt) shape;
    
            // Verifique o estilo SmartArt
            if (smart.getQuickStyle() == SmartArtQuickStyleType.SimpleFill) {
                // Alterar estilo SmartArt
                smart.setQuickStyle(SmartArtQuickStyleType.Cartoon);
            }
          
            // Verifique o tipo de cor SmartArt
            if (smart.getColorStyle() == SmartArtColorType.ColoredFillAccent1) {
                // Alterar o tipo de cor SmartArt
                smart.setColorStyle(SmartArtColorType.ColorfulAccentColors);
            }
        }
    }
    // Salvar apresentação
    pres.save("ChangeSmartArtStyle.pptx", SaveFormat.Pptx);
} finally {
    pres.dispose();
}

Obtenha uma licença de API gratuita

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

Conclusão

Neste artigo, você aprendeu como criar SmartArt em apresentações do PowerPoint usando Java. Além disso, você viu como acessar as formas SmartArt e alterar seus estilos programaticamente. 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