Python で PDF ページサイズを変更する方法

.NET 経由の Python 用 Aspose.PDF では、簡単なコード行で PDF ページサイズを変更できます。このトピックでは、を使用してページサイズを更新する方法を説明します。 Document そして Page API。

Python で既存の PDF ページのサイズを変更したり、文書のサイズを正規化したり、ページボックスの設定を確認したりする必要がある場合は、このガイドを使用してください。

PDF ページのページサイズを A4 に設定

この例では、PDF 文書の最初のページのサイズを標準の A4 サイズに更新します。また、サイズ変更の前後にページのボックスサイズ (クロップボックス、トリムボックス、アートボックス、ブリードボックス、メディアボックス) も印刷されるので、変更を確認することができます。

次のコードスニペットは、PDF ページのサイズを A4 サイズに変更する方法を示しています。

  1. 最初にアクセスする PageDocument.
  2. 変更前のページのボックスサイズ (クロップボックス、トリムボックス、アートボックス、ブリードボックス、メディアボックス) を表示します。
  3. ページ API を使用して A4 ディメンション (597.6 × 842.4 ポイント) を適用します。
  4. 更新されたページボックスのサイズを表示します。
  5. 変更を保存する Document 指定された出力パスへ。
import aspose.pdf as ap

def set_page_size(input_file_name, output_file_name):
    document = ap.Document(input_file_name)
    # Get particular page
    page = document.pages[1]

    # Set the page size as A4 (8.3 x 11.7 in) and in Aspose.Pdf, 1 inch = 72 points
    # So A4 dimensions in points will be (597.6, 842.4) for portrait orientation
    print("Before set")
    print(f"CropBox: {page.crop_box.width} x {page.crop_box.height}")
    print(f"TrimBox: {page.trim_box.width} x {page.trim_box.height}")
    print(f"ArtBox: {page.art_box.width} x {page.art_box.height}")
    print(f"BleedBox: {page.bleed_box.width} x {page.bleed_box.height}")
    print(f"MediaBox: {page.media_box.width} x {page.media_box.height}")

    page.set_page_size(597.6, 842.4)
    print("After set")
    print(f"CropBox: {page.crop_box.width} x {page.crop_box.height}")
    print(f"TrimBox: {page.trim_box.width} x {page.trim_box.height}")
    print(f"ArtBox: {page.art_box.width} x {page.art_box.height}")
    print(f"BleedBox: {page.bleed_box.width} x {page.bleed_box.height}")
    print(f"MediaBox: {page.media_box.width} x {page.media_box.height}")

    # Save the updated document
    document.save(output_file_name)

PDF ページサイズを取得

このスニペットは PDF を読み取り、最初のページのサイズ (幅と高さ) を取得します。次のものを使用します。 Page ページの境界を抽出する API Rectangle そのサイズをコンソールに出力します。これは、ページレイアウトの検査、フォーマットの検証、または今後の処理に向けた文書の準備に役立ちます。

  1. PDF をとして読み込む Document.
  2. 最初にアクセスする Page.
  3. を使用してページの境界矩形を取得します get_page_rect().
  4. 幅と高さの値を抽出します。
  5. ページのサイズを印刷します。
import aspose.pdf as ap

def get_page_size(input_file_name, output_file_name):
    document = ap.Document(input_file_name)

    # Get particular page
    page = document.pages[1]
    rectangle = page.get_page_rect(True)
    print(f"{rectangle.width} : {rectangle.height}")

回転前と回転後の PDF ページサイズの取得

90°回転を適用する前と適用した後のPDFページのサイズを取得します。これは、回転が幅と高さにどのように影響するか、またその使用方法を示しています。 get_page_rect() ローテーションの考慮の有無にかかわらず。

  1. PDF をとして開く Document.
  2. 最初にアクセスする Page.
  3. を使用して90°回転を適用します page.rotate = ap.Rotation.ON90 (を参照してください Rotation 列挙)。
  4. を使用して回転せずにページの長方形を取得する get_page_rect(False) そしてその幅と高さを印刷します。
  5. 回転を考慮してページの長方形を取得する get_page_rect(True) そしてその幅と高さを印刷します。
  6. 回転によって寸法がどのように変化するかを比較してください。
import aspose.pdf as ap

def get_page_size_rotation(input_file_name, output_file_name):
    document = ap.Document(input_file_name)
    # Get particular page
    page = document.pages[1]
    page.rotate = ap.Rotation.ON90
    rectangle = page.get_page_rect(False)
    print(f"{rectangle.width} : {rectangle.height}")
    rectangle = page.get_page_rect(True)
    print(f"{rectangle.width} : {rectangle.height}")

関連ページトピック