会議室のプロジェクターと資料の縦横比がそろうと、会場のどこに座っていてもスライドの文字が読みやすくなります。Spire.Presentation for Python は、このスライド サイズの調整を Python から行えるようにしています。プリセットの一覧から選ぶだけでなく、幅と高さを自由に決めることもできます。
Spire.Presentation for Python でスライド サイズを扱う入口は、Presentation.SlideSize の 2 つのメンバーです。
Type:SlideSizeType列挙体で指定するサイズの種類Size:実際の幅と高さ(SizeF、単位はポイント)
クイックナビゲーション
1. スライド サイズの仕組み
スライドの寸法は presentation.SlideSize.Size で確認できます。返る値の単位はピクセルではなくポイント(1 ポイント = 1/72 インチ)です。たとえば幅 960・高さ 540 ポイントのスライドは、13.33 × 7.5 インチ、いわゆる 16:9 の画面サイズに相当します。
SlideSizeType にはあらかじめ用意されたサイズが複数入っています。代表的な値と、それを指定したときに Size に反映される値は次のとおりです。
SlideSizeType の値 |
幅 | 高さ | 縦横比 |
|---|---|---|---|
Screen4x3 |
720 pt | 540 pt | 4:3 |
Screen16x9 |
960 pt | 540 pt | 16:9 |
Screen16x10 |
720 pt | 450 pt | 16:10 |
A4 |
780 pt | 540 pt | A4 横向き基準 |
Film35mm |
810 pt | 540 pt | 35 mm フィルム |
HagakiCard |
360 pt | 234 pt | はがき |
Banner |
576 pt | 72 pt | 横長バナー |
プリセット間で高さが共通しているもの・まったく異なるものがある点は押さえておくと便利です。たとえば Screen4x3 は高さ 540 のまま幅だけ 720 に変わるため、16:9 の資料を 4:3 に寄せたいときに画面の高さ方向を再調整せずに済みます。なお、スライドの見た目をさらに整えたい場合は、Python で PowerPoint スライドの背景色または背景画像を設定する方法 の組み合わせが役立ちます。
2. 実行環境とサンプルファイル
ライブラリは pip でインストールします。
pip install Spire.Presentation
ここでは、表紙・ハイライト・5 行 4 列の表の 3 スライドで構成される 報告資料.pptx(幅 960 × 高さ 540 ポイント)を使います。テーブル部分の作り方については、Python で PowerPoint プレゼンテーションのテーブルを作成・編集する方法 で確認できます。
3. プリセット サイズに変更する
SlideSize.Type に SlideSizeType の値を代入すると、スライド サイズをプリセットに合わせて変更できます。手順は次のとおりです。
Presentationオブジェクトを作成し、LoadFromFile()で PPT/PPTX を読み込むpresentation.SlideSize.Typeにプリセットを代入するSaveToFile()で結果を保存するDispose()でリソースを解放する
from spire.presentation import *
# プレゼンテーションを読み込む
presentation = Presentation()
presentation.LoadFromFile("報告資料.pptx")
# スライド サイズを 4:3 に変更する
presentation.SlideSize.Type = SlideSizeType.Screen4x3
# 変更後のサイズを表示する
size = presentation.SlideSize.Size
print("変更後のスライド サイズ: %.0f × %.0f pt" % (size.Width, size.Height))
# 結果を保存する
presentation.SaveToFile("変更後_4対3.pptx", FileFormat.Pptx2016)
presentation.Dispose()
変更後_4対3.pptx を開くと、スライドが 4:3 に変わっています。

読み込んだときの 960 × 540 ポイントから、幅が 720 ポイント(=10 インチ)に変わりました。同じ高さのまま幅だけが縮まり、縦横比が 16:9 → 4:3 になったことが 1 つの図で確認できます。
4. カスタム サイズに変更する
プリセットにないサイズは、SlideSizeType.Custom を指定してから SlideSize.Size に SizeF で幅と高さを代入します。
from spire.presentation import *
# プレゼンテーションを読み込む
presentation = Presentation()
presentation.LoadFromFile("報告資料.pptx")
# カスタム サイズ(900 × 600 pt)に変更する
presentation.SlideSize.Type = SlideSizeType.Custom
presentation.SlideSize.Size = SizeF(900.0, 600.0)
size = presentation.SlideSize.Size
print("変更後のスライド サイズ: %.0f × %.0f pt" % (size.Width, size.Height))
# 結果を保存する
presentation.SaveToFile("変更後_カスタム.pptx", FileFormat.Pptx2016)
presentation.Dispose()

幅 900 × 高さ 600 ポイント(12.5 × 8.33 インチ)のスライドになりました。2 つのスクリプトを実行すると、コンソールに次のように変更後のサイズが出力されます。

スライド上の図形や文字は、新しいサイズに合わせて伸縮されます。見出し帯や表など、位置と大きさはスライド全体のサイズ比に応じて調整されるため、変更後のファイルもそのままプレゼンテーションとして使えます。
まとめ
スライド サイズは、SlideSize.Type にプリセットを代入するだけで 4:3 や A4 に切り替えられ、プリセットにない寸法は SlideSizeType.Custom と SlideSize.Size への SizeF 代入で自由に決められます。変更結果は 変更後_4対3.pptx・変更後_カスタム.pptx のように出力ファイルとして保存でき、読戻しても SlideSize.Size で確認できます。配布先の機器にあわせたサイズで持ち込む力は、会場での読みやすさにそのまま繋がります。
FAQ
サイズを変更すると、スライド上の図形や文字はどうなりますか?
スライド全体のサイズ比に合わせて、各要素の位置と大きさが調整されます。変更後もそのままプレゼンテーションとして再生・編集でき、別のサイズに再度変更することもできます。
サイズの単位は何を基準にしていますか?
SlideSize.Size の値はポイント(1/72 インチ)です。720 × 540 pt は 10 × 7.5 インチ、900 × 600 pt は 12.5 × 8.33 インチに相当します。
プリセットにない比率を使いたいときはどうすればよいですか?
SlideSizeType.Custom を指定した上で SlideSize.Size に SizeF で幅と高さを代入します。この場合も、値はポイントで指定します。
変更前のサイズをコードで確認できますか?
LoadFromFile() の後で presentation.SlideSize.Size を呼び出すと、現在の幅と高さがポイントで確認できます。
変換に Microsoft PowerPoint 本体は必要ですか?
必要ありません。PPT/PPTX のファイル構造をライブラリが直接扱うため、PowerPoint 本体を呼び出さずにサイズ変更と保存ができます。テキストの読み取りも同じ環境で動き、Python で PowerPoint からテキストを抽出する方法 のように本文の確認もコードから行えます。
ライセンスの案内
全機能を評価したい場合は、30 日間の無料ライセンスを申請 できます。申請したライセンスを適用すると、作成したドキュメントをそのまま利用できます。






