Menggabungkan Fail PDF dengan Python
Python menawarkan pilihan hebat untuk menggabungkan fail PDF, membolehkan anda menggabungkan berbilang dokumen menjadi satu, bersatu . Tutorial ini akan membimbing anda melalui proses, termasuk teknik lanjutan seperti menggelung melalui direktori dan mengecualikan halaman tertentu.
Menggunakan Kelas Penggabungan pypdf
pypdf menyediakan kelas PdfMerger, yang menawarkan cara mudah untuk menggabungkan dan menggabungkan fail PDF.
Penggabungan Fail
Sambungkan fail dengan menambahkannya menggunakan kaedah tambah:
<code class="python">import PdfMerger pdfs = ['file1.pdf', 'file2.pdf', 'file3.pdf', 'file4.pdf'] merger = PdfMerger() for pdf in pdfs: merger.append(pdf) merger.write("result.pdf")</code>
Penggabungan Fail
Untuk kawalan yang lebih halus, gunakan kaedah cantum untuk menentukan titik sisipan:
<code class="python">merger.merge(2, pdf) # Insert PDF at page 2</code>
Julat Halaman
Kawal halaman mana yang dilampirkan menggunakan hujah kata kunci halaman:
<code class="python">merger.append(pdf, pages=(0, 3)) # Append first 3 pages merger.append(pdf, pages=(0, 6, 2)) # Append pages 1, 3, 5</code>
Tidak Termasuk Halaman Kosong
Untuk mengecualikan halaman tertentu daripada semua PDF yang digabungkan, anda boleh memanipulasi halaman parameter sewajarnya. Contohnya, untuk mengecualikan halaman 1 daripada setiap PDF:
<code class="python">pages_to_exclude = [0] # Page 1 for pdf in pdfs: merger.append(pdf, pages=(i for i in range(pages) if i not in pages_to_exclude))</code>
PyMuPdf Library
Pilihan lain ialah pustaka PyMuPdf. Begini cara untuk menggabungkan PDF dengannya:
Dari Baris Perintah
python -m fitz join -o result.pdf file1.pdf file2.pdf file3.pdf
Dari Kod
<code class="python">import fitz result = fitz.open() for pdf in ['file1.pdf', 'file2.pdf', 'file3.pdf']: with fitz.open(pdf) as mfile: result.insert_pdf(mfile) result.save("result.pdf")</code>
Menggelung Melalui Folder
Untuk menggelung melalui folder dan menggabungkan PDF, gunakan modul os:
<code class="python">import os for folder in os.listdir("path/to/directory"): pdfs = [f for f in os.listdir(f"path/to/directory/{folder}") if f.endswith(".pdf")] merger = PdfMerger() for pdf in pdfs: merger.append(f"path/to/directory/{folder}/{pdf}") merger.write(f"merged_{folder}.pdf")</code>
Atas ialah kandungan terperinci Cara Menggabungkan Fail PDF dengan Python: Panduan Komprehensif. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!