Open source Python-bibliotheek om PDF-bestanden te verwerken
Gratis Python API maakt het lineariseren van PDF's en toegang tot versleutelde PDF's mogelijk. Het ondersteunt het helemaal opnieuw maken van pdf's, het kopiëren van pagina's van de ene pdf naar de andere, het splitsen of samenvoegen van pdf's en nog veel meer.
PikePDF is een zeer eenvoudige Python PDF-bibliotheek waarmee softwareontwikkelaars kunnen werken met PDF-bestanden in Python-applicaties. Het is gebaseerd op QPDF, een krachtige bibliotheek voor manipulatie en reparatie van PDF's. PikePDF is een bibliotheek voor het transformeren van PDF-inhoud en biedt toegang op laag niveau tot PDF-bestanden. Dit betekent dat gebruikers kennis van PDF-internals en bekendheid met PDF-specificaties nodig hebben. De bibliotheek is open source en is beschikbaar onder de MIT-licentie voor openbaar gebruik. De bibliotheek is open source en is beschikbaar onder de MPL-2.0-licentie.
De PikePDF biedt ondersteuning voor het lineariseren van PDF's en toegang tot versleutelde PDF's. Het heeft een zeer krachtige reeks functies met betrekking tot PDF-beheer, zoals het maken van PDF's vanaf het begin, het kopiëren van pagina's van de ene PDF naar de andere, het splitsen of samenvoegen van PDF's, het extraheren van afbeeldingen of tekst uit PDF, het vervangen van inhoud in PDF, ondersteuning voor het herstellen van PDF, pagina instellingen ondersteunen, PDF-metadata beheren, werken met wachtwoordbeveiligd, PDF XMP-metadata bewerken, de transformatie van bestaande PDF's en nog veel meer.
.
Aan de slag met PikePDF
PikePDF vereist Python 3.6 en hoger. Je kunt PikePDF installeren met pip. Gebruik de volgende opdracht om het te installeren.
Installeer PikePDF via pip
pip install pikepdf
Kopieer pagina's van de ene PDF naar de andere via Python
De open source PikePDF-bibliotheek biedt de mogelijkheid waarmee softwareontwikkelaars pagina's van de ene PDF naar de andere kunnen overmaken met slechts een paar regels Python-code. Door pagina's tussen PDF-objecten te kopiëren, wordt een ondiepe kopie van de bronpagina in het doel-PDF-bestand gemaakt en daarom heeft het wijzigen van de pagina's geen invloed op de originele PDF-documenten. Het is ook mogelijk om specifieke pagina's te vervangen door aangepaste inhoud. Het is ook mogelijk om pagina's binnen een bepaalde PDF te kopiëren.
Open en manipuleer PDF-documenten via Python
# PDF Documents Manipulation
from pikepdf import Pdf
new_pdf = Pdf.new()
with Pdf.open('sample.pdf') as pdf:
pdf.save('output.pdf')
# Copying pages from other PDFs
pdf = Pdf.open('../tests/resources/fourpages.pdf')
appendix = Pdf.open('../tests/resources/sandwich.pdf')
pdf.pages.extend(appendix.pages)
PDF splitsen en samenvoegen via Python
De PDF PikePDF-bibliotheek geeft softwareontwikkelaars de mogelijkheid om bestaande PDF-bestanden te openen en deze gemakkelijk in meerdere PDF-bestanden te splitsen. Bij het splitsen van PDF is alles wat we nodig hebben dat de nieuwe PDF's de bestemmingspagina's moeten bevatten. De bibliotheek zorgt er ook voor dat de gegevens die bij elke pagina horen, worden overgedragen, zodat elke pagina op zichzelf staat. De bibliotheek bevatte ook ondersteuning voor het samenvoegen of samenvoegen van meerdere PDF-documenten tot één. Het is ook mogelijk om de volgorde van de PDF-pagina's om te draaien met slechts een paar regels code.
PDF-documenten splitsen en samenvoegen via Python
# PDF Splitting
pdf = Pdf.open('../tests/resources/fourpages.pdf')
for n, page in enumerate(pdf.pages):
dst = Pdf.new()
dst.pages.append(page)
dst.save(f'{n:02d}.pdf')
# Combine Multiple PDF pages into a single One
from glob import glob
pdf = Pdf.new()
for file in glob('*.pdf'):
src = Pdf.open(file)
pdf.pages.extend(src.pages)
pdf.save('merged.pdf')
Beheer afbeeldingen in PDF-document via Python
De PDF PikePDF-bibliotheek maakt het voor softwareontwikkelaars gemakkelijk om afbeeldingen in een PDF-bestand te verwerken met behulp van Python-opdrachten. De bibliotheek heeft verschillende belangrijke functies opgenomen met betrekking tot het verwerken van afbeeldingen, zoals het kopiëren van afbeeldingen binnen de PDF-pagina, het openen en bekijken van PDF, het vergroten en verkleinen van afbeeldingen, het manipuleren van afbeeldingen in een PDF, het extraheren van afbeeldingen uit PDF, het vervangen van afbeeldingen, het verwijderen van een afbeelding uit PDF, en nog veel meer .
Afbeelding uitpakken en vervangen in PDF via Python
# Extract Image & Replace PDF Images
import zlib
rawimage = pdfimage.obj
pillowimage = pdfimage.as_pil_image()
greyscale = pillowimage.convert('L')
greyscale = greyscale.resize((32, 32))
rawimage.write(zlib.compress(greyscale.tobytes()), filter=Name("/FlateDecode"))
rawimage.ColorSpace = Name("/DeviceGray")
rawimage.Width, rawimage.Height = 32, 32
Verwerking van PDF-metagegevens via Python
PDF-metagegevens bevatten zeer nuttige informatie over een PDF-document, zoals de naam van de auteur, datum van aanmaak en wijziging, trefwoorden, copyrightinformatie, enzovoort. De PDF PikePDF-bibliotheek bevat volledige functionaliteit voor het openen en lezen van metadata, het extraheren van metadata en het verwijderen van metadata-items uit PDF-documenten. Het volgende codevoorbeeld laat zien hoe u metagegevens uit PDF-documenten extraheert.
Hoe PDF-metadata te extraheren via Python
# Extract PDF Metadata
import pikepdf
import sys
# get the target pdf file from the command-line arguments
pdf_filename = sys.argv[1]
# read the pdf file
pdf = pikepdf.Pdf.open(pdf_filename)
docinfo = pdf.docinfo
for key, value in docinfo.items():
print(key, ":", value)