miércoles, 17 de abril de 2019

PDFtk y sus comandos para dividir, combinar, cifrar, descifrar documentos PDF en Linux

PDFtk o the PDF toolkit es una herramienta de código abierto multiplataforma para la manipulación de documentos PDF. pdftk es básicamente un front end de la biblioteca iText (compilada a código nativo usando GCJ), capaz de dividir, combinar, cifrar, descifrar, descomprimir, recomprimir y reparar documentos PDF. Puede también ser utilizada para manipular marcas de agua, metadatos, o para llenar formularios PDF con datos FDF (Forms Data Format) o datos XFDF (XML Form Data).


Unir 2 o más archivos en un nuevo documento pdf:

$ pdftk documento1.pdf documento2.pdf documento3.pdf cat output documento123.pdf

Podremos utilizar etiquetas para los archivos
$ pdftk A=documento1.pdf B=documento2.pdf C=documento3.pdf cat A B C output documento123.pdf

Unir todos los archivos pdf de un directorio
$ pdftk *.pdf cat output documentos.pdf

Extraer páginas e intervalos de páginas de un documento pdf para crear un nuevo documento pdf

Imaginar que tenemos un documento pdf con 20 páginas y queremos extraer la página 1, el intervalo de paáginas desde la 12 hasta la 14 y la página 18.

pdftk A=documento.pdf cat A1 A12-14 A18 output documento_nuevo.pdf

Extraer páginas e intervalos de páginas de varios documentos pdf para crear un nuevo documento pdf

$ pdftk A=documento1.pdf B=documento2.pdf cat A1-7 B2 output documento_nuevo.pdf

Invertir el orden de las páginas de un documento pdf

$ pdftk A=documento.pdf cat A3-1 output documento1_inverso.pdf

Extraer  por separado todas las páginas de un pdf

$ pdftk documento1.pdf burst

nos crea archivos con nombres pg_0001.pdf, pg_0002.pdf, etc

Cifrar un pdf a 128-bit y controlar todos los permisos (por defecto)

$ pdftk documento.pdf output documento.128.pdf owner_pw foopass

Lo mismo que el anterior, pero requerir una password para abrir el
documento

$ pdftk documento.pdf output documento.128.pdf owner_pw foo user_pw password_que_quieras

Lo mismo que el anterior, pero permitir la impresión del documento

$ pdftk documento.pdf output documento.128.pdf owner_pw foo user_pw password_que_quieras allow printing

Lo mismo que el anterior, pero permitir copiar la información

$ pdftk documento.pdf output documento.128.pdf owner_pw foo allow copycontents

Lo mismo que el anterior, pero permitir copiar e imprimir la información

$ pdftk documento.pdf output documento.128.pdf owner_pw foo allow copycontents printing

Descifrar un PDF

$ pdftk secured.pdf input_pw foopass output unsecured.pdf

Combinar dos archivos pdf cuando uno está cifrado (la salida no lo estará)

$ pdftk A=cifrado.pdf documento.pdf input_pw A=foopass cat output combinado.pdf

Obtener un informe sobre los metadatos, marcadores y etiquetas de página de un pdf

$ pdftk documento.pdf dump_data output informe.txt