Combinar ficheros pdf con PDFtk
Es habitual que nos encontremos con que tenemos muchos documentos PDF almacenados en nuestro sistema. Si los queremos conservar podemos hacer una copia de seguridad de los mismos, pero el problema puede ser la multitud de ficheros individuales, que, por ejemplo, en el caso de manuales, podríamos conservar en un fichero unificado, reduciendo así espacio necesario de almacenamiento.
Vamos a ver una herramienta «PDFtk», que nos permitirá combinar varios archivos PDF en un solo PDF, así podremos administrar, visualizar o realizar copias de seguridad de manera más eficiente y rápida.
Sumario
- «PDFtk» El kit de herramientas PDF
- Características
- Instalar PDFtk desde snap
- Instalar PDFtk desde los repositorios
- Combinar ficheros pdf en uno solo
- Más opciones de la herramienta
«PDFtk» El kit de herramientas PDF
PDFtk es una herramienta simple para trabajar con documentos PDF. La encontramos en tres versiones: PDFtk Free , PDFtk Pro y la herramienta original en línea de comandos PDFtk Server.
PDFtk Server es una herramienta de línea de comandos, de código abierto y multiplataforma para la manipulación de documentos PDF. Es básicamente un «front end» de la biblioteca «iText», compilada a código nativo usando GCJ.
PDFtk Server es una versión compatible con GNU/Linux que nos permite fusionar documentos PDF, dividir PDF en nuevos documentos, rotar páginas, descifrar y cifrar, actualizar metadatos, aplicar marcas de agua y mucho más.
Podemos descargar la versión que necesitemos de la página pdflabs donde la encontramos disponible para Windows, Mac OS X, Red Hat y CentOS. Nosotros veremos la instalación de la versión PDFtk Server desde snap y desde los repositorios.
Características
Esta versátil herramienta nos ofrece múltiples posibilidades.
- Combinar documentos PDF o clasificar escanéos de páginas PDF.
- Dividir páginas PDF en un nuevo documento.
- Rotar documentos o páginas PDF.
- Cifrar o descifrar documentos con contraseña.
- Rellenar formularios PDF con datos X / FDF.
- Generar plantillas FDF desde formularios PDF.
- Aplicar marca de agua en fondo o un sello en primer plano.
- Generar informes de métricas, marcadores y metadatos del documento.
- Agregar o actualizar marcadores o metadatos PDF.
- Adjuntar archivos a páginas y documentos PDF.
- Desempaquetar ficheros adjuntos.
- Descomprimir y recomprimir secuencias de páginas.
- Reparar documentos PDF dañados (si es posible).
Instalar PDFtk desde snap
Lamentablemente, la herramienta ha desaparecido de los repositorios oficiales de muchas distribuciones GNU/linux. La política de Canonical con la implantación de los paquetes snap, que intenta centralizar todo en una misma plataforma, de la que ellos son propietarios, ha provocado esta situación. Si usas Ubuntu, tendrás que instalarla desde snap.
Tenemos la opción de instalarlo desde su código fuente, pero esto es más complicado ya que cada distribución tiene su propio método y sus propias librerías, así que vamos a ver como instalar la herramienta desde snap y después la instalaremos en Debian desde los repositorios. Así que, si utilizamos Ubuntu tenemos que tener snap instalado, lo instalamos con
sudo apt install snap
Encontramos más información del paquete snap con
snap info pdftk
E instalamos la herramienta ejecutando el comando
sudo snap install pdftk # version 2.02-4 o sudo apt install pdftk-java # version 3.0.9-1
Y ya tenemos la herramienta a nuestra disposición.
Instalar PDFtk desde los repositorios
En Debian lo encontramos en los repositorios por tanto lo podemos instalar con «apt» sin problemas, ejecutamos
sudo apt install pdftk
Combinar ficheros pdf en uno solo
Tenemos muchas más opciones que expondremos más adelante. Ahora vamos a ver como combinar varios ficheros PDF en uno solo.
La sintaxis para unir varios documentos o ficheros en uno, es muy sencilla.
pdftk fichero1.pdf fichero2.pdf fichero3.pdf cat output nuevo-fichero.pdf
Veámoslo con un ejemplo. Vamos a fusionar tres ficheros PDF. Nos cambiamos al directorio donde los tengamos y los listamos para verlos.
cd CombinarPDF ls
Para unificarlos ejecutamos el siguiente comando.
pdftk Documento1.pdf Documento2.pdf Documento3.pdf cat output DocIntegrado.pdf
Y vemos que tenemos un fichero con el contenido de los tres documentos fusionados en DocIntegrado.pdf.
En el entorno gráfico comprobamos que lo tenemos
Más opciones de la herramienta
También podemos unirlos utilizando etiquetas con la siguiente sintaxis
pdftk A=fichero1.pdf B=fichero2.pdf cat A B output salida.pdf
En nuestro caso
pdftk A=Documento1.pdf B=Documento2.pdf cat A B output Nuevo.pdf
En la GUI
Y por supuesto podemos usar comodines
pdftk *.pdf cat output salida.pdf
Con este comando nos unificará todos los pdfs que tengamos en el directorio
pdftk *.pdf cat output Todos.pdf
Para separar páginas de varios documentos y crear un documento nuevo con estas hacemos lo siguiente
pdftk A=uno.pdf B=dos.pdf cat A1-7 B1-5 output salida.pdf
Otro ejemplo con un solo documento
pdftk A=DocIntegrado.pdf cat A1-2 A3-end output Separados.pdf
Para encriptar con una clave de 128 bits (opción por defecto) y restringir todos los permisos (opción por defecto)
pdftk fichero.pdf output fichero_encriptado.pdf owner_pw javier
Para desencriptar
pdftk Nuevo_encriptado.pdf input_pw javier output inseguro.pdf
Para reparar un fichero pdf
pdftk corrupto.pdf output arreglado.pdf
Si queremos descomprimir un fichero pdf para su posterior edición en algún editor de texto
pdftk midocumento.pdf output midocumento_desc.pdf uncompress
Para separar cada una de las páginas del documento
pdftk in.pdf burst
Para generar un reporte del documento
pdftk fichero.pdf dump_data output reporte.txt
Encontraras más información sobre estas y otras opciones en Github
También puedes aprender más sobre la herramienta, ejecutando el comando en modo simple.
pdftk
Y veremos algo similar a lo siguiente.
Para más ayuda ejecutamos el comando con la opción –help.
pdftk --help
Como hemos visto, tenemos una práctica herramienta para gestionar ficheros pdf desde la linea de comandos que nos permite hacer prácticamente todo lo que necesitemos.
Si tienes algún comentario que hacer sobre este artículo, al pie del post tienes un formulario para hacerlo.
Si quieres contactar conmigo por cualquier otro asunto relacionado con el sitio, en la página de contacto, tienes un formulario más adecuado.
Y para suscribirte y recibir las novedades publicadas, tienes un enlace en el pie de la página o desde aquí mismo.
Hola Colega muchas gracias por el valioso conocimiento que aportan y más con PDFTK que lo utilizo y me funciona bien el Linux en la app de producción pero no he podido instalarlo en mi laptop de desarrollo de windows asi que me toca es prácticamente probar todo en el servidor de la nube y en producción ! por favor si alguien tiene un enlace que funcione para instalarlo en Windows le agradezco mucho!
Hola Oscar, no utilizo Windows pero en la página oficial, https://www.pdflabs.com/tools/pdftk-server/, hay una opción de descarga para tu S.O.
Buen aporte Javier. Me interesa saber si continuarás este post para explicar: Rotar documentos, Rellenar formularios y Generar plantillas. También me interesa si se puede descifrar documentos sin contraseña.
Gracias, José, por tu pregunta y visita. Yo, la verdad lo uso para unir PDFs y guardarlos. En este enlace (https://www.pdflabs.com/docs/pdftk-man-page/) tienes la información completa de la versión Server. Y al final encontrás este enlace (https://www.pdflabs.com/docs/pdftk-cli-examples/) con ejemplos prácticos, para todas las opciones de la herramienta. Si necesitas más información, mándame un correo con el formulario.
Gracias Javier. Interesante para alguien como yo, que tengo un montón de imágenes en PNG.
Gracias por tu visita y comentario. Me alegra que lo encuentres útil.