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プレゼンテーションをPNG画像やSVGに変換する方法

Last updated at Posted at 2024-06-28

PowerPointプレゼンテーションは、創造力の発揮、知識の共有、意見の表明のための重要なツールとして、教育、ビジネスレポート、個人プロジェクトの発表などの分野で広く使用されています。しかし、異なる共有シーンや受け手のニーズに対応するために、時にはPPTの内容を画像形式で保存・共有する必要があります。こうすることで、ソフトウェアの互換性の制限を避け、特定のソフトウェアをインストールすることなくコンテンツを閲覧できるようにし、また、ソーシャルネットワーク、ブログ、電子メールで迅速に共有・埋め込みをすることも容易になります。Pythonのコードを使用すると、PowerPointプレゼンテーションを効率的に画像に変換でき、作業効率を向上させることができます。
この記事では、Pythonを使用してPowerPointプレゼンテーションを画像に変換する方法を紹介します。

この記事で紹介する方法には、Spire.Presentation for Pythonが必要です。PyPIからインストールできます:pip install Spire.Presentation

無料ライセンスの申請

PowerPointスライドをPNGの画像に変換

ライブラリのPresentation.Slides[]プロパティを使用して特定のスライドを取得し、ISlide.SaveAsImage()メソッドを使用してスライドを画像ストリームに保存し、その後、画像ファイルに保存します。
以下は詳細な手順です:

  1. 必要なモジュールをインポート。
  2. Presentationインスタンスを作成。
  3. Presentation.LoadFromFile()メソッドを使用して、ファイルからPowerPointプレゼンテーションをロード。
  4. プレゼンテーションのスライドを反復処理:
    • Presentation.Slides[]プロパティを使用してスライドを取得。
    • ISlide.SaveAsImage()メソッドを使用してスライドを画像ストリームに保存。
    • Stream.Save()メソッドを使用して画像をファイルに保存。
  5. リソースを解放。

コード例

from spire.presentation import *
from spire.presentation.common import *

# Presentationのインスタンスを作成
presentation = Presentation()

# プレゼンテーションファイルを読み込む
presentation.LoadFromFile("Sample.pptx")

# プレゼンテーション内のスライドを順に処理
for i in range(presentation.Slides.Count):
    # 現在のスライドを取得
    slide = presentation.Slides[i]
    # スライドを画像ストリームとして保存
    image = slide.SaveAsImage()
    # 画像をファイルに保存
    image.Save("output/PresentationToImage/Slide-" + str(i) + ".png")

# リソースを解放
presentation.Dispose()

変換結果
PowerPointスライドをPNGの画像に変換

PowerPointスライドを画像に変換してサイズを指定

ライブラリはISlide.SaveAsImageByWH()メソッドも提供しており、指定した幅と高さでスライドを画像ストリームに保存します。
以下は詳細な手順です:

  1. 必要なモジュールをインポート。
  2. Presentationインスタンスを作成。
  3. Presentation.LoadFromFile()メソッドを使用して、ファイルからPowerPointプレゼンテーションをロード。
  4. プレゼンテーションのスライドを反復処理:
    • Presentation.Slides[]プロパティを使用してスライドを取得。
    • ISlide.SaveAsImageByWH()メソッドを使用して指定した幅と高さで画像ストリームに保存。
    • Stream.Save()メソッドを使用して画像をファイルに保存。
  5. リソースを解放。

コード例

from spire.presentation import *
from spire.presentation.common import *

# Presentationのインスタンスを作成
presentation = Presentation()

# プレゼンテーションファイルを読み込む
presentation.LoadFromFile("Sample.pptx")

# 全てのスライドを順に処理
for i in range(presentation.Slides.Count):
    # スライドを取得
    slide = presentation.Slides[i]
    # 指定されたサイズでスライドを画像ストリームとして保存
    image = slide.SaveAsImageByWH(800, 600)
    # 画像をファイルに保存
    image.Save("output/PresentationToImageWithSize/Slide" + str(i) + ".png")

# リソースを解放
presentation.Dispose()

変換結果
PowerPointスライドを画像に変換してサイズを指定

PowerPointスライドをSVG画像ファイルに変換

通常の画像に変換する以外に、ライブラリはISlide.SaveToSvg()メソッドを提供しており、スライドをSVG形式の画像に変換します。変換前に、Presentation.IsNoteRetainedプロパティを使用して、変換時にスライドのメモを保持するかどうかを設定することもできます。
以下は手順です:

  1. 必要なモジュールをインポート。
  2. Presentationインスタンスを作成。
  3. Presentation.LoadFromFile()メソッドを使用して、ファイルからPowerPointプレゼンテーションをロード。
  4. Presentation.IsNoteRetainedプロパティを使用して、変換時にスライドのメモを保持するかどうかを設定。
  5. プレゼンテーションのスライドを反復処理:
    • Presentation.Slides[]プロパティを使用してスライドを取得。
    • ISlide.SaveToSvg()メソッドを使用してスライドをSVG画像ストリームに保存。
    • Stream.Save()メソッドを使用してSVG画像をファイルに保存。
  6. リソースを解放。

コード例

from spire.presentation.common import *
from spire.presentation import *

# Presentationのインスタンスを作成
presentation = Presentation()

# プレゼンテーションファイルを読み込む
presentation.LoadFromFile("Sample.pptx")

# ノートを保持するかどうかを設定
presentation.IsNoteRetained = False

# スライドを順に処理
for i in range(presentation.Slides.Count):
    # スライドを取得
    slide = presentation.Slides[i]
    # スライドをSVGストリームとして保存
    svg = slide.SaveToSVG()
    # SVGストリームをファイルに保存
    svg.Save("output/PresentationToSvg/Slide-" + str(i) + ".svg")

# リソースを解放
presentation.Dispose()

変換結果
PowerPointスライドをSVG画像ファイルに変換

この記事では、Pythonコードを使用してPowerPointプレゼンテーションのスライドを画像およびSVG画像ファイルに保存する方法を紹介しました。

PowerPointプレゼンテーションの処理テクニックについては、Spire.Presentation for Pythonのチュートリアルをご覧ください。

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?