SmartArt-Form verwalten

SmartArt-Form erstellen

Aspose.Slides für Android über Java stellt eine API zum Erstellen von SmartArt-Formen bereit. Um eine SmartArt-Form in einer Folie zu erstellen, befolgen Sie bitte die folgenden Schritte:

  1. Erstellen Sie eine Instanz der Presentation-Klasse.
  2. Erhalten Sie die Referenz einer Folie, indem Sie ihren Index verwenden.
  3. Fügen Sie eine SmartArt-Form hinzu, indem Sie den Layouttyp festlegen.
  4. Speichern Sie die modifizierte Präsentation als PPTX-Datei.
// Instanziieren der Präsentationsklasse
Presentation pres = new Presentation();
try {
    // Erste Folie abrufen
    ISlide slide = pres.getSlides().get_Item(0);
    
    // Smart Art Form hinzufügen
    ISmartArt smart = slide.getShapes().addSmartArt(0, 0, 400, 400, SmartArtLayoutType.BasicBlockList);
    
    // Präsentation speichern
    pres.save("SimpleSmartArt.pptx", SaveFormat.Pptx);
} finally {
    if (pres != null) pres.dispose();
}
todo:image_alt_text
Abbildung: SmartArt-Form zur Folie hinzugefügt

Zugriff auf SmartArt-Form in der Folie

Der folgende Code wird verwendet, um auf die in der Präsentationsfolie hinzugefügten SmartArt-Formen zuzugreifen. Im Beispielcode durchlaufen wir jede Form innerhalb der Folie und überprüfen, ob sie eine SmartArt-Form ist. Wenn die Form vom SmartArt-Typ ist, werden wir diese als SmartArt-Instanz typisieren.

// Die gewünschte Präsentation laden
Presentation pres = new Presentation("AccessSmartArtShape.pptx");
try {
    // Jede Form innerhalb der ersten Folie durchlaufen
    for (IShape shape : pres.getSlides().get_Item(0).getShapes())
    {
        // Überprüfen, ob die Form vom SmartArt-Typ ist
        if (shape instanceof ISmartArt)
        {
            // Form zu SmartArtEx typisieren
            ISmartArt smart = (ISmartArt)shape;
            System.out.println("Formname:" + smart.getName());
        }
    }
} finally {
    if (pres != null) pres.dispose();
}

Zugriff auf SmartArt-Form mit einem bestimmten Layouttyp

Der folgende Beispielcode hilft beim Zugriff auf die SmartArt-Form mit einem bestimmten Layouttyp. Bitte beachten Sie, dass Sie den Layouttyp der SmartArt nicht ändern können, da er nur schreibgeschützt ist und nur festgelegt wird, wenn die SmartArt-Form hinzugefügt wird.

  1. Erstellen Sie eine Instanz der Presentation-Klasse und laden Sie die Präsentation mit der SmartArt-Form.
  2. Erhalten Sie die Referenz der ersten Folie, indem Sie ihren Index verwenden.
  3. Durchlaufen Sie jede Form innerhalb der ersten Folie.
  4. Überprüfen Sie, ob die Form vom SmartArt-Typ ist, und typisieren Sie die ausgewählte Form als SmartArt, wenn es sich um SmartArt handelt.
  5. Überprüfen Sie die SmartArt-Form mit einem bestimmten Layouttyp und führen Sie anschließend die erforderlichen Aktionen durch.
Presentation pres = new Presentation("AccessSmartArtShape.pptx");
try {
    // Jede Form innerhalb der ersten Folie durchlaufen
    for (IShape shape : pres.getSlides().get_Item(0).getShapes())
    {
        // Überprüfen, ob die Form vom SmartArt-Typ ist
        if (shape instanceof ISmartArt)
        {
            // Form zu SmartArtEx typisieren
            ISmartArt smart = (ISmartArt) shape;

            // Überprüfen des SmartArt-Layouts
            if (smart.getLayout() == SmartArtLayoutType.BasicBlockList)
            {
                System.out.println("Hier etwas tun....");
            }
        }
    }
} finally {
    if (pres != null) pres.dispose();
}

SmartArt-Form-Stil ändern

In diesem Beispiel lernen wir, den Schnellstil für eine SmartArt-Form zu ändern.

  1. Erstellen Sie eine Instanz der Presentation-Klasse und laden Sie die Präsentation mit der SmartArt-Form.
  2. Erhalten Sie die Referenz der ersten Folie, indem Sie ihren Index verwenden.
  3. Durchlaufen Sie jede Form innerhalb der ersten Folie.
  4. Überprüfen Sie, ob die Form vom SmartArt-Typ ist, und typisieren Sie die ausgewählte Form als SmartArt, wenn es sich um SmartArt handelt.
  5. Finden Sie die SmartArt-Form mit einem bestimmten Stil.
  6. Setzen Sie den neuen Stil für die SmartArt-Form.
  7. Speichern Sie die Präsentation.
// Instanziieren der Präsentationsklasse
Presentation pres = new Presentation("SimpleSmartArt.pptx");
try {
    // Erste Folie abrufen
    ISlide slide = pres.getSlides().get_Item(0);
    
    // Jede Form innerhalb der ersten Folie durchlaufen
    for (IShape shape : slide.getShapes()) 
    {
        // Überprüfen, ob die Form vom SmartArt-Typ ist
        if (shape instanceof ISmartArt) 
        {
            // Form zu SmartArtEx typisieren
            ISmartArt smart = (ISmartArt) shape;
    
            // Überprüfen des SmartArt-Stils
            if (smart.getQuickStyle() == SmartArtQuickStyleType.SimpleFill) {
                // Ändern des SmartArt-Stils
                smart.setQuickStyle(SmartArtQuickStyleType.Cartoon);
            }
        }
    }
    // Präsentation speichern
    pres.save("ChangeSmartArtStyle.pptx", SaveFormat.Pptx);
} finally {
    pres.dispose();
}
todo:image_alt_text
Abbildung: SmartArt-Form mit geändertem Stil

SmartArt-Form-Farbstil ändern

In diesem Beispiel lernen wir, den Farbstil für eine SmartArt-Form zu ändern. Im folgenden Beispielcode wird auf die SmartArt-Form mit einem bestimmten Farbstil zugegriffen und dessen Stil geändert.

  1. Erstellen Sie eine Instanz der Presentation-Klasse und laden Sie die Präsentation mit der SmartArt-Form.
  2. Erhalten Sie die Referenz der ersten Folie, indem Sie ihren Index verwenden.
  3. Durchlaufen Sie jede Form innerhalb der ersten Folie.
  4. Überprüfen Sie, ob die Form vom SmartArt-Typ ist, und typisieren Sie die ausgewählte Form als SmartArt, wenn es sich um SmartArt handelt.
  5. Finden Sie die SmartArt-Form mit einem bestimmten Farbstil.
  6. Setzen Sie den neuen Farbstil für die SmartArt-Form.
  7. Speichern Sie die Präsentation.
// Instanziieren der Präsentationsklasse
Presentation pres = new Presentation("SimpleSmartArt.pptx");
try {
    // Erste Folie abrufen
    ISlide slide = pres.getSlides().get_Item(0);
    
    // Jede Form innerhalb der ersten Folie durchlaufen
    for (IShape shape : slide.getShapes()) 
    {
        // Überprüfen, ob die Form vom SmartArt-Typ ist
        if (shape instanceof ISmartArt) 
        {
            // Form zu SmartArtEx typisieren
            ISmartArt smart = (ISmartArt) shape;
    
            // Überprüfen des SmartArt-Farbstils
            if (smart.getColorStyle() == SmartArtColorType.ColoredFillAccent1) {
                // Ändern des SmartArt-Farbstils
                smart.setColorStyle(SmartArtColorType.ColorfulAccentColors);
            }
        }
    }
    // Präsentation speichern
    pres.save("ChangeSmartArtColorStyle.pptx", SaveFormat.Pptx);
} finally {
    pres.dispose();
}
todo:image_alt_text
Abbildung: SmartArt-Form mit geändertem Farbstil