0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Pythonを使用してPowerPointに図形(Shape)を挿入する方法

Last updated at Posted at 2025-05-23

プレゼンテーションをデザインする際、図形(Shape)は視覚効果を高めるだけでなく、フローチャート、注釈、データの視覚化などにも活用できます。Pythonを使用すれば、PowerPointにさまざまな図形を一括で効率的に追加できます。この記事では、PythonでPowerPointに図形を挿入し、それらのスタイルや位置を設定する方法をご紹介します。

環境の準備

まず、無料の Free Spire.Presentation for Python をインストールしてください。pipで簡単にインストールできます:

pip install spire.presentation.free

操作手順

以下に、PythonでPowerPointプレゼンテーションを作成し、図形を挿入する手順を示します。

ステップ1:必要なモジュールをインポート

from spire.presentation import *

ステップ2:プレゼンテーションオブジェクトを作成

presentation = Presentation()

Presentation クラスはPowerPointドキュメントの中心となるクラスで、作成時には自動的に空白のスライドが含まれます。

ステップ3:背景色を設定

presentation.Slides[0].SlideBackground.Fill.FillType = FillFormatType.Solid
presentation.Slides[0].SlideBackground.Fill.SolidColor.Color = Color.get_LightGray()
presentation.Slides[0].SlideBackground.Type = BackgroundType.Custom

ステップ4:さまざまな図形を挿入

以下に異なる図形の挿入例とその解説を示します。

三角形を挿入

shape = presentation.Slides[0].Shapes.AppendShape(ShapeType.Triangle, RectangleF.FromLTRB(115, 130, 215, 230))
shape.Fill.FillType = FillFormatType.Solid
shape.Fill.SolidColor.Color = Color.get_LightGreen()
shape.ShapeStyle.LineColor.Color = Color.get_White()

楕円を挿入

shape = presentation.Slides[0].Shapes.AppendShape(ShapeType.Ellipse, RectangleF.FromLTRB(290, 130, 440, 230))
shape.Fill.SolidColor.Color = Color.get_LightSkyBlue()
shape.ShapeStyle.LineColor.Color = Color.get_White()

ハート型を挿入

shape = presentation.Slides[0].Shapes.AppendShape(ShapeType.Heart, RectangleF.FromLTRB(470, 130, 600, 230))
shape.Fill.SolidColor.Color = Color.get_Red()
shape.ShapeStyle.LineColor.Color = Color.get_LightGray()

星型(グラデーション塗りつぶし)を挿入

shape = presentation.Slides[0].Shapes.AppendShape(ShapeType.FivePointedStar, RectangleF.FromLTRB(90, 270, 240, 420))
shape.Fill.FillType = FillFormatType.Gradient
shape.Fill.Gradient.GradientStops.AppendByKnownColors(0, KnownColors.Black)
shape.Fill.Gradient.GradientStops.AppendByKnownColors(1, KnownColors.White)
shape.ShapeStyle.LineColor.Color = Color.get_White()

長方形を挿入

shape = presentation.Slides[0].Shapes.AppendShape(ShapeType.Rectangle, RectangleF.FromLTRB(320, 290, 420, 410))
shape.Fill.SolidColor.Color = Color.get_Pink()
shape.ShapeStyle.LineColor.Color = Color.get_LightGray()

上向きに折れた矢印を挿入

shape = presentation.Slides[0].Shapes.AppendShape(ShapeType.BentUpArrow, RectangleF.FromLTRB(470, 300, 720, 400))
shape.Fill.FillType = FillFormatType.Gradient
shape.Fill.Gradient.GradientStops.AppendByKnownColors(0, KnownColors.PowderBlue)
shape.Fill.Gradient.GradientStops.AppendByKnownColors(1, KnownColors.Olive)
shape.ShapeStyle.LineColor.Color = Color.get_Red()

ステップ5:ファイルを保存

presentation.SaveToFile("AddShapes.pptx", FileFormat.Pptx2010)
presentation.Dispose()

実行結果のプレビュー

最終的に生成されるPowerPointファイルには、異なる色とスタイルの図形が配置されます。図形のレイアウトは以下のようになります:

PythonでPowerPointに図形を追加

主要なクラス、プロパティ、メソッドの解説

クラス / プロパティ・メソッド 説明
Presentation PowerPointドキュメントを表すメインクラス。
Slides プレゼンテーション内のスライド集合。
Shapes 各スライド内の図形集合。
AppendShape() 図形を追加するメソッド。
ShapeType 図形の種類を定義する列挙型(例:Triangle、Rectangleなど)。
FillFormatType 塗りつぶしスタイルの種類(Solid、Gradientなど)。
GradientStops グラデーションの色ストップ集合。
RectangleF.FromLTRB() 座標指定で矩形領域を生成。
Color.get_<ColorName>() 特定の色を取得するメソッド。
SaveToFile() PowerPointファイルとして保存するメソッド。

まとめ

この記事では、Pythonを使用してPowerPointに図形を挿入し、それぞれのスタイルをカスタマイズする方法を紹介しました。この方法を活用することで、レポートの自動生成、教育用スライド、プロジェクト資料など、さまざまな用途で視覚的に魅力的なプレゼンテーションを作成できます。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?