Open Source Python PDF-fusiebibliotheek

Gratis en open source Python-bibliotheek om pagina's in PDF-documenten te splitsen, samen te voegen, toe te voegen, te roteren en bij te snijden.

Wat is pypdf?

pypdf is een gratis en open-source Python-bibliotheek waarmee u diverse bewerkingen op PDF-documenten kunt uitvoeren, zoals het toevoegen, roteren, bijsnijden, splitsen en samenvoegen van pagina's in PDF-bestanden.

Hieronder vindt u enkele functies:

  • PDF's samenvoegen: U kunt meerdere PDF-documenten samenvoegen tot één PDF-bestand met behulp van pypdf. Dit is handig voor het combineren van PDF-rapporten, presentaties of andere documenten.
  • PDF's splitsen: Pypdf ondersteunt ook het splitsen van een PDF in meerdere kleinere PDF's. Dit kan handig zijn als u een grote PDF in afzonderlijke secties wilt opsplitsen.
  • Pagina's roteren: U kunt afzonderlijke pagina's in een PDF-document roteren met behulp van pypdf. Dit is handig voor het corrigeren van de oriëntatie van gescande documenten of afbeeldingen.
GitHub

GitHub-statistieken

Naam: pypdf
Taal: Python
Sterren: 8.9K
Vorken: 1.4K
Licentie: Other
De opslagplaats is voor het laatst bijgewerkt op 2025-04-05

Aan de slag met pypdf

Je hebt Python versie 3.6.0 of hoger nodig om pypdf te installeren en gebruiken. Installeer dus eerst Python en gebruik dan onderstaande commando's om pypdf op je machine te installeren met pip en virtual environment.

Linux


python3 -m venv venv
source venv/bin/activate
pip install pypdf

MacOS


python -m venv venv
source venv/bin/activate
pip install pypdf

Vensters


python3 -m venv venv
venv\Scripts\activate.bat
pip install pypdf

PDF-pagina's toevoegen, roteren en bijsnijden

U kunt de pypdf-bibliotheek in Python gebruiken om PDF-bestanden te bewerken, zoals pagina's toevoegen, roteren, bijsnijden en zelfs JavaScript-acties toevoegen aan PDF-documenten met behulp van de klassen PdfWriter en PdfReader, zoals weergegeven in onderstaande code:

Opmerking: Alleen omdat content niet meer zichtbaar is, is het niet weg. Bijsnijden werkt door de viewbox aan te passen. Dat betekent dat content die is weggesneden, nog steeds kan worden hersteld.

# Import the PdfWriter & PdfReader classes from the pypdf library
from pypdf import PdfWriter, PdfReader
# Open PDF document and instantiate writer object for performing operations on the PDF
reader = PdfReader("documentprocessing.pdf")
writer = PdfWriter()
# Add page 1 from reader to output document, unchanged:
writer.add_page(reader.pages[0])
# Add page 2 from reader, but rotated clockwise 90 degrees:
writer.add_page(reader.pages[1].rotate(90))
# Add page 3 from reader, but crop it to half size:
page3 = reader.pages[2]
page3.mediabox.upper_right = (
page3.mediabox.right / 2,
page3.mediabox.top / 2,
)
writer.add_page(page3)
# Add some Javascript to launch the print window on opening this PDF.
# The password dialog may prevent the print dialog from being shown,
# Comment the the encription lines, if that's the case, to try this out:
writer.add_js("this.print({bUI:true,bSilent:false,bShrinkToFit:true});")
# Write to document-output.pdf
with open("pypdf-output.pdf", "wb") as fp:
writer.write(fp)

PDF-bestanden samenvoegen

U kunt de pypdf-bibliotheek in Python gebruiken om PDF-bestanden te manipuleren, zoals het samenvoegen van meerdere PDF's tot één document. U kunt PDF-bestanden samenvoegen en manipuleren door de functies van de PdfWriter-klasse te gebruiken, zoals weergegeven in onderstaande code:

# Import the PdfWriter class from the pypdf library
from pypdf import PdfWriter
# Create a PdfWriter object to merge PDFs
merger = PdfWriter()
# List of PDF files to be merged
pdf_files = ["documentprocessing.pdf", "data.pdf"]
# Iterate through the PDF files and append them to the merger
for pdf in pdf_files:
merger.append(pdf)
# Write the merged PDF to a new file named "merged-pdf.pdf"
merger.write("merged-pdf.pdf")
# Close the merger object
merger.close()

PDF-document splitsen

We kunnen een PDF-document opsplitsen in meerdere documenten met behulp van verschillende functies van de PdfWriter en PdfReader klassen in de pypdf bibliotheek. Het onderstaande codefragment verdeelt het meegeleverde PDF-document in twee helften en slaat ze op als twee afzonderlijke PDF-bestanden:

# Import the PdfWriter & PdfReader classes from the pypdf library
from pypdf import PdfReader, PdfWriter
# Open the PDF Document
input_pdf = PdfReader(open("1.pdf", "rb"))
# Split the PDF into two parts
mid_page = int(len(input_pdf.pages) / 2)
first_half = PdfWriter()
second_half = PdfWriter()
for page_num in range(mid_page):
first_half.add_page(input_pdf.pages[page_num])
for page_num in range(mid_page, len(input_pdf.pages)):
second_half.add_page(input_pdf.pages[page_num])
# Save the two halves to the same directory
output_file1 = 'first_half.pdf'
output_file2 = 'second_half.pdf'
with open(output_file1, 'wb') as output1:
first_half.write(output1)
with open(output_file2, 'wb') as output2:
second_half.write(output2)

Conclusie

Concluderend zijn de samenvoegingsmogelijkheden van pypdf exemplarisch, wat de bekwaamheid van de bibliotheek in het verwerken van PDF-documenten laat zien. De mogelijkheid van pypdf om moeiteloos PDF's te combineren maakt het een uitstekende keuze voor taken die het samenstellen van documenten, het genereren van rapporten of het consolideren van verschillende PDF-bronnen vereisen. De gebruiksvriendelijke functies en efficiënte samenvoegingsmogelijkheden dragen bij aan de reputatie als een waardevolle tool in PDF-documentbeheer.

Vergelijkbare Producten

 Nederlands