Pythonでpython-pptxを用いてタイトルとサブタイトルのスライドを含むPowerPointファイルを作成する

Pythonでpython-pptxを用いてタイトルとサブタイトルのスライドを含むPowerPointファイルを作成してみます。

今回はpython-pptxを用います。このライブラリは、Pythonの標準ライブラリではありませんので、事前にインストールする必要があります。

■Python

今回のPythonのバージョンは、「3.6.8」を使用しています。(Windows10)(pythonランチャーでの確認)

■python-pptxを用いてタイトルとサブタイトルのスライドを含むPowerPointファイルを作成する

では、早速python-pptxを用いてタイトルとサブタイトルのスライドを含むPowerPointファイルを作成するスクリプトを書いていきます。

■コード

from pptx import Presentation

root = Presentation()

first_slide = root.slide_layouts[0]

slide = root.slides.add_slide(first_slide)

slide.shapes.title.text = "こんにちは、世界"

slide.placeholders[1].text = "サブタイトル"

root.save("test_slide.pptx")

print("完了しました。")

「from import」でpptxモジュールのPresentation(プレゼンテーション)を呼び出します。

その後、rootという変数を定義し、その中でPresentation()を用います。これでPresentation(プレゼンテーション)オブジェクトが作成されました。

作成後、first_slideという変数を定義し、その中でrootに対してslide_layoutsを用います。今回は角括弧”[]”で「0」で、スライドのレイアウトをタイトルとサブタイトルのものに指定し、格納します。

格納後、slideという変数を定義し、rootに対してslides.add_slide()を用います。括弧内には引数,パラメーターとしてfirst_slide変数を渡します。これでPresentation(プレゼンテーション)オブジェクト内に追加するslideオブジェクトが作成され、レイアウトとしてfirst_slide変数のものが使われます。

さらにslide.shapes.title.textで、追加するタイトルを格納し、スライドに追加します。shapesは形状コレクションです。また、slide.placeholders[1].textでも、追加するサブタイトルを格納し、スライドに追加します。なお、placeholdersは、コンテンツを配置できる事前にフォーマットされたコンテナです。今回は「1」を指定していますが「0」に変更するとデザインが変わります。

追加後、rootに対してsave()を用いて、Presentation(プレゼンテーション)をpptx形式で保存します。

保存後、完了したことを出力させるためにprint()を用います。括弧内には引数,パラメータとして、文字列を渡します。

■実行・検証

このスクリプトを「point_p.py」という名前で、Pythonが実行されている作業ディレクトリ(カレントディレクトリ)に保存し、コマンドプロンプトから実行してみます。

実行してみると、「完了しました。」と出力されました。

出力後、Pythonが実行されている作業ディレクトリ(カレントディレクトリ)内を確認すると、「test_slide.pptx」というPowerPointファイルが作成されていることが確認できました。

確認後、WebブラウザでOneDriveを開き、すでに取得されているアカウントでログインし、PowerPointファイルをアップロードし、Microsoft PowerPoint Onlineからファイルを確認すると、タイトルとサブタイトルのスライドが作成されていることが確認できました。

コメント

タイトルとURLをコピーしました