プレゼンテーションでは、SmartArtを使用して情報を視覚的な形式で提示します。多くの場合、プレゼンターはSmartArtを使用して、単純なテキストをより魅力的にします。さらに、フロー図、プロセス、さまざまなエンティティ間の関係などの作成にも使用されます。この記事では、Javaを使用してプログラムでPowerPointプレゼンテーションにSmartArtを作成する方法を学習します。

PowerPointでSmartArtを作成するためのJavaAPI

PowerPointプレゼンテーションでSmartArtを操作するために、Aspose.Slides for Javaを使用します。これは、PowerPointおよびOpenOfficeプレゼンテーションを最初から作成および操作できる強力なライブラリです。次のMaven構成を使用してAPIをインストールするか、その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>

Javaを使用してPowerPointでSmartArtシェイプを作成する

Aspose.Slides for Javaを使用すると、プレゼンテーションでSmartArt図形を非常に簡単に作成できます。 Javaを使用してPowerPointプレゼンテーションで単純なSmartArt図形を最初から作成してみましょう。

次のコードサンプルは、PowerPointプレゼンテーションでSmartArt図形を作成する方法を示しています。

// プレゼンテーションを作成するか、既存のプレゼンテーションをロードします
Presentation pres = new Presentation();
try {
    // 最初のスライドを取得
    ISlide slide = pres.getSlides().get_Item(0);
    
    // SmartArtシェイプを追加する
    ISmartArt smart = slide.getShapes().addSmartArt(0, 0, 400, 400, SmartArtLayoutType.BasicBlockList);
    
    // プレゼンテーションを保存する
    pres.save("SimpleSmartArt.pptx", SaveFormat.Pptx);
} finally {
    if (pres != null) pres.dispose();
}

次のスクリーンショットは、上記のコードサンプルの出力を示しています。

PowerPointプレゼンテーションでSmartArtシェイプにアクセスする

また、既存のPowerPointプレゼンテーションのSmartArt図形にアクセスして、動的に更新することもできます。以下は、Javaを使用してPowerPointプレゼンテーションのSmartArt図形にアクセスするための手順です。

  • まず、Presentationクラスを使用して、新しいプレゼンテーションを作成するか、既存のプレゼンテーションをロードします。
  • 次に、目的のスライドの参照をISlideオブジェクトに取得します。
  • ISlide.getShapes()コレクションを使用して、スライド内の図形をループします。
  • 図形のタイプがISmartArtの場合、その参照をISmartArtオブジェクトに取得します。
  • 必要に応じて、ISmartArt.getLayout()を使用して特定のレイアウトのSmartArt図形をフィルタリングします。

次のコードサンプルは、PowerPointプレゼンテーションでSmartArt図形にアクセスする方法を示しています。

// プレゼンテーションを読み込む
Presentation pres = new Presentation("AccessSmartArtShape.pptx");
try {
    // 最初のスライド内のすべての形状をトラバースします
    for (IShape shape : pres.getSlides().get_Item(0).getShapes())
    {
        // 形状がSmartArtタイプかどうかを確認します
        if (shape instanceof ISmartArt)
        {
            // SmartArtExへのタイプキャストシェイプ
            ISmartArt smart = (ISmartArt) shape;

            // SmartArtレイアウトを確認する
            if (smart.getLayout() == SmartArtLayoutType.BasicBlockList)
            {
                System.out.println("Do some thing here....");
            }
        }
    }
} finally {
    if (pres != null) pres.dispose();
}

Javaを使用してSmartArtShapeのスタイルを変更する

Aspose.Slidesを使用して、SmartArt図形のスタイルを変更することもできます。次の手順は、PowerPointプレゼンテーションでSmartArt図形にアクセスし、Javaを使用してそれらの図形を変更する方法を示しています。

  • まず、Presentationクラスを使用して、新しいプレゼンテーションを作成するか、既存のプレゼンテーションをロードします。
  • 次に、目的のスライドの参照をISlideオブジェクトに取得します。
  • ISlide.getShapes()コレクションを使用して、スライド内の図形をループします。
  • 形状のタイプがISmartArtの場合、その参照をISmartArtオブジェクトに取得します。
  • 目的のスタイル、つまりColorStyle、QuickStyleなどを変更します。
  • 最後に、Presentation.save(String, SaveFormat)メソッドを使用して更新されたプレゼンテーションを保存します。

次のコードサンプルは、PowerPointプレゼンテーションでSmartArt図形のスタイルを変更する方法を示しています。

// プレゼンテーションを読み込む
Presentation pres = new Presentation("SimpleSmartArt.pptx");
try {
    // 最初のスライドを取得
    ISlide slide = pres.getSlides().get_Item(0);
    
    // 最初のスライド内のすべての形状をトラバースします
    for (IShape shape : slide.getShapes()) 
    {
        // 形状がSmartArtタイプかどうかを確認します
        if (shape instanceof ISmartArt) 
        {
            // SmartArtExへのタイプキャストシェイプ
            ISmartArt smart = (ISmartArt) shape;
    
            // SmartArtスタイルを確認する
            if (smart.getQuickStyle() == SmartArtQuickStyleType.SimpleFill) {
                // SmartArtスタイルを変更する
                smart.setQuickStyle(SmartArtQuickStyleType.Cartoon);
            }
          
            // SmartArtカラータイプを確認してください
            if (smart.getColorStyle() == SmartArtColorType.ColoredFillAccent1) {
                // SmartArtの色の種類を変更する
                smart.setColorStyle(SmartArtColorType.ColorfulAccentColors);
            }
        }
    }
    // プレゼンテーションを保存する
    pres.save("ChangeSmartArtStyle.pptx", SaveFormat.Pptx);
} finally {
    pres.dispose();
}

無料のAPIライセンスを取得する

無料の一時ライセンスを取得して、評価の制限なしにAspose.Slides for Javaを使用します。

結論

この記事では、Javaを使用してPowerPointプレゼンテーションでSmartArtを作成する方法を学習しました。さらに、SmartArtシェイプにアクセスし、プログラムでスタイルを変更する方法を見てきました。 ドキュメントを調べて、Aspose.Slides for Javaの詳細を学ぶことができます。また、フォーラムから質問することもできます。

関連項目