スマートアートシェイプの管理
Contents
[
Hide
]
スマートアートシェイプの作成
Aspose.Slides for Android via Javaは、スマートアートシェイプを作成するためのAPIを提供しています。スライドにスマートアートシェイプを作成するには、以下の手順に従ってください。
- Presentationクラスのインスタンスを作成します。
- インデックスを使用してスライドの参照を取得します。
- LayoutTypeを設定してスマートアートシェイプを追加します。
- 修正したプレゼンテーションをPPTXファイルとして保存します。
// Presentationクラスのインスタンスを生成
Presentation pres = new Presentation();
try {
// 最初のスライドを取得
ISlide slide = pres.getSlides().get_Item(0);
// スマートアートシェイプを追加
ISmartArt smart = slide.getShapes().addSmartArt(0, 0, 400, 400, SmartArtLayoutType.BasicBlockList);
// プレゼンテーションを保存
pres.save("SimpleSmartArt.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
図: スライドに追加されたスマートアートシェイプ |
スライド内のスマートアートシェイプへのアクセス
以下のコードを使用して、プレゼンテーションスライドに追加されたスマートアートシェイプにアクセスします。サンプルコードでは、スライド内のすべてのシェイプをループ処理し、それがスマートアートシェイプであるかどうかを確認します。シェイプがスマートアートタイプであれば、それをSmartArtインスタンスに型キャストします。
// 必要なプレゼンテーションをロード
Presentation pres = new Presentation("AccessSmartArtShape.pptx");
try {
// 最初のスライド内のすべてのシェイプをループ処理
for (IShape shape : pres.getSlides().get_Item(0).getShapes())
{
// シェイプがスマートアートタイプであるか確認
if (shape instanceof ISmartArt)
{
// シェイプをSmartArtExに型キャスト
ISmartArt smart = (ISmartArt)shape;
System.out.println("シェイプ名:" + smart.getName());
}
}
} finally {
if (pres != null) pres.dispose();
}
特定のレイアウトタイプを持つスマートアートシェイプへのアクセス
以下のサンプルコードでは、特定のLayoutTypeを持つスマートアートシェイプにアクセスする方法を示します。スマートアートのLayoutTypeは読み取り専用で、スマートアートシェイプが追加されたときにのみ設定されるため、変更することはできません。
- Presentationクラスのインスタンスを作成し、スマートアートシェイプを含むプレゼンテーションをロードします。
- インデックスを使用して最初のスライドの参照を取得します。
- 最初のスライド内のすべてのシェイプをループ処理します。
- シェイプがスマートアートタイプであるか確認し、スマートアートであれば選択したシェイプを型キャストします。
- 特定のLayoutTypeを持つスマートアートシェイプを確認し、その後に行う必要がある処理を実行します。
Presentation pres = new Presentation("AccessSmartArtShape.pptx");
try {
// 最初のスライド内のすべてのシェイプをループ処理
for (IShape shape : pres.getSlides().get_Item(0).getShapes())
{
// シェイプがスマートアートタイプであるか確認
if (shape instanceof ISmartArt)
{
// シェイプをSmartArtExに型キャスト
ISmartArt smart = (ISmartArt) shape;
// スマートアートレイアウトを確認
if (smart.getLayout() == SmartArtLayoutType.BasicBlockList)
{
System.out.println("ここに何かをする....");
}
}
}
} finally {
if (pres != null) pres.dispose();
}
スマートアートシェイプスタイルの変更
この例では、任意のスマートアートシェイプのクイックスタイルを変更する方法を学びます。
- Presentationクラスのインスタンスを作成し、スマートアートシェイプを含むプレゼンテーションをロードします。
- インデックスを使用して最初のスライドの参照を取得します。
- 最初のスライド内のすべてのシェイプをループ処理します。
- シェイプがスマートアートタイプであるか確認し、スマートアートであれば選択したシェイプを型キャストします。
- 特定のスタイルを持つスマートアートシェイプを見つけます。
- スマートアートシェイプの新しいスタイルを設定します。
- プレゼンテーションを保存します。
// Presentationクラスのインスタンスを生成
Presentation pres = new Presentation("SimpleSmartArt.pptx");
try {
// 最初のスライドを取得
ISlide slide = pres.getSlides().get_Item(0);
// 最初のスライド内のすべてのシェイプをループ処理
for (IShape shape : slide.getShapes())
{
// シェイプがスマートアートタイプであるか確認
if (shape instanceof ISmartArt)
{
// シェイプをSmartArtExに型キャスト
ISmartArt smart = (ISmartArt) shape;
// スマートアートスタイルを確認
if (smart.getQuickStyle() == SmartArtQuickStyleType.SimpleFill) {
// スマートアートスタイルを変更
smart.setQuickStyle(SmartArtQuickStyleType.Cartoon);
}
}
}
// プレゼンテーションを保存
pres.save("ChangeSmartArtStyle.pptx", SaveFormat.Pptx);
} finally {
pres.dispose();
}
図: スタイルが変更されたスマートアートシェイプ |
スマートアートシェイプのカラースタイルの変更
この例では、任意のスマートアートシェイプのカラースタイルを変更する方法を学びます。以下のサンプルコードでは、特定のカラースタイルを持つスマートアートシェイプにアクセスし、そのスタイルを変更します。
- Presentationクラスのインスタンスを作成し、スマートアートシェイプを含むプレゼンテーションをロードします。
- インデックスを使用して最初のスライドの参照を取得します。
- 最初のスライド内のすべてのシェイプをループ処理します。
- シェイプがスマートアートタイプであるか確認し、スマートアートであれば選択したシェイプを型キャストします。
- 特定のカラースタイルを持つスマートアートシェイプを見つけます。
- スマートアートシェイプの新しいカラースタイルを設定します。
- プレゼンテーションを保存します。
// Presentationクラスのインスタンスを生成
Presentation pres = new Presentation("SimpleSmartArt.pptx");
try {
// 最初のスライドを取得
ISlide slide = pres.getSlides().get_Item(0);
// 最初のスライド内のすべてのシェイプをループ処理
for (IShape shape : slide.getShapes())
{
// シェイプがスマートアートタイプであるか確認
if (shape instanceof ISmartArt)
{
// シェイプをSmartArtExに型キャスト
ISmartArt smart = (ISmartArt) shape;
// スマートアートのカラースタイルを確認
if (smart.getColorStyle() == SmartArtColorType.ColoredFillAccent1) {
// スマートアートカラースタイルを変更
smart.setColorStyle(SmartArtColorType.ColorfulAccentColors);
}
}
}
// プレゼンテーションを保存
pres.save("ChangeSmartArtColorStyle.pptx", SaveFormat.Pptx);
} finally {
pres.dispose();
}
図: カラースタイルが変更されたスマートアートシェイプ |