PyGObject の GUI 上で Matplotlib を利用して自由にプロットができるようになると、今度は出力結果を利用して PowerPoint ファイルを自動作成できるようにしたくなります。Python の python-pptx というパッケージを利用すれば PowerPoint ファイルを自動作成できるようで、しかも Linux でもこのパッケージを pip コマンドでインストールできましたので、まずは Linux 上で試してみました。
チャートは、本ブログで紹介した SPC チャート [1] をそのまま使うことにします。
本ブログ記事では下記の OS 環境で動作確認をしています。
Fedora 32 (Workstation Edition) | x86_64 |
上記スクリプトを実行するには、下記の二種類のファイルが必要になります。PowerPoint のイメージは、ICONFINER からダウンロードしたフリーなアイコンイメージです。著作権者の表示を必要としないライセンスのものを選んだところ、シンプルなアイコンになってしまいました。お好みのイメージに差し替えてください。
あと、テンプレートにする PowerPoint ファイルは LibreOffice の Impress で用意しました。
powerpoint-128.png | |
template.pptx |
プログラムの GUI では PowerPoint のアイコンをクリックすると、チャートを PNG ファイル (chart.png) に出力して、そのファイルを PowerPoint ファイル (output.pptx) に追加したページへ貼り付けます。
生成された output.pptx を LibreOffice の Impress で開いて確認します。
マスタースライドの仕組みが、Impress と PowerPoint で異なっているように見えるので、いまひとつレイアウトの指定に納得できないところがありますが、おいおい PowerPoint 上で確認するつもりです。また、テンプレートからコピーした最初のページを削除したいのですが、やり方が判りません。ひきつづき調べることにします。
自宅では Linux を使っているので Microsoft Office を使いませんが、仕事で Windows を使わなければならず、PowerPoint の資料作成を自動化できれば仕事が大変捗ります。
参考サイト
- bitWalk's: 【備忘録】Matplotlib で SPC チャート [2020-07-09]
- python-pptx — python-pptx 0.6.18 documentation
- Getting Started — python-pptx 0.6.18 documentation
にほんブログ村
0 件のコメント:
コメントを投稿