チュートリアル

簡単にライブラリーを使用するためのチュートリアルコレクション

チュートリアル»Python»Spire.PDF for Python»ページの設定»PythonでPDFページを回転する方法
2026-01-30

PythonでPDFページを回転する方法

PDFファイルを受け取ったりダウンロードしたりした際、一部のページが横向きや上下逆など、正しくない向きで表示されることがあります。そのような場合、PDFページを回転させることで、読みやすく適切な表示に修正できます。

本記事では、Spire.PDF for Python を使用して、PDFページをプログラムから回転する方法を紹介します。

Spire.PDF for Python のインストール

この機能を使用するには、Spire.PDF for Python と plum-dispatch v1.7.4 が必要です。Windows 環境では、以下の pip コマンドで簡単にインストールできます。

pip install Spire.PDF

または、Spire.PDF for Pythonのダウンロードページから直接ダウンロードして、プロジェクトに追加することもできます。

PythonでPDF内の特定ページを回転する

PDFページの回転は 90 度単位で行われ、0/90/180/270 度を指定できます。以下は、PDF内の特定ページを回転する手順です。

  • PdfDocument オブジェクトを作成します。
  • PdfDocument.LoadFromFile() メソッドを使用してPDFファイルを読み込みます。
  • PdfDocument.Pages[pageIndex] プロパティを使用して、対象となるページを取得します。
  • PdfPageBase.Rotation.value プロパティを使用して、現在の回転角度を取得します。
  • 取得した回転角度に、希望する回転角度を加算します。
  • PdfPageBase.Rotation プロパティを使用して、新しい回転角度を設定します。
  • PdfDocument.SaveToFile() メソッドを使用して結果を保存します。

Pythonコード:PDF内の特定ページを回転

from spire.pdf.common import *
from spire.pdf import *

# PdfDocument オブジェクトを作成します
pdf = PdfDocument()

# PDFファイルを読み込みます
pdf.LoadFromFile("Sample.pdf")

# 1ページ目を取得します
page = doc.Pages.get_Item(0)

# 現在の回転角度を取得します
rotation = int(page.Rotation.value)

# 元の角度を基準に、時計回りに180度回転します
rotation += int(PdfPageRotateAngle.RotateAngle180.value)
if rotation >= 4:
    rotation -= 4
# PdfPageRotateAngle は 0~3 の循環する列挙型(0/90/180/270度)のため、
# 値が範囲を超えた場合は回り込み処理を行います
page.Rotation = PdfPageRotateAngle(rotation)

# 結果を保存します
pdf.SaveToFile("RotatePDFPage.pdf")
pdf.Close()

以下は、処理後のPDFファイルのプレビューです。

PythonでPDF内の特定ページを回転

PythonでPDF内のすべてのページを回転する

Spire.PDF for Python を使用すると、PDFファイル内のすべてのページをループ処理し、一括で回転させることもできます。手順は以下のとおりです。

  • PdfDocument オブジェクトを作成します。
  • PdfDocument.LoadFromFile() メソッドを使用してPDFファイルを読み込みます。
  • ドキュメント内の各ページを順に処理します。
  • PdfPageBase.Rotation.value プロパティを使用して、現在の回転角度を取得します。
  • 取得した回転角度に、希望する回転角度を加算します。
  • PdfPageBase.Rotation プロパティを使用して、新しい回転角度を設定します。
  • PdfDocument.SaveToFile() メソッドを使用して結果を保存します。

Pythonコード:PDF内のすべてのページを回転

from spire.pdf.common import *
from spire.pdf import *

# PdfDocument オブジェクトを作成します
pdf = PdfDocument()

# PDFファイルを読み込みます
pdf.LoadFromFile("Sample.pdf")

# すべてのページをループ処理します
for i in range(pdf.Pages.Count):
    page = pdf.Pages.get_Item(i)

    # 現在の回転角度を取得します
    rotation = int(page.Rotation.value)

    # 元の角度を基準に、時計回りに180度回転します
    rotation += int(PdfPageRotateAngle.RotateAngle180.value)
    rotation += int(PdfPageRotateAngle.RotateAngle180.value)
    if rotation >= 4:
        rotation -= 4
    page.Rotation = PdfPageRotateAngle(rotation)

# 結果を保存します
pdf.SaveToFile("RotatePDF.pdf")
pdf.Close()

一時ライセンスの申請について

生成されたドキュメントから評価版のメッセージを削除したい場合や、機能制限を解除したい場合は、30日間の試用ライセンス を申請できます。

Read 15 times