Manipolazione file PDF, altri esempi

Oggi un amico mi ha passato alcune pagine scannerizzate da una rivista in formato PDF (un file per pagina).

Primo esercizio unire le pagine. Come detto in un precedente post, per fare queste cose uso tool command line, in particolare anche qui si presta bene  pdftk. Per unire più file basta il comando:

user@host:~$ pdftk file1.pdf file2.pdf file2.pdf output output_file.pdf

E i tre file indicati vengono incollati insieme nel file output_file.pdf.

Secondo esercizio. Non ero soddistatto dalla dimensione a mio parere eccessiva del file risultante (dovuta alla dimensione dei file di partenza) e allora ho cercato un modo per ridurre la dimensione. A parte il fatto che sicuramente esisteranno altri metodi usando anche il solito pdftk, ho trovato una soluzione curiosa che consiste nel convertire il file PDF prima in formato Postscript poi indietro nuovamente in formato PDF. Il tutto utilizzando i tool command line che vengono con un altro programma, Ghostscript.

I comandi da dare sono i seguenti:

user@host:~$ pdf2ps output_file.pdf output_file.ps

user@host:~$ ps2pdf output_file.ps new_file.pdf

Il file intermedio, output_file.ps, essendo Postscript è ben più grosso del PDF originario, ma il PDF risultante dal secondo passo è (almeno nel mio caso) 5 volte più piccolo di quello di partenza, senza notare una perdita significativa nella qualità del risultato. Probabilmente il comando ps2pdf utilizza automaticamente un qualche algoritmo di compressione, fatto sta senza particolare fatica ho ottenuto il risultato richiesto.

Un potente programma per manipolare file PDF: pdftk

Ultimamente mi sto appassionando alle scienze economiche e una delle prime cose che ho imparato è che se ci sono due modi di fare una cosa allo stesso modo, è meglio scegliere quella più economica, che sia in termini di spesa o di tempo da investirci.

Questo principio trova una grande applicazione sull’uso degli applicativi da linea di comando sui PC con GNU/Linux. Uno dei grandi vantaggi di questa piattaforma è infatti la disponibilità di comandi molto potenti da lanciare da terminale, con i quali è possibile fare praticamente qualsiasi cosa.

Vediamo allora un’applicazione del principio di economia (spero si dica così): è davvero necessario spendere soldi e installare complessi applicativi grafici che portano via spazio disco e risorse al sistema per fare delle semplici operazioni come estrarre delle pagine da un documento PDF?

Sicuramente no. Infatti per fare operazioni di questo tipo basta un semplice applicativo command line come pdftk (PDF toolkit).

Supponiamo di voler estrarre da un documento PDF di 100 pagine le pagine da 10 a 20. Usando pdftk questa cosa si fa facilmente aprendo un terminale ed inserendo il seguente semplice comando:

user@host:~$ pdftk input_file.pdf cat 10-20 output output_file.pdf

Questo comando estrae dal file input_file.pdf le pagine salvandole nel file output_file.pdf.

Con questo semplice ma potente programma è ovviamente possibile fare anche molte altre cose, ma per oggi il mio tempo si è esaurito. Provate a dare un’occhiata alla man page o alla documentazione sul sito del programma.