Libreria di annotazioni PDF Python open source
Prova questa libreria Python gratuita e open source per aggiungere ed estrarre annotazioni da documenti PDF.
Cos'è Pypdf?
Pypdf è una libreria Python gratuita e open source nota per il suo insieme diversificato di funzionalità per la gestione di documenti PDF in ambiente Python. Questo strumento è utile per varie manipolazioni dei PDF, ma in questa recensione ci concentreremo sulle funzionalità relative alle annotazioni.
Le caratteristiche degne di nota di pypdf relative alle annotazioni includono:
- Aggiunta di annotazioni sulle forme: possiamo disegnare forme come linee, rettangoli, ellissi e poligoni ecc. su aree specifiche delle pagine PDF come annotazioni.
- Aggiunta di annotazioni di testo: possiamo aggiungere annotazioni di testo a posizioni specifiche delle pagine PDF.
- Aggiunta di annotazioni sui collegamenti: è anche possibile aggiungere annotazioni sui collegamenti (come un collegamento ipertestuale) ai documenti PDF.
- Estrazione di annotazioni: possiamo ripetere ed estrarre informazioni su tutte le annotazioni in un documento PDF utilizzando la libreria pypdf.
Iniziare con pypdf
È necessaria la versione 3.6.0 di Python o successiva per installare e utilizzare pypdf. Quindi, installa prima Python e poi usa i comandi seguenti per installare pypdf sul tuo computer usando pip e ambiente virtuale.
Linux
python3 -m venv venv
source venv/bin/activate
pip install pypdf
Mac OS
python -m venv venv
source venv/bin/activate
pip install pypdf
finestre
python3 -m venv venv
venv\Scripts\activate.bat
pip install pypdf
Aggiungi annotazione rettangolare al PDF
Possiamo aggiungere annotazioni rettangolari ai documenti PDF utilizzando la libreria pypdf. Utilizzeremo la classe Rectangle del modulo pypdf.annotations della libreria pypdf per definire il rettangolo. Quindi utilizzeremo il metodo add_annotations della classe PDFWriter per aggiungere annotazioni rettangolari al PDF.
Controlla lo snippet di codice qui sotto per i dettagli:
Produzione
Nello screenshot seguente, puoi vedere che viene aggiunto un rettangolo per annotare la parola Open Source:
Aggiungi annotazione di testo al PDF
Creiamo annotazioni di testo utilizzando la classe Text dal modulo pypdf.annotations della libreria pypdf. Successivamente possiamo utilizzare il metodo add_annotations della classe PDFWriter dalla libreria pypdf per aggiungere annotazioni al PDF. L'annotazione di testo viene aggiunta come un'icona che si espande e mostra il testo quando si fa clic sull'icona. Controlla lo snippet di codice qui sotto per i dettagli:
Produzione
Come possiamo vedere nello screencast seguente, il codice sopra aggiunge un'icona al PDF nella posizione specificata che mostra l'annotazione di testo quando si fa clic sull'icona:
Aggiungi annotazione collegamento al PDF
Le annotazioni dei collegamenti vengono create utilizzando la classe Link dal modulo pypdf.annotations. Tuttavia, il problema con l'annotazione del collegamento è che aggiunge semplicemente il collegamento ma non è visibile. Per risolvere questo problema, incorporeremo un rettangolo utilizzando la classe Rectangle dal modulo pypdf.annotations come spiegato in precedenza. In questo modo, l'utente può identificare visivamente la posizione in cui viene aggiunta l'annotazione del collegamento. Controlla lo snippet di codice qui sotto per una migliore comprensione:
Produzione
Come possiamo vedere nell'output, il rettangolo funge da area che, quando cliccato, reindirizza l'utente al collegamento specificato.
Estrai annotazioni da PDF
Possiamo estrarre annotazioni da un PDF utilizzando la libreria pypdf. Iteriamo attraverso tutte le annotazioni sulle pagine PDF e quindi utilizziamo il metodo get_object per ottenere l'oggetto dell'annotazione. Quindi estraiamo le informazioni rilevanti dall'oggetto. Controlla lo snippet di codice qui sotto per i dettagli:
Produzione
Come possiamo vedere nello screenshot qui sotto, il programma ha restituito il tipo di annotazione e le coordinate delle annotazioni nel documento PDF:
Conclusione
Pypdf consente agli sviluppatori Python di aggiungere diversi tipi di annotazioni ai PDF e di accedere a informazioni essenziali sulle annotazioni, come tipo e posizione, rendendolo una scelta pratica per attività che richiedono l'aggiunta di annotazioni e l'estrazione di dati sulle annotazioni.