はじめに
PDFの結合は、文書管理に非常に便利な機能です。複数の関連する独立したPDFファイルを1つに結合することで、管理や共有が容易になります。結合する際には、複数の文書を直接結合することもできますし、指定したページを結合することもできます。以下に、これらの方法を実現するためのコード例を示します。
ライブラリ
これは独立したプロフェッショナルな Python ライブラリです。 PDF の作成、編集、変換をサポートします。
事前準備
- まず、Python をダウンロードしてインストールします。
- Visual Studio Codeで「Extensions」をクリックし、「Python」を検索してインストールします。
- 「Explorer」-「NO FOLRDER OPENED」-「Open Folder」
- 既存のフォルダーを選択するか、新しいフォルダーを作成します。
- そのフォルダーに「.py」 ファイルを追加し、任意の名前を付けます。
- 「Terminal」-「New Terminal」
- 次のコマンドを入力して、Spire.PDF for Python と plum-dispatch v1.7.4 をインストールします。
pip install Spire.PDF
複数の PDF を結合
まず、ライブラリをコードにインポートします。
from spire.pdf.common import *
from spire.pdf import *
3つの変数を定義し、それぞれPDFファイルのパスを保存します。そして、これらの変数を後で処理するために、"files"という名前のリストに格納します。
#PDF ファイルのパスのリストを作成する
inputFile1 = "C:/Users/Administrator/Desktop/Sample1.pdf"
inputFile2 = "C:/Users/Administrator/Desktop/Sample2.pdf"
inputFile3 = "C:/Users/Administrator/Desktop/Sample3.pdf"
files = [inputFile1, inputFile2, inputFile3]
Document クラスの MergeFiles(inputFiles: List[str])メソッドを使用して、リスト内のファイルを 1 つに結合します。
#PDF を結合する
pdf = PdfDocument.MergeFiles(files)
結合された PDF ドキュメントを「MergePDF.pdf」という名前のファイルとして保存します。
#結果文書を保存する
pdf.Save("output/MergePDF.pdf", FileFormat.PDF)
pdf.Close()
指定したページを結合
まず、ライブラリをコードにインポートします。
from spire.pdf import *
from spire.pdf.common import *
3つの変数を定義し、それぞれPDFファイルのパスを保存します。そして、これらの変数を後で処理するために、"files"という名前のリストに格納します。
#PDF ファイルのパスのリストを作成する
file1 = "C:/Users/Administrator/Desktop/Sample1.pdf"
file2 = "C:/Users/Administrator/Desktop/Sample2.pdf"
file3 = "C:/Users/Administrator/Desktop/Sample3.pdf"
files = [file1, file2, file3]
リスト内の各ファイル パスをループし、PdfDocument クラスを使用して各 PDF ファイルを読み込みます。 そして、ロードされた PDF ファイル オブジェクトを PDF リストに追加します。
#各 PDF ファイルを PdfDocument オブジェクトとしてロードし、リストに追加する
pdfs = []
for file in files:
pdfs.append(PdfDocument(file))
新しいPDFドキュメントを作成します。
#PdfDocumentクラスのオブジェクトを作成
newPdf = PdfDocument()
PdfDocument.InsertPage(PdfDocument, pageIndex: int) と PdfDocument.InsertPageRange(PdfDocument, startIndex: int, endIndex: int) メソッドを使用して、指定したページを新しいドキュメントに挿入します。
#指定したページを新しいドキュメントに挿入します
newPdf.InsertPage(pdfs[0], 0)
newPdf.InsertPage(pdfs[1], 1)
newPdf.InsertPageRange(pdfs[2], 0, 1)
結合された PDF ドキュメントを「SelectedPages.pdf」という名前のファイルとして保存します。
#結果文書を保存する
newPdf.SaveToFile("output/SelectedPages.pdf")
参照
Python: Merge PDF Documents
How to Install Spire.PDF for Python in VS Code