0
0

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スライドの背景を設定する方法

Last updated at Posted at 2024-11-15

Pythonを使用してOfficeドキュメント(例えばPowerPointプレゼンテーション)を自動化することは、効率や創造性を向上させるための重要な手段です。PowerPointスライドの背景を設定することで、プレゼンテーションの視覚的な魅力が高まり、特定の感情やメッセージを伝えやすくなり、視聴者の関心を引きつけます。プログラムでスライド背景を一括で変更することで、多くの手動作業を省き、プレゼンテーション全体のスタイルに一貫性を持たせることができます。また、頻繁に更新やカスタマイズが必要なプレゼンテーションを扱う企業にとって、Pythonを使用してスライド背景を設定することは柔軟で効率的な解決策です。本記事では、Pythonを使ってPowerPointスライドに単色、グラデーション、画像の背景を設定する方法を紹介します。

この記事で紹介する方法には、Spire.Presentation for Pythonが必要です。PyPIで以下のコマンドを実行してインストールしてください:pip install spire.presentation

無料ライセンスの申請

PythonでPowerPointスライドに単色の背景を設定する

まずはライブラリが提供するクラスやメソッドを使用してPowerPointファイルを読み込み、指定のスライドを取得してから、SlideBackground.Typeプロパティで背景タイプをBackgroundType.Customに設定します。その後、SlideBackground.Fillプロパティを利用して、FillFormatType.Solid(単色背景)など、指定の背景タイプを設定します。
以下に、PowerPointスライドに単色の背景を設定する操作手順の例を示します。

  1. 必要なモジュールをインポートします。
  2. Presentationインスタンスを作成し、Presentation.LoadFromFile()メソッドでPowerPointファイルを読み込みます。
  3. Presentation.Slides.get_Item()メソッドで指定スライドを取得するか、すべてのスライドを順に処理します。
  4. ISlide.SlideBackground.TypeプロパティをBackgroundType.Customに設定します。
  5. SlideBackground.Fill.FillTypeプロパティをFillFormatType.Solidに設定します。
  6. BackgroundType.Fill.SolidColor.Colorプロパティで背景色を設定します。
  7. Presentation.SaveToFile()メソッドを使用してプレゼンテーションを保存します。

コード例

from spire.presentation import *

# プレゼンテーションオブジェクトを作成
presentation = Presentation()
# PowerPointプレゼンテーションをロード
presentation.LoadFromFile("Sample.pptx")

# 最初のスライドを取得
slide = presentation.Slides.get_Item(0)

# スライドの背景にアクセス
background = slide.SlideBackground

# スライドの背景タイプをカスタムタイプに設定
background.Type = BackgroundType.Custom
# スライド背景の塗りつぶしタイプを単色塗りつぶしに設定
background.Fill.FillType = FillFormatType.Solid
# スライド背景の色を設定
background.Fill.SolidColor.Color = Color.get_LightSeaGreen()

# 結果のプレゼンテーションを保存
presentation.SaveToFile("output/SolidColorBackground.pptx", FileFormat.Auto)
presentation.Dispose()

結果
PythonでPowerPointスライドに単色の背景を設定

PythonでPowerPointスライドにグラデーション背景を設定する

SlideBackground.Fill.FillTypeプロパティをFillFormatType.Gradientに設定することで、スライド背景にグラデーション色を追加できます。以下は操作手順の例です。

  1. 必要なモジュールをインポートします。
  2. Presentationインスタンスを作成し、Presentation.LoadFromFile()メソッドでPowerPointファイルを読み込みます。
  3. Presentation.Slides.get_Item()メソッドで指定スライドを取得するか、すべてのスライドを順に処理します。
  4. ISlide.SlideBackground.TypeプロパティをBackgroundType.Customに設定します。
  5. SlideBackground.Fill.FillTypeプロパティをFillFormatType.Gradientに設定します。
  6. SlideBackground.Fill.Gradient.GradientStops.AppendByColor()メソッドを使用して2色以上のグラデーション色を追加し、位置を設定します。
  7. SlideBackground.Fill.Gradient.GradientShapeプロパティでグラデーションの形状を指定します。
  8. SlideBackground.Fill.Gradient.LinearGradientFill.Angleプロパティで角度を指定します。
  9. Presentation.SaveToFile()メソッドを使用してプレゼンテーションを保存します。

コード例

from spire.presentation import *

# プレゼンテーションオブジェクトを作成
presentation = Presentation()
# PowerPointプレゼンテーションをロード
presentation.LoadFromFile("Sample.pptx")

# 最初のスライドを取得
slide = presentation.Slides[0]

# スライドの背景にアクセス
background = slide.SlideBackground

# スライドの背景タイプをカスタムタイプに設定
background.Type = BackgroundType.Custom

# スライド背景の塗りつぶしタイプをグラデーション塗りつぶしに設定
background.Fill.FillType = FillFormatType.Gradient

# グラデーション停止点と色を設定
background.Fill.Gradient.GradientStops.AppendByColor(0.1, Color.get_LightYellow())
background.Fill.Gradient.GradientStops.AppendByColor(0.7, Color.get_LightPink())

# グラデーション塗りつぶしの形状タイプを設定
background.Fill.Gradient.GradientShape = GradientShapeType.Linear
# グラデーション塗りつぶしの角度を設定
background.Fill.Gradient.LinearGradientFill.Angle = 45

# 結果のプレゼンテーションを保存
presentation.SaveToFile("output/GradientBackground.pptx", FileFormat.Auto)
presentation.Dispose()

結果
PythonでPowerPointスライドにグラデーション背景を設定

PythonでPowerPointスライドに画像の背景を設定する

BackgroundType.Fill.FillTypeプロパティをFillFormatType.Pictureに設定し、背景画像を追加することで、スライドに画像の背景を設定することができます。以下に操作手順の例を示します。

  1. 必要なモジュールをインポートします。
  2. Presentationインスタンスを作成し、Presentation.LoadFromFile()メソッドでPowerPointファイルを読み込みます。
  3. Presentation.Slides.get_Item()メソッドで指定スライドを取得するか、すべてのスライドを順に処理します。
  4. ISlide.SlideBackground.TypeプロパティをBackgroundType.Customに設定します。
  5. SlideBackground.Fill.FillTypeプロパティをFillFormatType.Pictureに設定します。
  6. 画像のパスからStreamオブジェクトを作成し、Presentation.Images.AppendStream()メソッドで画像をファイルに追加します。
  7. SlideBackground.Fill.PictureFill.FillTypeプロパティで画像背景の塗りつぶし方法を設定します。
  8. SlideBackground.PictureFill.Picture.EmbedImageプロパティで背景画像を設定します。
  9. Presentation.SaveToFile()メソッドを使用してプレゼンテーションを保存します。

コード例

from spire.presentation import *

# プレゼンテーションオブジェクトを作成
presentation = Presentation()
# PowerPointプレゼンテーションをロード
presentation.LoadFromFile("Sample.pptx")

# 最初のスライドを取得
slide = presentation.Slides.get_Item(0)

# スライドの背景にアクセス
background = slide.SlideBackground

# スライドの背景タイプをカスタムタイプに設定
background.Type = BackgroundType.Custom

# スライド背景の塗りつぶしタイプを画像塗りつぶしに設定
background.Fill.FillType = FillFormatType.Picture

# プレゼンテーションの画像コレクションに画像を追加
stream = Stream("BackgroundImage.jpg")
imageData = presentation.Images.AppendStream(stream)
# 画像をスライドの背景に設定
background.Fill.PictureFill.FillType = PictureFillType.Stretch
background.Fill.PictureFill.Picture.EmbedImage = imageData

# 結果のプレゼンテーションを保存
presentation.SaveToFile("output/PictureBackground.pptx", FileFormat.Pptx2013)
presentation.Dispose()

結果
PythonでPowerPointスライドに画像の背景を設定

本記事では、Pythonを使用してPowerPointプレゼンテーションのスライド背景を設定する方法を説明しました。

0
0
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
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?