04/12/2020
PDFBox: funzionalità e potenzialità
Nella rassegna di tutti gli strumenti utilizzati da Wonderlab, oggi tocca al tool Apache PDFBox, utile strumento in grado sia di realizzare le azioni più comuni sul formato PDF sia di compiere determinate operazioni avanzate risultanti davvero utili nei più svariati contesti di sviluppo software.
Il formato PDF (Portable Document Format) è ormai lo standard di fatto per i documenti da leggere su un dispositivo informatico.
La possibilità di presentare testo, immagini e tabelle in una maniera scalabile, indipendente dalla piattaforma e dall'implementazione ha nel corso degli anni fatto guadagnare questa posizione di primato al formato, ideato dalla compagnia Adobe.
PDF trae le sue origini dalla loro precedente creazione, il linguaggio PostScript, che pure definisce una semantica e un set di comandi per disegnare testo e grafica utilizzati dai dispositivi più disparati; basti pensare che la maggior parte delle stampanti di un certo livello accettano direttamente "script" in questo linguaggio, stampando ciò a cui sono istruite.
In un passato lontano, il linguaggio PostScript fu addirittura usato da vari e propri server grafici come istruzioni di disegno: gli esempi più famosi sono rappresentati dal sistema operativo NeXTStep pubblicato dalla NeXT di Steve Jobs (che poi riprese il timone in Apple) e da NeWS in SunOS dell'ormai defunta Sun Microsystems. Il desiderio era stampare esattamente ciò che si vedeva a schermo.
Proprio per la grandissima diffusione del formato PDF si ha spesso il bisogno di salvare documenti in questo formato, soprattuto in applicazioni enterprise, come quelle che possono essere implementate usando Java EE.
Purtroppo Java EE non supporta nativamente la creazione di documenti PDF e ci vengono in soccorso varie librerie che permettono di risolvere tale problematica: una di queste è PDFBox del progetto Apache.
Apache PDFBox ci permette non solo di creare documenti PDF ma di leggerli, di stamparli usando la API nativa di Java, di convertire l'intero documento ad immagini e di firmare documenti PDF con firme digitali.
Date le potenzialità, PDFBox è stato usato anche in altri progetti Apache come Nutch, un crawler web "aperto" per creare un motore di ricerca simile a Google e Tika, quale toolkit per riconoscere testo strutturato ed estrarlo da vari documenti.
Come tutti i progetti Apache, la libreria PDFBox è completamente open source, gratuita da usare e, allo stato attuale, la versione più recente è la 2.0.21.