Can Python Merge PDF Files?
Python provides extensive capabilities for manipulating PDF documents, including merging. The versatilepypdf library offers convenient tools for combining multiple PDF files.
File Concatenation
Using the append method of the PdfMerger class, concatenate files sequentially:
<code class="python">from pypdf import PdfMerger pdfs = ['file1.pdf', 'file2.pdf', 'file3.pdf', 'file4.pdf'] merger = PdfMerger() for pdf in pdfs: merger.append(pdf) merger.write("result.pdf") merger.close()</code>
Fine-Grained Merging
For more control, use the merge method to insert pages at specific locations:
<code class="python">merger.merge(2, pdf)</code>
Page Ranges
Specify page ranges to append from a particular file using the pages keyword argument:
<code class="python">merger.append(pdf, pages=(0, 3)) # first 3 pages merger.append(pdf, pages=(0, 6, 2)) # pages 1,3, 5</code>
Handling Empty Pages
To exclude an empty page present in each PDF, use PyMuPdf's insert_pdf method:
<code class="python">import fitz result = fitz.open() for pdf in ['file1.pdf', 'file2.pdf', 'file3.pdf']: with fitz.open(pdf) as mfile: for page in mfile.pages: # Skip empty pages if page.get_text('blocks') != '': result.insert_page(len(result), page) result.save("merged_without_empty.pdf")</code>
The above is the detailed content of Can Python Perform PDF File Merging and Manipulation Using PyPDF?. For more information, please follow other related articles on the PHP Chinese website!