Python

【Pythonでパワポ資料を作成 】<>タイトルスライドを作成し保存する

Pythonで整理したデータやグラフを他人と共有する際、皆さんはどうしていますか。

PlotlyでpngやHTMLファイルで保存するのも良し、Streamlitなどを使ってダッシュボードを使って共有するのも良し。

ただ、もしもパワーポイントへPythonを使って出力できたらどうでしょうか。パワーポイントは広く一般的に使われるソフトなので誰に対しても受け入れられるでしょう。

一度Pythonコードを作ってしまえば、毎朝決まった時間に報告資料を作成することも可能です。

そこで、今回はPythonからパワーポイントを操作する方法を紹介します。

インストール方法

pip install python-pptx

まずはpython-pptxの公式ドキュメントをみてみましょう。

赤枠で囲った部分にいくとテキストボックス(textbox)の追加や図(picture)・表(table)の追加についてサンプルコードを使った紹介があります。

Presentationオブジェクトを作成する

まず初めにPresentationをインポートします。

from pptx import Presentation

Presentation()をprsで定義し直して省略して使用できるようにします。

prs=Presentation()

Slideオブジェクトを追加する

まずはslide_layoutsで作成するスライドのデザインを指定します。

layouts[0]はタイトルスライドを指していて他のデザインを使用する場合は数字を0から変更するだけです。

slides.addで実際にスライドが追加されます。

title_slide_layout=prs.slide_layouts[0]
sld0=prs.slides.add_slide(title_slide_layout)

Slideオブジェクトに構成要素を追加する

まずはプレースホルダー(placeholder)にタイトルとサブタイトルを記入します。

プレースホルダーとはスライドを挿入したときに表示される点線で囲まれた枠のことです。

placeholder[0]がタイトル、placeholder[1]がサブタイトルです。

title.textとsubtitle.textへそれぞれ’Pythonでパワポを作成’、’第1回 タイトルスライドの作成’と入力します。

title=sld0.placeholders[0]
subtitle=sld0.placeholders[1]
title.text='Pythonでパワポを作成'
subtitle.text='第1回 タイトルスライドの作成'

Presentationオブジェクトを保存する

.saveで保存完了です。

実際に出来上がったパワーポイントをみてみましょう。

prs.save('sample.pptx')

タイトルスライドが完成しました。

コードまとめ

from pptx import Presentation

prs=Presentation()
title_slide_layout=prs.slide_layouts[0]
sld0=prs.slides.add_slide(title_slide_layout)

title=sld0.placeholders[0]
subtitle=sld0.placeholders[1]
title.text='Pythonでパワポを作成'
subtitle.text='第1回 タイトルスライドの作成'

prs.save('sample.pptx')

Pythonでパワポ資料の作成について興味がある方は引き続きこちらの記事をご覧ください。

【Pythonでパワポ資料を作成 】>図を挿入する パワポへ図を自動で挿入したい場合、VBAを使うこともできますが、Pythonでも可能です。 一度Pythonコードを作ってしまえば、毎...
Mickey@コーヒー好きエンジニア

【製造業×プログラミング×AI】Python/VBAを活用した業務改善、Streamlit/Plotlyを活用したWebアプリ開発について初心者向けに発信中|趣味は自家焙煎コーヒー作り|noteでは焙煎理論を発信|ココナラではプログラミングに関する相談,就職/転職やコーヒーに関する相談などのサービスをやっています