Python でプレゼンテーションの SmartArt グラフィックスを管理する
SmartArt 図形の作成
Aspose.Slides for Python via .NET を使用すると、スライドにカスタム SmartArt 図形を最初から追加できます。この API で簡単に実装できます。スライドに SmartArt 図形を追加する手順は次のとおりです。
- Presentation クラスのインスタンスを作成します。
- インデックスで対象のスライドを取得します。
- レイアウトタイプを指定して SmartArt 図形を追加します。
- 変更したプレゼンテーションを PPTX ファイルとして保存します。
import aspose.slides as slides
import aspose.slides.smartart as smartart
# Presentation クラスのインスタンス化。
with slides.Presentation() as presentation:
# プレゼンテーションのスライドにアクセス。
slide = presentation.slides[0]
# SmartArt 図形を追加。
smart_art = slide.shapes.add_smart_art(0, 0, 400, 400, smartart.SmartArtLayoutType.BASIC_BLOCK_LIST)
# プレゼンテーションをディスクに保存。
presentation.save("output.pptx", slides.export.SaveFormat.PPTX)
スライド上の SmartArt 図形へのアクセス
以下のコードは、スライド上の SmartArt 図形にアクセスする方法を示しています。サンプルはスライド上のすべての図形を列挙し、各図形が SmartArt オブジェクトかどうかを確認します。
import aspose.slides as slides
import aspose.slides.smartart as smartart
# プレゼンテーション ファイルを読み込む。
with slides.Presentation("SmartArt.pptx") as presentation:
# 最初のスライド上のすべての図形を反復処理する。
for shape in presentation.slides[0].shapes:
# 図形が SmartArt かどうかを確認する。
if isinstance(shape, smartart.SmartArt):
# 図形名を出力する。
print("Shape name:", shape.name)
指定したレイアウトタイプの SmartArt 図形へのアクセス
次の例は、指定したレイアウトタイプを持つ SmartArt 図形にアクセスする方法を示します。SmartArt のレイアウトタイプは読み取り専用で、図形作成時に設定されるため変更できません。
- SmartArt 図形を含むプレゼンテーションをロードするために Presentation インスタンスを作成します。
- インデックスで最初のスライドへの参照を取得します。
- 最初のスライド上のすべての図形を列挙します。
- 図形が SmartArt オブジェクトかどうかを確認します。
- SmartArt 図形のレイアウトタイプが目的のものと一致した場合、必要な処理を実行します。
import aspose.slides as slides
import aspose.slides.smartart as smartart
with slides.Presentation("SmartArt.pptx") as presentation:
# 最初のスライド上のすべての図形を反復処理する。
for shape in presentation.slides[0].shapes:
# 図形が SmartArt かどうかを確認する。
if isinstance(shape, smartart.SmartArt):
# SmartArt のレイアウトタイプを確認する。
if shape.layout == smartart.SmartArtLayoutType.BASIC_BLOCK_LIST:
print("Do something here...")
SmartArt 図形のスタイル変更
次の例は、SmartArt 図形を検索してそのスタイルを変更する方法を示します。
- SmartArt 図形が含まれるファイルをロードするために Presentation を作成します。
- インデックスで最初のスライドへの参照を取得します。
- 最初のスライド上の各図形を列挙します。
- 指定したスタイルを持つ SmartArt 図形を見つけます。
- 新しいスタイルをその SmartArt 図形に割り当てます。
- プレゼンテーションを保存します。
import aspose.slides as slides
import aspose.slides.smartart as smartart
with slides.Presentation("SmartArt.pptx") as presentation:
# 最初のスライド上のすべての図形を反復処理する。
for shape in presentation.slides[0].shapes:
# 図形が SmartArt かどうかを確認する。
if isinstance(shape, smartart.SmartArt):
# SmartArt のスタイルを確認する。
if shape.quick_style == smartart.SmartArtQuickStyleType.SIMPLE_FILL:
# SmartArt のスタイルを変更する。
smart.quick_style = smartart.SmartArtQuickStyleType.CARTOON
# プレゼンテーションを保存する。
presentation.save("output.pptx", slides.export.SaveFormat.PPTX)
SmartArt 図形のカラースタイル変更
この例は、SmartArt 図形のカラースタイルを変更する方法を示します。サンプルコードは、指定したカラースタイルを持つ SmartArt 図形を検索し、更新します。
- Presentation クラスのインスタンスを作成し、SmartArt 図形が含まれるプレゼンテーションをロードします。
- インデックスで最初のスライドへの参照を取得します。
- 最初のスライド上の各図形を列挙します。
- 図形が SmartArt オブジェクトかどうかを確認します。
- 指定したカラースタイルを持つ SmartArt 図形を特定します。
- その SmartArt 図形に新しいカラースタイルを設定します。
- プレゼンテーションを保存します。
import aspose.slides as slides
import aspose.slides.smartart as smartart
with slides.Presentation("SmartArt.pptx") as presentation:
# 最初のスライド上のすべての図形を反復処理する。
for shape in presentation.slides[0].shapes:
# 図形が SmartArt かどうかを確認する。
if isinstance(shape, smartart.SmartArt):
# カラータイプを確認する。
if shape.color_style == smartart.SmartArtColorType.COLORED_FILL_ACCENT1:
# カラータイプを変更する。
shape.color_style = smartart.SmartArtColorType.COLORFUL_ACCENT_COLORS
# プレゼンテーションを保存する。
presentation.save("output.pptx", slides.export.SaveFormat.PPTX)
FAQ
SmartArt を単一オブジェクトとしてアニメーションさせることはできますか?
はい。SmartArt は図形なので、アニメーション API(開始、終了、強調、モーション パス)を使用して 標準アニメーション を他の図形と同様に適用できます。
スライド上で内部 ID が不明な特定の SmartArt を見つけるにはどうすればよいですか?
代替テキスト (AltText) を設定し、その値で図形を検索します。これは対象図形を特定する推奨方法です。
SmartArt を他の図形とグループ化できますか?
はい。SmartArt を画像、表などの他の図形とグループ化でき、その後 グループを操作 できます。
特定の SmartArt の画像(プレビューやレポート用など)を取得するには?
図形のサムネイル/画像をエクスポートします。ライブラリは個別の図形を レンダリング して PNG/JPG/TIFF 形式のラスターファイルに変換できます。
プレゼンテーション全体を PDF に変換した際に、SmartArt の外観は保持されますか?
はい。レンダリング エンジンは PDF エクスポート において高忠実度を目指しており、品質や互換性のオプションが用意されています。