1
1

PythonコードでPDF ファイルを結合する

Posted at

はじめに

PDFの結合とは、複数のPDFファイルを1つのPDFファイルにまとめることです。これにより、ユーザーは関連するPDFファイルの内容を1つのPDFファイルに結合して、ファイルの分類化、管理、および共有を簡素にできます。例えば、文書を共有する前に、似たような文書を1つのファイルにまとめて、共有プロセスをシンプルにすることができます。本記事では、Pythonを使ってPDFファイルを結合する方法を説明します。

ツール

このライブラリは購入する必要がありますが、30 日間の無料試用版も提供されています。
もっと多いサンプルコードについて、Spire.PDF for Pythonをダウンロードして参照してください。

インストール

まず、Spire.PDF for Pythonと plum-dispatch v1.7.4を VS Code にインポートしください。

  • Pythonをダウンロードしてインストールします。
  • VS Codeで「Extensions」をクリックし、「Python」を検索してインストールします。
  • 「Explorer」-「NO FOLRDER OPENED」-「Open Folder」
  • フォルダーを選択し、そこに「.py」ファイルを追加します。
  • 「Terminal」-「New Terminal」
  • 次のコマンドを入力します。
    pip install Spire.PDF

複数のPDFファイルを結合する

ステップ

  1. 必要なライブラリ モジュールをインポートします。
  2. PDFファイルのパスを含むリストを作成します。
  3. Document.MergeFiles(inputFiles: List[str])メソッドを使用して、これらのPDFを1つのファイルに結合します。
  4. PdfDocumentBase.Save(filename: str, FileFormat.PDF)メソッドを呼び出して、結合されたファイルを PDF 形式で指定された出力パスに保存します。

コード

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

# PDFファイルのパスのリストを作成する
inputFile1 = "C:/Users/Administrator/Desktop/Sample-1.pdf"
inputFile2 = "C:/Users/Administrator/Desktop/Sample-2.pdf"
inputFile3 = "C:/Users/Administrator/Desktop/Sample-3.pdf"
files = [inputFile1, inputFile2, inputFile3]

# PDFファイルを結合する
pdf = PdfDocument.MergeFiles(files)

# 結果ファイルを保存する
pdf.Save("C:/Users/Administrator/Desktop/MergePDFFiles.pdf", FileFormat.PDF)
pdf.Close()

PDFファイルの選択したページを結合する

ステップ

  1. 必要なライブラリ モジュールをインポートします。
  2. PDFファイルのパスを含むリストを作成します。
  3. リスト内の各ファイルをループし、PdfDocument オブジェクトとしてロードします。 次に、それらを新しいリストに追加します。
  4. ターゲットファイルとして新しいPdfDocumentオブジェクトを作成します。
  5. PdfDocument.InsertPage(PdfDocument, pageIndex: int)メソッドまたは PdfDocument.InsertPageRange(PdfDocument, startIndex: int, endIndex: int)メソッドを使用して、ロードされたファイルから選択したページを新しい PdfDocument オブジェクトに挿入します。
  6. 最後に、PdfDocument.SaveToFile()メソッドを呼び出して、新しい PdfDocument オブジェクトを指定された出力パスに保存します。

コード

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

# PDF ファイルのパスのリストを作成する
file1 = "C:/Users/Administrator/Desktop/Sample-1.pdf"
file2 = "C:/Users/Administrator/Desktop/Sample-2.pdf"
file3 = "C:/Users/Administrator/Desktop/Sample-3.pdf"
files = [file1, file2, file3]

# 各PDFファイルを PdfDocument オブジェクトとしてロードし、リストに追加する
pdfs = []
for file in files:
    pdfs.append(PdfDocument(file))

# PdfDocumentクラスのオブジェクトを作成する
newPdf = PdfDocument()

# ロードされたPDFから選択したページを新しいドキュメントに挿入する
newPdf.InsertPage(pdfs[0], 0)
newPdf.InsertPage(pdfs[1], 1)
newPdf.InsertPageRange(pdfs[2], 0, 1)

# 新しいPDFドキュメントを保存する
newPdf.SaveToFile("C:/Users/Administrator/Desktop/MergeSelectedPages.pdf")
1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1