domingo, 14 de septiembre de 2014

PDFtk - La navaja suiza de los pdf

Imagen de http://www.victorinox.com

PDFtk es una de esas herramientas que permite manipular ficheros pdf de una manera sencilla y rápida.

La instalación en Ubuntu es muy fácil:

$ sudo apt-get install pdftk

Hay una versión para Windows disponible en la página de PDFLabs.


"Explotar" un archivo pdf

Encontré PDFtk buscando la solución a un problema muy concreto. Tenía un fichero grande en formato pdf con todos los boletines de notas juntos; quería separarlos para tener un archivo pdf por cada boletín y así enviarlo por correo electrónico a los alumnos que no podían venir a recogerlo personalmente.

En una sola línea podemos separar todas las páginas del fichero boletines.pdf en tantos ficheros como páginas tenga el documento original:

$ pdftk boletines.pdf burst


Agregar una imagen a un documento pdf

Imagina que tienes escrito un libro y lo pasas a formato pdf. Ahora quieres ponerle una portada que es una imagen en formato jpg.

Primero habría que convertir la imagen jpg en un pdf con el comando convert. Si no tenemos instalado el paquete ImageMagick, lo instalamos:

$ sudo apt-get install imagemagick

 Ahora convertimos la imagen en pdf:

$ convert portada.jpg portada.pdf

Así de fácil. Por último para pegar la portada a nuestro libro y grabarlo todo como libro.pdf:

$ pdftk portada.pdf milibro.pdf cat output libro.pdf


Añadir una marca de agua

Si queremos añadir una marca de agua a un documento deberemos tener la marca por separado en un pdf. Si tenemos la marca en una imagen, ya sabemos cómo convertirla en pdf con convert. Añadiremos la marca que se encuentra en marca.pdf a todas las páginas de libro.pdf y lo grabaremos todo como libroconmarca.pdf:

$ pdftk libro.pdf background marca.pdf output libroconmarca.pdf


Cifrar documento

Aunque, en principio, los pdf se crearon como documentos finales para imprimir o para visualizar por pantalla, hay muchos programas que permiten editarlos, yo suelo usar LibreOffice que además luego me permite exportar el resultado en otro pdf. Si no queremos que nuestro pdf sea editable, lo podemos cifrar con una clave de tal forma que se podrá ver pero no se podrá modificar.
 
Con la siguiente línea, creamos el archivo secreto.pdf a partir de doc.pdf y le establecemos la clave 12345 para poder editarlo:
 
$ pdftk doc.pdf cat output secreto.pdf encrypt_40bit owner_pw 12345

7 comentarios:

  1. Gracias por este aporte tan útil, no hace mucho me surgió el problema que mencionas, lo solucioné de manera artesanal, pero lo que nos aportas es estupendo.
    Un saludo

    ResponderEliminar
  2. Sí, a veces con una línea de comandos se puede hacer en seguida lo que con otra aplicación resulta más laborioso. Conviene tener siempre a mano estos "truquillos" :-)
    Un abrazo

    ResponderEliminar
  3. Herramienta muy útil! Gracias por el aporte! Funciona de la misma manera en Windows o MAC?

    ResponderEliminar
  4. Aprendiza Minimalista20 de septiembre de 2014, 2:10

    Gracias por la sugerencia porque los pdf siempre me han dado dolor de cabeza

    ResponderEliminar
  5. En Windows te puedes descargar el programa PDFTk con interfaz gráfico en esta página:
    https://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/
    En teoría, para Mac funciona también, aquí está el código fuente:
    https://github.com/ericmason/pdftk
    Habría que compilarlo o buscar alguna página donde ya tengan los binarios. Cuando he tenido que manipular archivos pdf con el Mac lo he hecho con el programa "Vista previa" aunque es más lento que usar PDFTk.
    Gracias a ti, Zayra, por comentar.

    ResponderEliminar
  6. Tiene muy buena pinta. Yo muchas veces he necesitado unir varios documentos en un pdf, o separarlos. Eso sí, mi ignorancia en Linux me obliga a limitarme al entorno Windows.

    ResponderEliminar
  7. Gracias a tí por responder y con tanto detalle. Tienes un gran blog. A la espera de nuevos post :)

    ResponderEliminar